SkillAgentSearch skills...

Xadeus-QQ-MCP

QQ MCP Server - connect AI agents to QQ via NapCatQQ. Auto-wake, messaging, group management, file sharing, cross-platform.

Install / Use

claude mcp add mouse114514 -- npx -y github:mouse114514/Xadeus-QQ-MCP

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

83/100

Supported Platforms

Claude Code
Claude Desktop

Tags

Our assessment of Xadeus-QQ-MCP

Xadeus-QQ-MCP scores 83/100 on our quality scale, 317th of 399 Communication skills we index.

Its MCP Server is 13 KB long, well organised into 42 sections with 18 code examples: a thorough specification that gives an agent plenty to work with.

It has 3 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
3/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated about 2 months ago, so Xadeus-QQ-MCP is actively maintained.
  • Our last check on 2026-08-12 found the source still online.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Xadeus-QQ-MCP compared with similar skills

All 4 of these similar skills score higher than Xadeus-QQ-MCP; compare them before choosing.

SkillScoreStarsUpdatedFormat
Xadeus-QQ-MCP (this skill)by mouse1145148332mo agoMCP Server
Agent-Reachby Panniantong100106.6k5d agoCLAUDE.md
headroomby headroomlabs-ai10078.3ktodayCLAUDE.md
CowAgentby zhayujie10047.7ktodayCLAUDE.md
Scraplingby D4Vinci10090.4k1d agoMCP Server

Frequently asked questions

How do I install Xadeus-QQ-MCP?
Run claude mcp add mouse114514 -- npx -y github:mouse114514/Xadeus-QQ-MCP. The install tabs above show the steps for each supported agent.
Which AI agents does Xadeus-QQ-MCP work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is Xadeus-QQ-MCP safe to use?
It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is Xadeus-QQ-MCP still maintained?
The repository was last updated about 2 months ago, so Xadeus-QQ-MCP is actively maintained.

Xadeus-QQ-MCP

Listed on awesome-remote-mcp-servers

Built by a 15-year-old developer, based on Amadeus-QQ-MCP.

Xadeus-QQ-MCP MCP server

QQ MCP (Model Context Protocol) Server — connects to QQ via NapCatQQ (OneBot v11), giving AI agents direct control over QQ (send/receive messages, group management, auto-wake on incoming messages, and more).

Python 3.12+ License: MIT


Features

| Feature | Description | |---------|-------------| | Auto-Wake | Incoming QQ messages matching rules trigger the AI agent window automatically. Cross-platform — Windows (keybd_event), macOS (osascript+pbcopy), Linux (xdotool+xclip). Supports any client — opencode, Cursor, Claude Desktop, Windsurf — configure via set_wake_config | | Dedup Lock | Prevents duplicate wake during processing. Unlock manually when done | | Persistent Rules | Wake rules saved to wake_rules.json, auto-loaded on restart | | wait_for_reply Built-in | send_message waits for reply by default | | Group Moderation | Mute, unmute, kick, set card, send notices | | File Sending | Send any file from URL to QQ groups/private chats | | Message Recall | Recall bot-sent messages | | Timer Scheduler | Cron or interval-based timed wake | | One-Click Setup | Auto-detect NapCat, configure ports, update agent configs |

Architecture

QQ ←→ NapCat (OneBot v11)
          ↓  WebSocket :3001 / HTTP :3000
    Xadeus-QQ-MCP (Python MCP Server)
          ↓  MCP Protocol
    AI Agent (opencode / Cursor / Claude / ...)

Quick Start

Prerequisites

  1. Install NapCat.Shell and QQ
  2. Configure NapCat OneBot v11 (WebSocket :3001, HTTP :3000)

One-Click Setup (Recommended)

.\quickstart.ps1 -qq 你的QQ号

Auto-detects NapCat, configures HTTP:3000/WS:3001, creates Python venv, writes QQ_OVERRIDE, generates NapCat start script, sets window wake patterns.

Options:

.\quickstart.ps1 -qq 123456 -windowTitle "OC,opencode,cmd"   # Custom window patterns
.\quickstart.ps1 -configFile config.json                      # Config file mode
.\quickstart.ps1 -restart                                     # Kill stale MCP + wait for recovery

Default -windowTitle: OC,opencode,Administrator,cmd,管理员 (comma-separated substrings, matched case-insensitively against window titles)

Also available via Python:

python setup.py          # Interactive mode
python setup.py --qq YOUR_QQ --fast   # Non-interactive

Manual Setup

git clone https://github.com/mouse114514/Xadeus-QQ-MCP
cd Xadeus-QQ-MCP

# Virtual env
uv venv
uv sync

# Start MCP Server
uv run python -m qq_agent_mcp --qq YOUR_QQ

Configure Your AI Agent

Important: The --qq argument passed by your AI agent config is ignored at runtime. Instead, set QQ_OVERRIDE environment variable before starting your agent:

$env:QQ_OVERRIDE = "YOUR_QQ"

Or edit the fallback value in src/qq_agent_mcp/__main__.py:QQ_OVERRIDE.

This works around AI agents that cache the MCP command at startup and ignore subsequent config file changes.

opencode — edit ~/.config/opencode/opencode.json:

{
  "mcp": {
    "qq-agent": {
      "type": "local",
      "command": [
        "C:\\path\\.venv\\Scripts\\python.exe",
        "-m", "qq_agent_mcp",
        "--qq", "YOUR_QQ"
      ],
      "enabled": true,
      "timeout": 120000
    }
  }
}

Cursor / Claude Desktop / Windsurf — edit the respective MCP config file:

{
  "mcpServers": {
    "qq-agent": {
      "command": "C:\\path\\.venv\\Scripts\\python.exe",
      "args": ["-m", "qq_agent_mcp", "--qq", "YOUR_QQ"],
      "enabled": true
    }
  }
}

Or just run python setup.py — it detects all installed agents automatically.

Wake Target Configuration

Use set_wake_config to bind to any AI agent window:

{
  "window_title_patterns": ["opencode", "cursor", "claude"],
  "focus_shortcut": "ctrl+l"
}

Saved to src/qq_agent_mcp/wake_config.json.

MCP Tools

Messaging

| Tool | Description | |------|-------------| | send_message | Send text with segmentation and optional reply wait | | send_image | Send image (base64) | | send_voice | Send voice (base64) | | wait_for_reply | Wait for new messages |

Context & History

| Tool | Description | |------|-------------| | get_recent_context | Recent messages for a group/friend | | batch_get_recent_context | Batch query multiple targets | | screenshot_chat | Render chat screenshot (iPhone dark mode style) | | compress_context | Archive old messages to summary |

Wake System

| Tool | Description | |------|-------------| | add_wake_rule | Add auto-wake rule (group/private + keywords) | | remove_wake_rule | Remove wake rule by index | | list_wake_rules | List all wake rules | | set_wake_pending | Lock/unlock wake to prevent duplicates | | set_wake_enabled | Enable/disable all or specific rules | | set_wake_config | Configure target window and focus shortcut | | get_wake_config | View current wake config | | diagnose_wake | Debug wake monitor state |

Group Management

| Tool | Description | |------|-------------| | get_group_list | List joined groups | | get_group_member_list | List group members | | get_group_member_info | Get member details | | mute_member | Mute a member | | unmute_member | Unmute a member | | kick_member | Kick a member | | set_member_card | Set group nickname | | send_group_notice | Send group notice |

System

| Tool | Description | |------|-------------| | check_status | Check QQ and NapCat connection | | get_friend_list | List friends | | recall_message | Recall bot message | | send_file | Send file from URL | | add_timer | Add scheduled wake (cron/interval) | | remove_timer | Remove timer | | list_timers | List all timers |

Known Issues & Workarounds

| Issue | Cause | Workaround | |-------|-------|------------| | MCP won't restart after crash/kill | opencode has restart backoff; after ~3 kills it stops retrying | Restart your AI agent, or .\quickstart.ps1 -restart | | Two MCP processes always appear | FastMCP stdio transport spawns parent+child chain | Named mutex prevents duplicate typing (built-in fix) | | Config changes ignored after editing opencode.json | opencode caches MCP command at startup | Restart opencode, or use QQ_OVERRIDE env var | | Wake message doubled | Both processes try to type simultaneously | Fixed via Windows named mutex (Local\XadeusQQ_MCP_WakeTyping) | | Messages from same QQ ignored | is_self filter in context.py and wake.py | Removed in current build | | Wake won't fire even with matching rule | Lock (_pending) held from previous wake | Auto-unlock after 5 min, or call set_wake_pending(false) |

Restart Helper

.\quickstart.ps1 -restart

Kills stale MCP processes and waits for auto-restart. If the agent doesn't recover, it prompts you to restart manually.

Tech Stack

  • Python 3.12+ (httpx, aiohttp, FastMCP)
  • NapCat.Shell (QQ + OneBot v11)
  • Win32 API (ctypes) — window activation, keyboard simulation

License

Based on Amadeus-QQ-MCP (MIT License).


中文版

Xadeus-QQ-MCP

Listed on awesome-remote-mcp-servers

由一位 15 岁高中生基于 Amadeus-QQ-MCP 深度优化改造。

QQ MCP (Model Context Protocol) Server — 通过 NapCatQQ (OneBot v11) 协议连接 QQ,为 AI Agent 提供直接操控 QQ 的能力(收发消息、管理群聊、自动唤醒等)。


功能亮点

| 功能 | 说明 | |------|------| | Auto-Wake 自动唤醒 | QQ 消息匹配规则时自动激活 AI Agent 窗口。跨平台 — Windows (keybd_event)、macOS (osascript+pbcopy)、Linux (xdotool+xclip)。支持任意客户端 — opencode、Cursor、Claude Desktop、Windsurf,通过 set_wake_config 配置窗口标题即可 | | Pending 防重复锁 | 唤醒后自动上锁,防止重复唤醒。Agent 干完活后手动解锁 | | 规则持久化 | 唤醒规则自动保存到 wake_rules.json,重启后自动加载 | | wait_for_reply 一体化 | send_message 默认自动等待回复 | | 群管理 | 禁言、解禁、踢人、设名片、发公告 | | 文件发送 | 从 URL 下载文件发送到群/私聊 | | 消息撤回 | 撤回机器人发送的消息 | | 定时任务 | 支持 cron 和间隔两种模式的定时唤醒 | | 一键配置 | 自动检测 NapCat、端口、多 Agent 配置 |

架构

QQ ←→ NapCat (OneBot v11)
          ↓  WebSocket :3001 / HTTP :3000
    Xadeus-QQ-MCP (Python MCP Server)
          ↓  MCP 协议
    AI Agent (opencode / Cursor / Claude / ...)

快速开始

前置条件

  1. 安装 NapCat.Shell 和 QQ
  2. 配置 NapCat OneBot v11 (WebSocket :3001, HTTP :3000)

一键配置(推荐)

.\quickstart.ps1 -qq 你的QQ号

自动检测 NapCat、配置 HTTP:3000/WS:3001、创建 Python venv、 写入 QQ_OVERRIDE、生成 NapCat 启动脚本、设置窗口唤醒匹配模式。

选项:

.\quickstart.ps1 -qq 123456 -windowTitle "OC,opencode,cmd"   # 自定义窗口匹配模式
.\quickstart.ps1 -configFile config.json                      # 配置文件模式
.\quickstart.ps1 -restart                                     # 杀死残留 MCP + 等待恢复

默认 -windowTitle:OC,opencode,Administrator,cmd,管理员 (逗号分隔,不区分大小写子串匹配窗口标题)

Python 版(功能相同):

python setup.py                           # 交互模式
python setup.py --qq 你的QQ号 --fast       # 静默模式

手动安装

git clone https://github.com/mouse114514/Xadeus-QQ-MCP
cd Xadeus-QQ-MCP

# 虚拟环境
uv venv
uv sync

# 启动 MCP Server
uv run python -m qq_agent_mcp --qq 你的QQ号

配置 AI Agent

重要:AI Agent 配置中的 --qq 参数在运行时会被忽略。 正确方式:启动 Agent 前设置环境变量:

$env:QQ_OVERRIDE = "你的QQ号"

或直接修改 src/qq_agent_mcp/__main__.py:QQ_OVERRIDE 的默认值。

这样做是为了绕过 AI Agent 缓存 MCP 命令的问题—— Agent 只在启动时读取一次配置,改配置文件不生效。

opencode — 编辑 ~/.config/opencode/opencode.json:

{
  "mcp": {
    "qq-agent": {
      "type": "local",
      "command": [
        "C:\\path\\.venv\\Scripts\\python.exe",
        "-m", "qq_agent_mcp",
        "--qq", "你的QQ号"
      ],
      "enabled": true,
      "timeout": 120000
    }
  }
}

Cursor / Claude Desktop / Windsurf — 编辑对应 MCP 配置文件:

{
  "mcpServers": {
    "qq-agent": {
      "command": "C:\\path\\.venv\\Scripts\\python.exe",
      "args": ["-m", "qq_agent_mcp", "--qq", "你的QQ号"],
      "enabled": true
    }
  }
}

运行 python setup.py 可自动检测并配置所有已安装的 Agent。

唤醒目标配置

通过 set_wake_config 配置窗口标题,即可绑定到任意 AI Agent:

{
  "window_title_patterns": ["opencode", "cursor", "claude"],
  "focus_shortcut": "ctrl+l"
}

配置文件保存在 src/qq_agent_mcp/wake_config.json。

MCP 工具一览

消息

| 工具 | 说明 | |------|------| | send_message | 发文本消息,支持分段、等待回复 | | send_image | 发图片 | | send_voice | 发语音 | | wait_for_reply | 等待新消息 |

上下文

| 工具 | 说明 | |------|------| | get_recent_context | 查看最近消息 | | batch_get_recent_context | 批量查看多目标 | | screenshot_chat | 生成聊天截图(iPhone 深色模式) | | compress_context | 压缩缓存 |

唤醒系统

| 工具 | 说明 | |------|------| | add_wake_rule | 添加唤醒规则(群/私聊 + 关键词) | | remove_wake_rule | 删除唤醒规则 | | list_wake_rules | 查看所有规则 | | set_wake_pending | 锁定/解锁唤醒 | | set_wake_enabled | 启用/禁用规则 | | set_wake_config | 配置窗口标题和快捷键 | | get_wake_config | 查看唤醒配置 | | diagnose_wake | 诊断唤醒状态 |

群管理

| 工具 | 说明 | |------|------| | get_group_list | 群列表 | | get_group_member_list | 群成员列表 | | get_group_member_info | 成员详情 | | mute_member | 禁言 | | unmute_member | 解禁 | | kick_member | 踢出 | | set_member_card | 设群名片 | | send_group_notice | 发群公告 |

系统

| 工具 | 说明 | |------|------| | check_status | 检查连接状态 | | get_friend_list | 好友列表 | | recall_message | 撤回消息 | | send_file | 发送文件 | | add_timer

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryCommunication
Updated2mo ago
Forks0

Languages

Python

Trust signals

92/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 low