Amadeus-QQ-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | 机器人 QQ 号 (Robot QQ number) | ||
| groups | No | 监听的群号(逗号分隔) (List of group IDs to listen to, comma-separated) | |
| friends | No | 监听的好友 QQ(逗号分隔) (List of friend QQ numbers to listen to, comma-separated) | |
| ws-port | No | NapCat WebSocket 端口 (NapCat WebSocket port) | 3001 |
| log-level | No | 日志级别 (Log level) | info |
| buffer-size | No | 每个目标的消息缓冲区大小 (Message buffer size per target) | 100 |
| napcat-host | No | NapCat HTTP 地址 (NapCat HTTP address) | 127.0.0.1 |
| napcat-port | No | NapCat HTTP 端口 (NapCat HTTP port) | 3000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| check_statusA | Check QQ login status and NapCat connection status. |
| get_group_listA | Get the list of QQ groups the bot has joined. |
| get_recent_contextA | Get recent message context for a monitored group or whitelisted friend. Returns all buffered messages (backfill + real-time) without compression. Use compress_context to manually compress when needed. Images are returned as URL strings in each message's image_urls field. Args: target: Group ID or friend QQ ID. target_type: "group" (default) or "private". limit: Number of recent messages to return (default 200). |
| batch_get_recent_contextA | Batch query recent message context for multiple targets. More efficient than calling get_recent_context multiple times: uses at most 2 OneBot API calls (group list + friend list) regardless of how many targets are queried. Args: targets: List of dicts, each with "target" (ID) and optional "target_type" ("group" or "private", default "group"). Example: [{"target": "123", "target_type": "group"}, {"target": "456", "target_type": "private"}] limit: Number of recent messages per target (default 50). |
| send_messageA | Send a message to a monitored group or whitelisted friend. Args: target: Group ID or friend QQ ID. content: Text message content. target_type: "group" (default) or "private". reply_to: Optional message ID to reply to. split_content: Whether to split long messages into multiple chunks with typing delay (default True). Set to False to send as a single message without splitting. num_chunks: If set, split the message into exactly this many chunks using natural punctuation boundaries. Overrides split_content. The message is first split by punctuation, then the fine chunks are merged into exactly num_chunks groups (e.g. num_chunks=3 sends exactly 3 messages with typing delays between them). |
| send_imageA | Send an image to a monitored group or whitelisted friend. Args: target: Group ID or friend QQ ID. image: Base64-encoded image data (without the base64:// prefix). target_type: "group" (default) or "private". reply_to: Optional message ID to reply to. |
| compress_contextA | Compress all buffered messages for a target into a summary. This replaces raw messages with a compressed summary, freeing up the buffer. Use this after reading context when you want to archive old messages. Args: target: Group ID or friend QQ ID. target_type: "group" (default) or "private". |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Each tool has a clearly distinct purpose with no ambiguity: batch_get_recent_context handles multiple targets efficiently, get_recent_context retrieves single-target context, compress_context summarizes and archives, send_message and send_image handle different message types, check_status monitors connectivity, and get_group_list lists groups. The descriptions clearly differentiate overlapping concepts like batch vs single queries and compression vs raw retrieval.
All tools follow a consistent verb_noun pattern with snake_case throughout: batch_get_recent_context, check_status, compress_context, get_group_list, get_recent_context, send_image, and send_message. The naming is predictable and readable, making it easy for agents to understand each tool's function from its name alone.
With 7 tools, this server is well-scoped for QQ/OneBot messaging operations. Each tool earns its place by covering essential functions: status checking, group listing, context retrieval (single and batch), context compression, and message sending (text and image). This count avoids both thin coverage and feature bloat for the domain.
The tool surface provides excellent coverage for core QQ messaging workflows: status monitoring, group discovery, context retrieval/management, and message sending. A minor gap exists in message management (e.g., deleting or editing sent messages), but agents can work effectively with the provided tools for typical bot operations without encountering dead ends.