Skip to main content
Glama
wlor0623

codex-notify-mcp

by wlor0623

codex-notify-mcp

Codex 任务完成后发送企业微信通知。这个项目提供两种入口:

  • MCP 工具:给 Codex 暴露 notify_wecom,让 Codex 在任务完成前主动发通知。

  • CLI 命令:可以被 hook、脚本或手动命令调用,直接向企业微信 webhook 发消息。

效果截图

企业微信通知截图

Related MCP server: webhook-mcp

配置

不要把企业微信 webhook 写进源码。推荐放进本地 .env

WECOM_WEBHOOK_URL=https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY_HERE
CODEX_NOTIFY_DEFAULT_TITLE=Codex 任务完成
CODEX_NOTIFY_REPO=codex-notify-mcp

.env 已加入 .gitignore。如果不想用 .env,也可以直接设置环境变量:

$env:WECOM_WEBHOOK_URL="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY_HERE"

作为 MCP 接入 Codex

在本仓库目录执行:

codex mcp add wecom-notify --env CODEX_NOTIFY_ENV_FILE="E:\code\github\codex-notify-mcp\.env" -- node E:\code\github\codex-notify-mcp\src\server.mjs

之后在 Codex 的长期指令或仓库 AGENTS.md 中加入类似规则:

每次任务完成并准备回复用户前,调用 wecom-notify MCP 的 notify_wecom 工具发送企业微信通知。
通知内容包含任务状态、简短摘要、仓库名和当前路径。

手动发送测试

node src\cli.mjs --title "Codex 任务完成" --status done --task "通知测试" --summary "企业微信 webhook 已可用"

可用环境变量

  • WECOM_WEBHOOK_URL:必填,企业微信机器人 webhook 地址。

  • CODEX_NOTIFY_ENV_FILE:可选,指定 .env 文件路径。

  • CODEX_NOTIFY_DEFAULT_TITLE:可选,默认通知标题。

  • CODEX_NOTIFY_REPO:可选,默认仓库名。

  • CODEX_NOTIFY_CWD:可选,默认工作目录。

MCP 工具参数

工具名:notify_wecom

参数:

  • title:通知标题。

  • status:任务状态,例如 donefailedneeds attention

  • task:任务名。

  • summary:任务摘要。

  • repo:仓库名。

  • cwd:当前路径。

Available Tools

1 tool
notify_wecomB

Send a Codex task notification to a WeCom group robot webhook.

ParametersJSON Schema
NameRequiredDescriptionDefault
cwdNoWorking directory.
repoNoRepository or project name.
taskNoShort task name.
titleNoNotification title.
statusNoTask status, for example done, failed, or needs attention.
summaryNoHuman-readable completion summary.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are present, so the description alone must disclose behavioral traits. It only states 'send', which implies a write-like operation, but it does not mention side effects, idempotency, authentication requirements, or error behavior. This is insufficient for safe invocation.

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, concise sentence that front-loads the key action and target. Every word is necessary and there is no redundancy.

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 6 parameters and no output schema, the description is very brief and lacks details about how the notification is sent, expected outcomes, or failure behavior. It does not compensate for the lack of annotations or 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?

All six parameters have descriptions in the input schema (100% coverage), so the baseline is 3. The tool description adds no additional meaning beyond what the schema already provides, so the score remains at 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?

The description clearly states the verb 'send', the resource 'Codex task notification', and the target 'WeCom group robot webhook'. It is specific and distinguishes the tool's purpose without ambiguity.

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, prerequisites, or alternatives. There is no implied usage context beyond the basic action, leaving the agent without decision-making support.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev0.1.0
    • First observednotify_wecom

TDQS

B3.4/5.0
Disambiguation5/5

Only one tool exists, so there is no risk of confusion between tools.

Naming Consistency5/5

With a single tool, naming is trivially consistent, using a clear verb_noun pattern.

Tool Count2/5

A single tool feels too few for a typical MCP server, even for a narrow notification purpose, as there is no room for additional related operations.

Completeness4/5

The tool covers the core purpose of sending a notification to WeCom, but lacks features like confirmation, delivery status, or support for other notification channels.

Maintenance

ActivityStale
ResponsivenessNo issues

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/wlor0623/codex-notify-mcp'

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