WeChat Official Account MCP Server (Go)
Um servidor Go de alto desempenho para gerenciar Contas Oficiais do WeChat, com suporte a rascunhos, publicação e gerenciamento de materiais.
Documentação
Servidor MCP para Contas Oficiais do WeChat (Versão Go)
Este é um servidor Model Context Protocol (MCP) para Contas Oficiais do WeChat, reimplementado em Go, desenvolvido com o framework mark3labs/mcp-go.
✨ Recursos
- 🚀 Alto desempenho: Implementado em Go, com inicialização rápida e baixo consumo de memória
- 📦 Containerizado: Suporte completo a Docker, implantação com um clique
- 🔧 Implantação simples: Arquivo binário único, sem dependências
- 🛡️ Segurança de tipos: Verificação de erros em tempo de compilação
- 🔄 Totalmente compatível: API totalmente compatível com a versão Python
- 📊 Logs estruturados: Facilita depuração e monitoramento
📋 Lista de recursos
Suporta 5 ferramentas principais de gerenciamento de Contas Oficiais do WeChat:
- WeChat_get_access_token - Obtém o access_token da Conta Oficial do WeChat
- WeChat_create_draft - Cria rascunho de mensagem de imagem e texto
- WeChat_publish_draft - Publica rascunho na Conta Oficial
- WeChat_del_draft - Exclui rascunho não publicado
- WeChat_del_material - Exclui material permanente
🚀 Início rápido
Opção 1: Usando Docker (recomendado)
# 1. 构建并运行
make docker-run
# 2. 查看日志
docker logs wechat-oa-mcp-server
Opção 2: Build local
# 1. 安装依赖
make deps
# 2. 构建
make build
# 3. 运行
make run
🐳 Uso com Docker
Criar imagem
docker build -t wechat-oa-mcp-go:latest .
Executar contêiner
docker run -it --name wechat-oa-mcp-server wechat-oa-mcp-go:latest
Usar docker-compose
# 启动服务
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
🎛️ Configuração no Cursor
Adicione a seguinte configuração às configurações de MCP do Cursor:
{
"mcpServers": {
"wechat-oa-mcp-go": {
"command": "/path/to/wechat-oa-mcp-go/bin/wechat-oa-mcp",
"env": {
"LOG_LEVEL": "info"
}
}
}
}
Ou use o método com Docker:
{
"mcpServers": {
"wechat-oa-mcp-go": {
"command": "docker",
"args": ["run", "-i", "--rm", "wechat-oa-mcp-go:latest"]
}
}
}
🔧 Notas de desenvolvimento
Estrutura do projeto
wechat-oa-mcp-go/
├── cmd/main.go # 主程序入口
├── internal/handlers/ # MCP 工具处理器
├── pkg/wechat/ # 微信 API 客户端
├── Dockerfile # 容器构建文件
├── Makefile # 构建脚本
├── go.mod # Go 模块依赖
└── README.md # 本文档
Adicionar nova ferramenta
- Adicione funções do cliente de API em
pkg/wechat/ - Implemente os manipuladores de ferramentas MCP em
internal/handlers/ - Registre a nova ferramenta em
cmd/main.go
Comandos de build
# 查看所有可用命令
make help
# 构建二进制文件
make build
# 运行测试
make test
# 清理构建文件
make clean
# 下载依赖
make deps
# Docker 相关
make docker-build # 构建镜像
make docker-run # 运行容器
make docker-clean # 清理容器和镜像
🌟 Vantagens de desempenho
Comparado à versão Python:
- Velocidade de inicialização: 20 a 30 vezes mais rápida
- Consumo de memória: redução de 60 a 70%
- Tempo de resposta: 2 a 4 vezes mais rápido
- Implantação simples: binário de arquivo único, sem dependências de runtime
🔄 Compatibilidade de API
A versão Go é totalmente compatível com a API da versão Python:
- Mesmos nomes e parâmetros de ferramentas
- Mesmo formato de resposta
- Mesmo tratamento de erros
Pode substituir perfeitamente a implementação Python existente.
🔍 Depuração e logs
O servidor gera logs detalhados no stderr durante a inicialização, incluindo:
- Status de registro das ferramentas
- Processo de tratamento de solicitações
- Mensagens de erro e stack traces
Defina a variável de ambiente LOG_LEVEL=debug para obter informações de depuração mais detalhadas.
📄 Licença
Este projeto está sob a mesma licença da versão Python original.
🤝 Contribuições
Issues e Pull Requests são bem-vindos!
📞 Suporte
Em caso de dúvidas, consulte:
IMPLEMENTATION.md- Explicação detalhada da implementaçãoREADME-GO.md- Documentação específica da versão Go