wechat-mcp-publisher
wechat-mcp-publisher
Локальный MCP-инструмент для публикации черновиков в официальном аккаунте WeChat. Превращает «готовый HTML → черновик официального аккаунта» в один вызов инструмента LLM: загрузка изображений, замена встроенных изображений в тексте на URL WeChat, материалы обложки и создание черновика — всё выполняется автоматически.
Построен на официальном SDK mcp (2.x MCPServer), транспорт stdio, один аккаунт, зависимости управляются через uv.
Инструменты (5)
Инструмент | Назначение |
| Черновик статьи: принимает HTML (или путь к файлу |
| Черновик сообщения с изображением: текстовое описание + 1–20 изображений (по порядку) |
| Постраничный просмотр черновиков |
| Детали черновика (включая содержимое) |
| Удаление черновика (без удаления материалов) |
access_token получается внутри, кэшируется и самовосстанавливается при истечении (stable_token + автоматическое обновление и повторная попытка при кодах 40001/42001), не предоставляется как инструмент. Ошибки единообразно преобразуются в сообщения на китайском языке с подсказками по устранению (например, 40164 — добавить IP в белый список, 48001 — нужна верифицированная учётная запись) и не содержат учётных данных.
Related MCP server: WeChat Official Account MCP Server
Установка
uv sync
cp .env.example .env # 填入 WECHAT_APP_ID / WECHAT_APP_SECRETПолучение учётных данных: mp.weixin.qq.com → «Настройки и разработка» → «Основная конфигурация». На той же странице необходимо добавить публичный IP этой машины в IP-белый список, иначе при получении token будет ошибка 40164.
После публикации на PyPI также можно запускать без клонирования (в каталоге с .env):
uvx wechat-mcp-publisher
# 或 pip install wechat-mcp-publisher && wechat-mcp-publisherВ этом случае конфигурация MCP-клиента упрощается до "command": "uvx", "args": ["wechat-mcp-publisher"].
Подключение MCP-клиента
Claude Code (рекомендуется, одна команда):
claude mcp add wechat-mcp-publisher -- uv run --directory /你的路径/wechat-mcp-publisher python -m wechat_mcp_publisherКонфигурация уровня проекта (в этом репозитории уже есть .mcp.json; Claude Code активирует её при открытии каталога репозитория, при первом запуске нужно подтвердить доверие в /mcp): добавлять вручную не требуется.
Claude Desktop / другие клиенты: вставьте фрагмент из examples/mcp-client-config.example.json в соответствующий конфигурационный файл.
Примеры использования
Скажите LLM:
Помоги мне отправить /path/article.html как черновик статьи официального аккаунта, обложка — /path/cover.jpg
Или сообщение с изображениями:
Отправь эти три изображения /a.jpg /b.jpg /c.jpg как черновик сообщения с картинками, пояснение: кадры выходных
Демонстрация реальной цепочки API — в examples/simple_usage.py (token → загрузка → создание черновика, используется также как smoke-тест на реальном устройстве).
Тестирование
uv run pytestВсе интерфейсы замоканы через responses, для прохождения не нужен реальный аккаунт.
Область применения и известные ограничения
Не выполняет преобразование markdown→HTML: на входе — HTML; для преобразования используйте уже имеющийся у вас инструмент md→html
Не выполняет публикацию (
freepublish): сейчас работает только до черновика; публикация остаётся на потом, после верификации аккаунтаЛичный неверифицированный подписной аккаунт: API материалов/черновиков возвращает
48001; для проверки на реальном устройстве нужен верифицированный аккаунт (на разработку и тестирование не влияет)Совместимость HTML с WeChat: редактор WeChat распознаёт только подмножество HTML с инлайновыми стилями; адаптацию вёрстки выполняет вышестоящий инструмент преобразования; данный инструмент не проверяет и не исправляет
Накопление материалов: удаление черновика не удаляет занятые им постоянные изображения; при длительном использовании нужно периодически чистить их в панели управления официального аккаунта
Один аккаунт: учётные данные берутся из
.env, переключение между аккаунтами не предусмотрено
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables saving articles to WeChat Official Account drafts with support for rich text, automatic image upload, and Markdown rendering including Mermaid diagrams.1
- FlicenseNot gradedqualityDmaintenanceEnables management of WeChat Official Accounts by supporting draft creation, image uploads, and content publishing via the MCP protocol. It provides tools for interacting with the WeChat API, including secure token caching and draft list management.
- AlicenseNot gradedqualityBmaintenanceBridges AI writing and content platforms by enabling AI agents to format Markdown and publish posts directly to WeChat Official Accounts with automatic image handling. It supports conversational theme management and streamlined drafting to eliminate the need for manual copy-pasting between editors.821,300Apache 2.0
- FlicenseAqualityFmaintenanceEnables AI agents to publish articles to WeChat Official Account (微信公众号). Supports image upload, draft creation, and publishing via standardized MCP protocol.51
Related MCP Connectors
Publish Markdown or HTML to a shareable link from your AI assistant. OAuth, no API keys.
Publish HTML to private, unguessable, replace-in-place URLs from any MCP-compatible AI agent.
Publish to self-hosted WordPress from AI agents: markdown, images, SEO, and Notion sync.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/weinh/wechat_mcp_publisher'
If you have feedback or need assistance with the MCP directory API, please join our Discord server