返回 MCP 目录
public公开dns本地运行

wecom-bot-mcp-server

WeCom Bot MCP Server是一个符合Model Context Protocol (MCP)标准的服务器实现,用于企业微信机器人,支持多种消息类型发送、@提及功能、消息历史追踪等功能。

article

README

🚀 企业微信机器人MCP兼容服务器实现

本项目开发了一个支持Model Context Protocol(MCP)的企业微信机器人服务器。该服务器可与主流AI模型交互,还能通过企业微信发送消息、文件和图片,为企业沟通场景提供了便捷的解决方案。

🚀 快速开始

在使用本服务器前,需要完成初始化配置。在config.py文件中添加以下内容:

BOT_TOKEN = "your_bot_token"
API_HOST = "your_api_host"

以下是发送消息的示例代码:

from wecom_bot_mcp_server import mcp

# 发送文本消息
await mcp.send_message("这是一条测试信息")

# 发送Markdown格式消息
await mcp.send_message("**重要通知**", msg_type="markdown")

✨ 主要特性

  • 💬 支持发送多种类型的消息:文本、Markdown格式、文件和图片
  • 👥 提供@提及功能,支持批量用户通知
  • 📜 内建消息历史记录模块
  • 🖼️ 支持本地和远程图片传输
  • 📚 提供完整的API接口

📦 安装指南

使用pip安装

pip install wecom-bot-mcp-server

从源码安装

git clone https://github.com/loonghao/wecom-bot-mcp-server.git
cd wecom-bot-mcp-server
pip install -e .

💻 使用示例

基础用法

from wecom_bot_mcp_server import mcp

# 发送文本消息
await mcp.send_message("这是一条测试信息")

# 发送Markdown格式消息
await mcp.send_message("**重要通知**", msg_type="markdown")

高级用法

from wecom_bot_mcp_server import mcp
import asyncio

async def main():
    # 发送文本消息并@特定用户
    await mcp.send_message("请大家注意查看", mentioned_list=["user_id_1", "user_id_2"])

    # 发送文件
    await mcp.send_file("path/to/your/file.pdf")

asyncio.run(main())

📚 详细文档

发送文本消息

async def send_message(message: str, *, msg_type: str = "text", mentioned_list: List[str] = None):
    """
    发送文本或Markdown格式的消息

    参数:
        message (str): 消息内容
        msg_type (str, 可选): 消息类型,支持"text"和"markdown"
        mentioned_list (List[str], 可选): 需要@提及的用户ID列表
    返回:
        bool: 发送结果
    """

发送文件

async def send_file(file_path: str):
    """
    上传并发送文件

    参数:
        file_path (str): 文件路径,支持本地和远程URL
    返回:
        bool: 发送结果
    """

🔧 技术细节

环境搭建

  1. 安装依赖:
pip install -r requirements.txt
  1. 启动开发服务器:
python src/server.py

测试流程

  1. 运行单元测试:
pytest tests/
  1. 执行代码检查:
flake8 . --ignore=E501

项目结构

wecom-bot-mcp-server/
├── src/
│   └── wecom_bot_mcp_server/
│       ├── __init__.py
│       ├── server.py
│       ├── message_handler.py
│       └── file_storage.py
└── tests/
    └── test_*.py

📄 许可证

本项目遵循MIT开源协议,详细内容请参阅LICENSE文件。

📞 联系方式

  • 作者:longhao
  • 邮箱:hal.long@outlook.com
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端