使用说明
WhatsApp MCP服务器
提供模型上下文协议(MCP)接口以使用FastMCP与WhatsApp Business API交互的服务器。
引言
WhatsApp MCP Server是一个Python实现,它使像Claude这样的语言模型能够通过以下方式与WhatsApp功能进行交互 绿色API。它利用FastMCP来提高性能、更好的开发人员体验和更清晰的实现。
特性
- 消息传递:向WhatsApp联系人发送短信
- 组管理:创建组、列出成员、添加/删除参与者
- 会话处理:管理WhatsApp API会话
- 聊天历史记录:检索聊天列表和消息历史记录
WhatsApp API客户端
该项目使用 whatsapp-api-client-python 图书馆与WhatsApp互动。客户端提供对WhatsApp云API的访问,这需要 绿色API 帐户使用。
环境变量
此项目使用环境变量进行配置:
GREENAPI_ID_INSTANCE:您的GreenAPI ID实例GREENAPI_API_TOKEN:您的GreenAPI API代币
您可以在您的环境中设置这些,也可以使用提供的 .env 文件(请参阅安装说明)。
安装
# Clone the repository
git clone https://github.com/yourusername/whatsapp-mcp-server.git
cd whatsapp-mcp-server
# Install dependencies
pip install -e .
# Set up environment variables
cp .env-template .env
# Edit the .env file with your GreenAPI credentials
用法
运行MCP服务器:
# Run the MCP server on default host (127.0.0.1) and port (8000)
whatsapp-mcp
# Specify host and port
whatsapp-mcp --host 0.0.0.0 --port 9000
调试:
whatsapp-mcp --debug
服务器使用模型上下文协议(MCP)进行通信,在使用FastMCP运行时可以通过HTTP或WebSockets进行访问。
可用工具
open_session:打开新的WhatsApp会话send_message:向聊天室发送消息get_chats:获取聊天记录列表create_group:创建新的WhatsApp群组get_group_participants:获取小组的参与者
FastMCP API参考
WhatsApp MCP服务器使用FastMCP提供WebSocket和HTTP端点:
- WebSocket:
ws://localhost:8000/mcp - HTTP:
http://localhost:8000/mcp
您可以使用curl等工具直接测试API:
# List available tools
curl -X POST http://localhost:8000/mcp/listTools
# Call a tool
curl -X POST http://localhost:8000/mcp/callTool \
-H "Content-Type: application/json" \
-d '{"name": "open_session", "arguments": {}}'
如何将其添加到Claude Code
要向Claude添加WhatsApp服务器,请使用 claude mcp add 命令:
# Add the WhatsApp MCP server
$ claude mcp add whatsapp -- whatsapp-mcp
# List existing MCP servers - Validate that the server is running
claude mcp list
# Start claude code
claude
与克劳德一起使用
WhatsApp MCP服务器运行后,您可以在对话中使用Claude与它进行交互:
使用WhatsApp进行身份验证
Login to WhatsApp
发送消息
Send the "Hello" message to John Doe
与Claude Desktop一起使用
要将WhatsApp MCP服务器与Claude Desktop一起使用,您需要将其添加到您的 claude_desktop_config.json 文件:
使用pip安装(推荐)
"mcpServers": {
"whatsapp": {
"command": "python",
"args": ["-m", "whatsapp_mcp"]
}
}
使用可执行文件
"mcpServers": {
"whatsapp": {
"command": "whatsapp-mcp"
}
}
使用Docker
"mcpServers": {
"whatsapp": {
"command": "docker",
"args": ["run", "--rm", "-i", "-e", "GREENAPI_ID_INSTANCE=your_instance_id", "-e", "GREENAPI_API_TOKEN=your_api_token", "whatsapp-mcp-server"]
}
}
请记住将您的GreenAPI凭据设置为环境变量或在您的 .env 在启动Claude Desktop之前。
命令行选项
WhatsApp MCP服务器接受以下命令行参数:
--debug:提高调试的详细程度--host:将服务器绑定到的主机(默认值:127.0.0.1)--port:将服务器绑定到的端口(默认值:8000)
调试
要调试MCP服务器:
- 使用MCP检查器:
npx @modelcontextprotocol/inspector whatsapp-mcp - 查看Claude Desktop日志目录中的日志(通常
~/Library/Logs/Claude/macOS) - 访问FastMCP web界面http://localhost:8000用于交互式API文档
发展
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Run linting
flake8 src/
# Run type checking
mypy src/
该项目使用现代 pyproject.toml 配置包括:
- 运行应用程序所需的核心依赖关系
- 开发依赖关系可用
pip install -e ".[dev]"
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
