wecom-docs-mcp-server

by beltran12138

Not rated
GitHub

About

WeCom (Enterprise WeChat) document operations via MCP — create, read, and edit Docs and Smartsheets. 9 tools. Fills the doc-CRUD gap: existing WeCom MCP servers only support webhook messaging

Details

Author
beltran12138
Categories
Communication, Other

Setup

Install wecom-docs-mcp-server in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/beltran12138/wecom-docs-mcp-server

Follow the installation instructions in the repository README, then restart your MCP client.

WeCom (Enterprise WeChat) document operations via MCP — create, read, and edit Docs and Smartsheets. 9 tools. Fills the doc-CRUD gap: existing WeCom MCP servers only support webhook messaging

⚠️ Archived 2026-08-18 — read this first

Unmaintained, and never published to PyPI.Thepip install wecom-docs-mcp-serverline further down does not work and never did — install from source if you still want to run it.

This server is a stdio proxy over WeCom'srobot-doc MCPbackend. Tencent's investment has visibly moved to a different surface: the officialWecomTeam/wecom-cli(Rust; rewritten for v1.1.0 on 2026-08-17, 14 service domains) plus the officialWecomTeam/wecom-unifiedagent skill. The robot-doc MCP backend has had no public update since 2026-04-22.

Verified against@wecom/cliv1.1.0 on 2026-08-18:

If you came here to give an agent access to WeCom documents

npm install -g @wecom/cli npx skills add WecomTeam/wecom-unified -y -g wecom-cli auth init

wecom_doc_mcp/transforms.py— the cell-unwrap transform. ~120 lines, no MCP dependency. Lift it as a post-processing filter on CLI output rather than running this server.

Observed 2026-07 against the robot-doc backend:

- get_doc_contentandsmartsheet_get_use independent permission scopes.The same bot can read a smartsheet viasmartsheet_get_records(errcode 0) and still get851003 no authorityfromget_doc_contenton that same document. Route reads by document type; one working scope proves nothing about the other.
- Pass the full documenturlincluding?scode=rather than reconstructingdocid. The backend resolves the URL; stripping prefixes by hand yields301085 invalid docid.

An ergonomicstdio MCP facadeover WeCom's officialrobot-doc MCPbackend. It proxies all 25 backend tools verbatim and adds a transform layer that makes the raw output usable by LLM agents:

- Schema passthrough— the tool list is fetched from the backend at startup, so it auto-tracks official updates. Zero schema maintenance.
- Cell unwrap— smartsheetvalues
[field] = [{"type":"text","text":...}]cells become plain scalars (in a_rowsview).
- ms → ISO— 13-digit ms-epoch timestamps (create_time,update_time) convert to ISO 8601.
- Chinese error hintserrcode851003 etc. get_error_summary+_error_hintso the agent learns the fix, not just the code.

Relationship to the backend: This serverrequiresthe official robot-doc MCP backend (an apikey from WeCom admin → 智能文档机器人 → API). It is a thin proxy + ergonomics layer,nota replacement.

The official robot-doc backend is anHTTP (StreamableHttp) MCP server. Two friction points: (1) many MCP clients and dev workflows preferstdio; (2) its raw output is agent-hostile — nested cell format, ms-epoch strings, opaque error codes. This server bridges both:

- Python 3.9+
- A WeCom智能文档机器人(Smart Doc Bot) with its API key — available to enterprises (≥10 members) via WeCom admin → 应用管理 → 智能文档机器人 → API.

⚠️Never published to PyPI.pip install wecom-docs-mcp-serverreturns 404. Source install is the only path.

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

Claude Desktop (claude_desktop_config.json)

{ "mcpServers": { "wecom-doc": { "command": "wecom-docs-mcp-server", "env": { "WECOM_MCP_APIKEY": "your_apikey_here" } } } }

All 25 backend tools are exposed verbatim (fetched live at startup). By domain:

Permission model (empirically observed 2026-07):get_doc_contentandsmartsheet_get_useindependent permission scopes. A bot may read a smartsheet viasmartsheet_get_records(errcode 0) yet get851003 no authorityfromget_doc_contenton the same doc. Route reads by doc type.

Applied automatically on everytools/callresponse:
- _rowsonsmartsheet_get_records— a flattened view where cells are unwrapped to scalars and top-level record fields (record_id,create_time, …) are preserved. The originalrecordsarray is kept intact.
- ms → ISOon all successful dict payloads — 13-digit ms-epoch strings → ISO 8601. Alphanumeric IDs (q979lj) are untouched.
- _error_summary+_error_hinton any non-zero errcode — Chinese explanation + concrete fix.

User: read https://doc.weixin.qq.com/smartsheet/s3_xxx?scode=yyy Agent: 1. smartsheet_get_sheet(url=...) → sheet_id (e.g. "q979lj") 2. smartsheet_get_fields(sheet_id, url) → field schema (types, IDs) 3. smartsheet_get_records(sheet_id, url) → records + _rows (cells unwrapped, timestamps ISO)

Pass the fullurl(with?scode=) rather than guessingdocid— the backend resolves it. Manually extracting docid by stripping prefixes is error-prone (empirically:301085 invalid docid).

pip install -e ".[dev]" # or: pip install pytest httpx pytest

25 unit tests cover SSE/JSON parsing, ms-timestamp normalization, cell unwrap, error humanizing, and server routing/post-processing — all offline (httpx mocked).

Integrates with Microsoft SharePoint, allowing interaction with documents, folders, and other SharePoint resources.

Browse and interact with Microsoft SharePoint sites and documents.

Read and edit HTML/Markdown tables in GitBook-synced documents via MCP tools.

Integrates with Wiki.js, enabling AI to read and update documentation.

MCP server for XWiki REST API — read your wiki from Claude and other AI agents

Build with the Kudosity API to send SMS and MMS. Access developer docs, API references and live testing tools to send messages, manage contact lists, configure webhooks and more.

Connect your Plaud recordings to any MCP-compatible AI client. Search recordings, read transcripts, and generate documents without leaving your AI assistant.

The VoIPstudio MCP server gives compatible AI assistants secure access to authorised VoIPstudio account data, including recordings, call detail records, live calls and voicemails in order to query call activity, analyse patterns, identify agent performance issues and generate QA or operations reports in plain English.

Let agents share knowledge with each other

Give your AI agent its own identity: a real email address, webhook URL, GitHub repo, encrypted secrets vault, memory and skills — hosted MCP, nothing to install.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.