Skip to main content
Glama
aahl

MCP Server for notify to weixin / telegram / bark / lark

by aahl

💬 Notify MCP Server

简体中文 | English

提供消息推送的 MCP (Model Context Protocol) 服务器,支持企业微信、钉钉、Telegram、Bark、Lark、飞书、Home Assistant

安装

方式1: uvx

{
  "mcpServers": {
    "mcp-notify": {
      "command": "uvx",
      "args": ["mcp-notify"],
      "env": {
        "WEWORK_BOT_KEY": "your-wework-bot-key"
      }
    }
  }
}

方式2: Smithery

需要通过OAuth授权或Smithery key

{
  "mcpServers": {
    "mcp-aktools": {
      "url": "https://server.smithery.ai/@aahl/mcp-notify/mcp" # 流式传输HTTP
    }
  }
}

方式3: Docker

mkdir /opt/mcp-notify
cd /opt/mcp-notify
wget https://raw.githubusercontent.com/aahl/mcp-notify/refs/heads/main/docker-compose.yml
docker-compose up -d
{
  "mcpServers": {
    "mcp-notify": {
      "url": "http://0.0.0.0:8809/mcp" # 流式传输HTTP
    }
  }
}

快速开始

  • 在线体验: fastmcp.cloud

  • 在线体验:

  • 添加到 Cursor Install MCP Server

  • 添加到 VS Code Install MCP Server

  • 添加到 Cherry Studio Install MCP Server

  • 添加到 Claude Code, 执行命令: claude mcp add notify -- uvx mcp-notify

  • 添加到 OpenAI CodeX, 执行命令: codex mcp add notify -- uvx mcp-notify

⚙️ 环境变量

企业微信群机器人

  • WEWORK_BOT_KEY: 企业微信群机器人默认key,也可以在提示词指定

企业微信应用号

  • WEWORK_APP_CORPID: 企业微信所属的企业ID

  • WEWORK_APP_SECRET: 企业微信应用的凭证密钥

  • WEWORK_APP_AGENTID: 企业微信应用的ID,默认: 1000002

  • WEWORK_APP_TOUSER: 企业微信默认接收人ID,也可以在提示词指定,默认: @all

  • WEWORK_BASE_URL: 企业微信API反代理地址,用于可信IP,默认: https://qyapi.weixin.qq.com

钉钉群机器人

  • DINGTALK_BOT_KEY: 钉钉群机器人access_token

  • DINGTALK_BASE_URL: 钉钉API地址,默认: https://oapi.dingtalk.com

飞书/Lark群机器人

  • FEISHU_BOT_KEY: 飞书群机器人key,也可以在提示词指定

  • FEISHU_BASE_URL: 飞书API地址,默认: https://open.feishu.cn

  • LARK_BOT_KEY: Lark群机器人key,也可以在提示词指定

  • LARK_BASE_URL: Lark API地址,默认: https://open.larksuite.com

Telegram

  • TELEGRAM_DEFAULT_CHAT: Telegram 默认会话ID,也可以在提示词指定

  • TELEGRAM_BOT_TOKEN: Telegram 机器人令牌

  • TELEGRAM_BASE_URL: Telegram API反代理地址,默认: https://api.telegram.org

Home Assistant

  • HASS_BASE_URL: Home Assistant 地址,默认: http://homeassistant.local:8123

  • HASS_ACCESS_TOKEN: Home Assistant 长效令牌

  • HASS_MOBILE_KEY: Home Assistant 移动设备key (如: mobile_app_your_iphone),也可在提示词指定

其他

  • BARK_DEVICE_KEY: 默认Bark设备key,也可以在提示词指定

  • BARK_BASE_URL: Bark API地址,默认: https://api.day.app

  • NTFY_DEFAULT_TOPIC: 默认Ntfy订阅主题,也可以在提示词指定

  • NTFY_BASE_URL: Ntfy API地址,默认: https://ntfy.sh

  • PUSH_PLUS_TOKEN: 默认PushPlus令牌,也可以在提示词指定

  • PUSH_PLUS_BASE_URL: PushPlus API地址,默认: http://www.pushplus.plus


Related MCP server: ntfy-mcp

🛠️ 可用工具

  • wework_send_text - 发送文本或Markdown消息

  • wework_send_image - 发送图片消息

  • wework_send_news - 发送图文链接消息

  • wework_app_send_text - 发送文本或Markdown消息

  • wework_app_send_image - 发送图片消息

  • wework_app_send_video - 发送视频消息

  • wework_app_send_voice - 发送语音消息

  • wework_app_send_file - 发送文件消息

  • wework_app_send_news - 发送图文链接消息

  • tg_send_message - 发送文本或Markdown消息

  • tg_send_photo - 发送图片消息

  • tg_send_video - 发送视频消息

  • tg_send_audio - 发送音频消息

  • tg_send_file - 发送文件消息

  • ding_send_text - 通过钉钉群机器人发送文本或Markdown消息

  • lark_send_text - 通过飞书/Lark群机器人发送文本或Markdown消息

  • bark_send_notify - 通过Bark发送通知

  • ntfy_send_notify - 通过Ntfy发送通知

  • pushplus_send_msg - 通过PushPlus发送消息

  • ha_send_mobile - 通过Home Assistant发送通知

  • text_to_sound - 将一段文本转成mp3音频链接


🔗 相关连接


Available Tools

21 tools
bark_send_notifyBark推送通知C

通过Bark推送通知

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes推送内容
titleNo推送标题
subtitleNo推送副标题
device_keyNo设备key,默认从环境变量获取
urlNo点击推送时,跳转的URL ,支持URL Scheme 和 Universal Link
iconNo自定义图标URL
levelNo推送中断级别。critical: 重要警告, 在静音模式下也会响铃active:默认值,系统会立即亮屏显示通知timeSensitive:时效性通知,可在专注状态下显示通知。passive:仅将通知添加到通知列表,不会亮屏提醒。active
volumeNo重要警告的通知音量(0-10),默认为5

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully convey behavior. It only states the basic function without disclosing traits like network dependency, error handling, or asynchronicity. For a sending tool, this lacks necessary behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no wasted words. However, it could be slightly expanded to include more context without harming conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 8 parameters and no output schema. While the schema is descriptive, the description lacks information about return behavior or side effects, which is needed for a sending operation. It is minimally complete but could be better.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear parameter descriptions, so the tool description adds no extra value beyond the schema. Baseline 3 is appropriate as the schema does the heavy lifting, but the description itself is redundant.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states '通过Bark推送通知' (Push notification via Bark), which identifies the specific service and action. However, among sibling tools like ntfy_send_notify or pushplus_send_msg, it doesn't differentiate Bark from other services, so it lacks sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like ntfy_send_notify or tg_send_message. There is no mention of prerequisites, context, or exclusions, making it hard for an agent to choose correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ding_send_text钉钉群机器人-发送文本消息B

钉钉群机器人发送文本或Markdown消息

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes消息内容
titleNo消息标题
msgtypeNo内容类型,仅支持: text/markdownmarkdown
bot_keyNo钉钉群机器人access_token,默认从环境变量获取

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must fully disclose behavioral traits. It only states the tool sends messages; it does not mention authentication (bot_key), error handling, rate limits, idempotency, or whether the operation is destructive. This is insufficient for an agent to understand implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, concise and front-loaded. However, given the low behavioral transparency and missing guidance, a slightly longer description with more context would be justified without sacrificing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, no annotations, and 4 parameters, the description is too sparse. It fails to explain important aspects like how bot_key defaults from environment variable, the role of title in Markdown messages, or what the response looks like. The tool's complexity warrants a richer description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the schema fields; each parameter is already described in the schema. The tool's description does not clarify relationships between parameters (e.g., title and msgtype) or provide context for use.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool sends text or Markdown messages via a DingTalk group robot. It uses a specific verb ('发送') and resource ('钉钉群机器人'), which distinguishes it from sibling tools targeting other platforms (e.g., Bark, Lark, Telegram).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. With many sibling tools for different messaging platforms, explicit instructions on when to choose DingTalk robot over others are missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ha_send_mobileSend to HomeAssistant Mobile APPC

Send a notification to Home Assistant Mobile APP

ParametersJSON Schema
NameRequiredDescriptionDefault
messageYesNotification content
titleNoNotification title
subtitleNoNotification subtitle
dataNoExtended data, json string. ```json { "image": "http://a.com/photo.jpg", "video": "http://a.com/video.mp4", "audio": "http://a.com/audio.mp3", # ios only "actions": [ { "action": "YOUR_ACTION_KEY", # Required. The identifier passed back in events. "title": "Do Something", "icon": "sfsymbols:bell.slash" # ios only }, { "action": "URL", # Must be set to URI if you plan to use a URI "title": "Open Url", # The action button title "url": "https://github.com" # URL to open when action is selected }, { "action": "REPLY", # When set to REPLY, you will be prompted for text to send with the event. "title": "Reply me", "behavior": "textInput" # Optional. Set to `textInput` to prompt for text to return with the event. This also occurs when setting the action to `REPLY`. } ] } ``` All fields in the extended data are optional. {}
urlNoOpening a URL when tapping on a notification
device_keyNoDevice key, Default to get from environment variables

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears full responsibility for behavioral disclosure. It fails to mention any traits such as asynchronicity, error handling, or network requirements. The only behavior implied is sending, but no side effects or success indicators.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence), but it sacrifices informativeness. It arguably could be expanded to include key capabilities without losing conciseness. It is not verbose, but it is under-specific.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 parameters, including a complex JSON field) and the lack of an output schema, the description is too sparse. It does not explain what happens after sending (e.g., success response, errors) or provide context like whether the device key is required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, including detailed examples for the 'data' field. The tool description adds no additional parameter meaning, so the baseline of 3 is appropriate. It does not compensate for any missing schema details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (send a notification) and the target (Home Assistant Mobile APP), which differentiates it from sibling notification tools targeting other platforms. However, it does not elaborate on the capabilities like rich content (images, actions) hinted in the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidelines are provided. The description does not specify when to use this tool over alternatives (e.g., bark, tg_send_message), nor does it mention any prerequisites or limitations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lark_send_text飞书/Lark机器人-发送文本消息C

飞书/Lark群机器人发送文本或Markdown消息

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes消息内容
msgtypeNo内容类型,仅支持: text/markdownmarkdown
bot_keyNo飞书/Lark机器人key,uuid格式,默认从环境变量获取
is_larkNo根据用户描述识别 0:飞书 1:Lark

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must convey behavioral details but only states the basic function. It does not disclose whether the message overwrites previous ones, error handling, rate limits, or authentication requirements. The schema hints at environment variable usage for bot_key, but this is not clarified in the description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, using a single sentence to convey the core purpose. No redundant information is present. However, it could benefit from a slightly more structured format to highlight key aspects like platform and message types.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters and no output schema or annotations, the description is incomplete. It lacks information on return values, error messages, prerequisites (e.g., setting up a bot), and behavior when parameters are invalid. A more complete description would help the AI agent use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no additional meaning to the parameters beyond what the schema already provides (e.g., text, msgtype, bot_key, is_lark). It does not explain valid formats or constraints beyond the schema defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends text or Markdown messages to Feishu/Lark group robots. It identifies the specific platform (Feishu/Lark) but does not differentiate it from sibling tools like wework_send_text or ding_send_text, which serve similar purposes for other platforms.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor does it explain how to choose between text and Markdown message types. There is no mention of prerequisites, such as needing a bot webhook URL.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ntfy_send_notifyNtfy Push NotificationC

Push a notification via Ntfy

ParametersJSON Schema
NameRequiredDescriptionDefault
messageYesNotification message body; set to `triggered` if empty or not passed
titleNoNotification title
topicNoTarget topic name or URL
clickNoURL opened when notification is clicked
attachNoURL of an attachment
iconNoURL of notification icon
markdownNoSet to `true` if the message is Markdown-formatted
filenameNoFile name of the attachment
priorityNoMessage priority with 1=min, 3=default and 5=max
delayNoTimestamp or duration for delayed delivery. Example: 30min, 9am
actionsNoList of action buttons. The following actions are supported: - view: Opens a website or app when the action button is tapped - broadcast: Sends an Android broadcast intent when the action button is tapped (only supported on Android) - http: Sends HTTP POST/GET/PUT request when the action button is tapped ```json [ { "action": "view", "label": "Open portal", "url": "https://home.nest.com/", "clear": true }, { "action": "http", "label": "Turn down", "url": "https://api.nest.com/", "body": "{"temperature": 65}" }, { "action": "broadcast", "label": "Take picture", "extras": { "cmd": "pic", "camera": "front" } } ] ```

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No behavioral traits beyond the action are disclosed. Since no annotations are provided, the description should cover aspects like authentication, delivery guarantees, or side effects, but it does not. The agent has no insight into potential behaviors.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise but at the expense of completeness. It is a single sentence that lacks structure and does not front-load critical information such as return values or usage context, making it less helpful than it could be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 11 parameters, no output schema, and no annotations, the description is severely incomplete. It omits return format, failure modes, and any context for using the various parameters, leaving the agent without sufficient guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all parameters are already described in the input schema. The description adds no additional meaning, meeting the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Push a notification via Ntfy' clearly identifies the action and service, making the tool's purpose understandable despite its brevity. While it does not differentiate from siblings, the specific reference to Ntfy provides enough context for basic purpose clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidelines are provided. The description fails to specify when to use this tool over sibling notification tools (e.g., bark_send_notify, tg_send_message), nor does it mention prerequisites or context for use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pushplus_send_msgPushPlus推送消息C

通过PushPlus(推送加)推送消息

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes消息内容
titleNo消息标题
tokenNo用户token,默认从环境变量获取
templateNo消息内容格式: `html`(默认)/`txt`/`markdown`
channelNo发送渠道: `wechat`(默认)/`webhook`/`mail`

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, and the description fails to disclose any behavioral traits such as rate limits, error handling, permissions, or side effects. The description only restates the action without transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at one sentence, which is appropriate for a simple tool. However, it sacrifices completeness for brevity, but conciseness alone is well-achieved.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations and output schema, and the presence of 5 parameters and many siblings, the description is insufficient. It lacks context on return values, errors, and integration nuances, leaving the agent underinformed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage with descriptions for each parameter. The description adds no additional semantic value beyond what the schema states, meeting the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (push/send) and the resource (PushPlus platform). However, it does not differentiate from other notification sibling tools like bark_send_notify or lark_send_text, but the basic purpose is evident.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, nor any exclusions or prerequisites. With many sibling notification tools, the lack of usage context reduces effectiveness.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

text_to_sound文本转音频B

将一段文本转成mp3音频链接

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes文本内容
langNo目标语言,支持: en/zh/cte(粤语)/ara/de/fra/kor/pt/ru/spa/th, 建议根据文本内容选择en
speedNo语速,默认7

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. Only states conversion without disclosing side effects, auth needs, rate limits, or behavior for edge cases (e.g., long text, unsupported lang). Missing behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no wasted words. Front-loaded with action and result. Appropriate length for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fails to explain the return value (mp3 link format). No mention of input constraints (max text length) or processing details. Sibling tools are different, so uniqueness is clear but completeness is lacking.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for each parameter. The tool description does not add new meaning beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'convert text to mp3 audio link', specifying verb (convert) and resource (mp3 audio link). It distinguishes from siblings which are all send/notification tools, not conversion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. Does not mention prerequisites, when-not-to-use, or related tools (e.g., if you need to send the audio, you might combine with a send tool). Only the lang parameter gives a mild suggestion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tg_send_audioTelegram send audioB

Send audio via telegram bot

ParametersJSON Schema
NameRequiredDescriptionDefault
audioYesAudio URL or base64 data URI (e.g., data:audio/wav;base64,...
chat_idNoTelegram chat id, Default to get from environment variables
captionNoAudio caption, 0-1024 characters after entities parsing
parse_modeNoMode for parsing entities in the caption. [text/MarkdownV2]
reply_to_message_idNoIdentifier of the message that will be replied to

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the bare description fails to disclose behavioral traits like file handling, size limits, required permissions, or whether the audio is sent as a direct upload or URL. The agent cannot infer important behaviors beyond the obvious.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no redundant words. It is maximally concise and front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 5 parameters and many sibling tools, the description gives no insight into return values, error handling, or the overall workflow. An agent cannot form a complete mental model of the tool's behavior from this minimal information, especially with no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since schema description coverage is 100%, the description does not need to reiterate parameter details. However, it adds no extra context beyond the schema, such as how parameters interact or typical usage patterns, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Send audio via telegram bot' clearly states the action (send) and the resource (audio via telegram bot). It is specific enough to distinguish from sibling tools like tg_send_photo, tg_send_video, etc., which serve different media types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., tg_send_file, tg_send_photo) or prerequisites such as authentication or bot setup. The description lacks any context for the agent to decide among the many sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tg_send_fileTelegram send fileA

Send general files via telegram bot

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesFile URL
chat_idNoTelegram chat id, Default to get from environment variables
captionNoFile caption, 0-1024 characters after entities parsing
parse_modeNoMode for parsing entities in the caption. [text/MarkdownV2]
reply_to_message_idNoIdentifier of the message that will be replied to

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It only states 'send' without disclosing file size limits, supported formats, required authentication, or whether the operation is destructive. This is insufficient for an agent to understand behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the action, no wasted words. Extremely concise and to the point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description is adequate for differentiating from siblings but lacks details on return values, error handling, or URL formatting requirements. It covers the basics but has clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% coverage with individual parameter descriptions. The description adds no extra meaning beyond the schema, providing a baseline 3. It does not explain what 'general files' entails or how parameters interact.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Send general files via telegram bot' clearly states the action (send), resource (general files), and channel (telegram bot). It effectively distinguishes from siblings like tg_send_photo (specific to photos) and tg_send_message (text messages).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. While siblings suggest it's for files not covered by specialized tools (audio, photo, video, message), the description does not state this directly or provide when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tg_send_messageTelegram send textB

Send text or markdown message via telegram bot

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesText of the message to be sent, 1-4096 characters after entities parsing
chat_idNoTelegram chat id, Default to get from environment variables
parse_modeNoMode for parsing entities in the message text. [text/MarkdownV2]
reply_to_message_idNoIdentifier of the message that will be replied to

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description only states the basic action without disclosing behavioral traits like rate limits, authentication, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no redundant information, effectively front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite high schema coverage, the description omits essential context like how to use parse_mode, chat_id defaults, and reply_to, leaving gaps for a tool with multiple siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema, which already defines all parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it sends a text or markdown message via a Telegram bot, distinguishing it from sibling tools for audio, files, photos, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or alternative guidance is provided. The purpose is implied by the tool name and siblings, but the description itself lacks usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tg_send_photoTelegram send photoB

Send photo via telegram bot

ParametersJSON Schema
NameRequiredDescriptionDefault
photoYesPhoto URL or base64 data URI (e.g., data:image/png;base64,...
chat_idNoTelegram chat id, Default to get from environment variables
captionNoPhoto caption, 0-1024 characters after entities parsing
parse_modeNoMode for parsing entities in the caption. [text/MarkdownV2]
reply_to_message_idNoIdentifier of the message that will be replied to

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; the description does not disclose behavioral traits like size limits, error handling, or permissions required. It only states the basic action, leaving the agent underinformed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise at one sentence, but it lacks detail. It is not verbose, but the brevity sacrifices informational value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description is incomplete. It does not explain return values, error states, or usage patterns, making it insufficient for a tool with 5 parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 5 parameters. The description adds no additional parameter context, but the schema already provides adequate meaning, achieving the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Send photo via telegram bot', specifying the action (send) and resource (photo). It distinguishes from sibling tools like tg_send_message, tg_send_audio, etc., which handle other media types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like tg_send_file or tg_send_video. Does not mention prerequisites, such as needing a bot token or chat_id, which is only partially covered in the schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tg_send_videoTelegram send videoC

Send video via telegram bot

ParametersJSON Schema
NameRequiredDescriptionDefault
videoYesVideo URL or base64 data URI (e.g., data:video/mp4;base64,...
coverNoCover for the video in the message. Optional
chat_idNoTelegram chat id, Default to get from environment variables
captionNoVideo caption, 0-1024 characters after entities parsing
parse_modeNoMode for parsing entities in the caption. [text/MarkdownV2]
reply_to_message_idNoIdentifier of the message that will be replied to

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description must cover behavioral traits. It only says 'send video' with no details on limitations (e.g., video size, format, permissions) or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short, direct sentence that conveys the core action. No wasted words, though it could be more informative without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters, no output schema, and no annotations, the description is insufficient. It lacks details on return values, error handling, and usage context for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no extra meaning beyond what the parameter descriptions already provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Send video via telegram bot' – clear verb and resource. However, it does not differentiate from sibling tools like tg_send_photo or tg_send_audio, which also send media types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives, no prerequisites or context provided. Agent has no help deciding between tg_send_video and other media-sending tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_app_send_file企业微信应用号-发送文件消息C

通过企业微信应用号发送发送文件消息

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes文件URL
touserNo接收消息的成员ID,多个用`|`分隔,为`@all`时向该企业应用全部成员发送,默认从环境变量获取

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, and the description does not disclose any behavioral traits such as error handling, permission requirements, rate limits, or side effects beyond sending a file.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short but contains a typo. It is concise but lacks substance, and could be structured with more detail in few words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only 2 parameters, no output schema, and no annotations, the description is incomplete. It does not explain what happens after sending, return values, or error scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond what the input schema provides, such as file type restrictions or URL format requirements.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (send) and resource (file message via WeCom application), but contains a typo ('发送发送'). It effectively distinguishes from sibling tools by specifying 'app_send_file'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., other WeCom send tools). There is no mention of prerequisites, exclusions, or appropriate contexts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_app_send_image企业微信应用号-发送图片消息C

通过企业微信应用号发送发送图片消息

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes图片URL
touserNo接收消息的成员ID,多个用`|`分隔,为`@all`时向该企业应用全部成员发送,默认从环境变量获取

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits but only states the action. It omits details like authentication needs, delivery guarantees, error handling, or what happens when the user ID is invalid. This is insufficient for an agent to reason about side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence, which is concise, but it contains a typographical error (repeated '发送'). It is front-loaded but the error reduces clarity and professionalism. For a single-sentence description, it should be flawless.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (2 parameters, no output schema, no annotations), the description is too sparse. It does not explain the return value, error cases, or distinguish from siblings effectively. More context is needed for an agent to use it reliably.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers 100% of parameters with descriptions, so the baseline is 3. The tool description adds no extra parameter context beyond the schema, but it does not need to since the schema is clear. No information is contradicted or omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: sending an image message via the WeChat Work app number. It uses a verb+resource pattern and distinguishes from sibling tools like wework_send_image by specifying '应用号' (app number). The duplication '发送发送' is a minor typo but does not obscure purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as wework_app_send_text or wework_send_image. The description lacks context about prerequisites, target audience, or scenarios, leaving the agent to guess.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_app_send_news企业微信应用号-发送图文卡片消息C

通过企业微信应用号发送图文卡片消息

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes标题,不超过128个字符
urlYes跳转链接,最长2048字节,必须包含协议头(http/https)
picurlNo图片URL
descriptionNo描述,不超过512个字符
touserNo接收消息的成员ID,多个用`|`分隔,为`@all`时向该企业应用全部成员发送,默认从环境变量获取

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only states 'send'. It does not disclose behavioral traits such as authentication requirements, rate limits, side effects, or failure modes. This is insufficient for an agent to assess risks.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no wasted words. However, it is extremely brief and could benefit from front-loading key details. It is not verbose, but may be underspecified for a tool with 5 parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a minimal description, the tool lacks contextual completeness. Important aspects like expected behavior, constraints, or prerequisites are missing, leaving the agent without enough information to use it reliably.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for all parameters. The tool description adds no additional meaning beyond that. Baseline 3 is appropriate as the schema already provides adequate semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends a graphic card message via WeWork app account. It is specific about the action and resource, but does not explicitly differentiate from sibling tools like wework_app_send_text or wework_app_send_image, though the name implies the content type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description lacks context about suitable scenarios, prerequisites, or exclusion criteria, making it hard for an agent to decide when it is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_app_send_text企业微信应用号-发送文本消息C

通过企业微信应用号发送文本或Markdown消息

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes消息内容,最长不超过2048个字节
msgtypeNo内容类型,仅支持: text/markdowntext
touserNo接收消息的成员ID,多个用`|`分隔,为`@all`时向该企业应用全部成员发送,默认从环境变量获取

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It does not disclose side effects, authentication needs, rate limits, or what happens if the text exceeds the byte limit (though schema mentions max). Missing crucial behavioral details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with no wasted words. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema provided, and the description does not explain return values or success/failure behavior. Given the tool's simplification (no nested objects, low param count), it is minimally complete but lacks context about expected outcomes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no additional meaning beyond what the schema already provides for each parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends text or Markdown messages via WeChat Work app, which is a specific verb and resource. It distinguishes from other sibling tools that send files or images, but does not explicitly differentiate from the similar 'wework_send_text' sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like wework_send_text or other messaging tools. The description only states what it does, not the context or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_app_send_video企业微信应用号-发送视频消息C

通过企业微信应用号发送发送视频消息

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes视频URL
touserNo接收消息的成员ID,多个用`|`分隔,为`@all`时向该企业应用全部成员发送,默认从环境变量获取

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose any behavioral traits such as rate limits, file size restrictions, authentication requirements, or error behavior. The tool is a mutation but lacks transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short but contains a typo (duplicate '发送'). It could be more concise and error-free. The structure is minimal but acceptable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description is incomplete. It does not explain return values, error handling, or any constraints like video format or size. For a tool with 2 parameters, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description does not add meaning beyond the schema; it merely restates the purpose. The parameter descriptions in the schema are sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends a video message via WeChat Work app number. It is distinct from sibling tools like send_text or send_image, though the term 'app number' is ambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. There is no mention of prerequisites, when to choose this over other WeChat Work send tools, or context for the 'touser' parameter.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_app_send_voice企业微信应用号-发送语音消息C

通过企业微信应用号发送发送语音消息

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes语音URL
touserNo接收消息的成员ID,多个用`|`分隔,为`@all`时向该企业应用全部成员发送,默认从环境变量获取

TDQS

C2.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description only says 'send voice messages', lacking details on mutability, authentication, rate limits, or side effects. Agent cannot assess impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with redundant '发送发送'. While short, it's not entirely concise due to duplication and lacks structured sections.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no description of return values. For a simple tool, it might be acceptable but given the sibling variety, more context on result or errors would help.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both parameters (100% coverage). Description adds no extra meaning beyond the general purpose. Baseline score of 3 applies as per guidelines.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends voice messages via WeChat Work application account. It distinguishes from siblings by specifying voice vs other media types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool over alternatives like wework_app_send_image or wework_app_send_video. The agent must infer from the name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_send_image企业微信群机器人-发送图片消息C

通过企业微信群机器人发送图片消息

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes图片url
bot_keyNo企业微信群机器人key,uuid格式,默认从环境变量获取

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description only states the action without disclosing any behavioral traits such as authentication requirements, rate limits, or side effects. The agent receives no additional context beyond the basic function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that directly states the tool's purpose. It is appropriately brief with no extraneous content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (two parameters, no output schema, no nested objects), the description is minimally adequate. However, it lacks any behavioral context or return value information that could help the agent understand the outcome of the operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for its two parameters, so the schema itself provides adequate meaning. The description adds no extra parameter information, meeting the baseline for complete schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool sends image messages via the WeWork group robot. However, it does not differentiate from the sibling tool 'wework_app_send_image', which also sends images but via the WeWork app.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus other WeWork messaging tools (e.g., wework_send_text, wework_send_news). The description only implies usage for sending images.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_send_news企业微信群机器人-发送图文消息B

通过企业微信群机器人发送图文链接消息

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes标题,不超过128个字节
urlYes跳转链接,必填
picurlNo图片URL
descriptionNo描述,不超过512个字节
bot_keyNo企业微信群机器人key,uuid格式,默认从环境变量获取

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description does not disclose behavioral traits such as side effects, authorization requirements, rate limits, or whether the message is immediately sent. The single verb 'send' implies a write operation but offers no further transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One clear sentence, no redundancy, efficiently communicates the core function. Could be slightly more structured but is appropriately terse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with 5 straightforward parameters and no output schema, the description provides the essential action but lacks usage context, alternatives, and behavioral notes. Not fully complete but minimally adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% description coverage for all 5 parameters, so schema already clarifies meaning. Description adds no additional context beyond listing the resource type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (send) and resource (image-text link message) and specifies the channel (enterprise WeChat group robot), distinguishing it from siblings like wework_send_text and wework_send_image.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternative wework tools (e.g., wework_send_text, wework_send_image). The description lacks any context about prerequisites or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wework_send_text企业微信群机器人-发送文本消息C

通过企业微信群机器人发送文本或Markdown消息

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes消息内容,长度限制: (text: 2048个字节, markdown_v2: 4096个字节)
msgtypeNo内容类型,仅支持: text/markdown_v2text
bot_keyNo企业微信群机器人key,uuid格式,默认从环境变量获取

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility. It mentions sending text/Markdown but omits details like rate limits, authentication (bot_key required but may fallback to env var), or message length constraints (partially covered in schema). The description is insufficient for full behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no wasted words. However, it could be slightly more informative without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with three parameters and no output schema, the description is minimal. It does not explain the purpose of bot_key or msgtype defaults, nor how it differs from WeWork sibling tools (e.g., wework_send_news). More context is needed for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add any parameter information beyond what is in the schema. The schema descriptions are adequate, but the description itself contributes nothing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool sends text or Markdown messages via the WeWork group robot. It distinguishes from sibling tools targeting other platforms (e.g., DingTalk, Lark), but does not explicitly differentiate from other WeWork-specific tools like wework_send_image.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. It only describes the basic function without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.2/5.0
Disambiguation5/5

Each tool is uniquely identified by its platform prefix and action, making it easy for an agent to distinguish between sending text via Telegram vs. WeWork. There is no overlap in purpose.

Naming Consistency4/5

Most tools follow a consistent 'platform_verb_object' pattern (e.g., tg_send_message, wework_send_text). The exceptions are 'text_to_sound' (no platform prefix and a different verb structure) and 'ha_send_mobile' (missing underscore).

Tool Count4/5

With 21 tools across 9 platforms, the count is high but justified by the variety of platforms and message types. Each tool serves a distinct purpose, though some platforms have only a single tool.

Completeness4/5

The server covers a broad range of notification platforms with essential message types (text, image, file, etc.). Minor gaps exist (e.g., no Telegram location or email), and 'text_to_sound' seems tangential, but core notification workflows are well-supported.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aahl/mcp-notify'

If you have feedback or need assistance with the MCP directory API, please join our Discord server