Yandex Wiki MCP 服务器
使用说明内容(Markdown格式)
-
项目简介 该项目实现一个基于 Model Context Protocol (MCP) 的后端服务器,专门对接 Yandex Wiki 的 API。通过定义一组工具(例如 wiki_page_get、wiki_page_get_by_url、wiki_page_get_text_by_url 等),LLM 客户端可以以标准化的方式读取 wiki 页面内容、获取页面元数据、创建或更新页面等。服务器支持只读模式、可选的缓存机制(Redis)以及多种传输方式(stdio、HTTP、SSE 等),并提供调试与会话管理能力。
-
主要功能点
- MCP 服务器核心:接收和处理基于 MCP 的请求,提供资源访问、工具执行、提示模板等能力,返回标准的 JSON-RPC 响应。
- Wiki 相关工具:包括 wiki_page_get_by_url、wiki_page_get、wiki_page_get_text_by_url、wiki_page_create、wiki_page_update、wiki_page_append_content,用于读取、创建、修改 Wiki 页面等操作。
- 只读模式与写操作控制:支持只读模式,写工具在只读模式下返回 403/错误。
- HTTP 客户端与错误处理:通过 httpx 进行 Yandex Wiki API 调用,包含错误处理、超时重试等机制。
- 缓存支持:可选启用 Redis 缓存,缓存只针对读取操作,写操作会导致相关缓存失效,且响应中会标注是否来自缓存。
- 多传输协议:支持 stdio、HTTP、SSE 等传输,方便在不同环境下接入 MCP 客户端。
- 安全与运维:会话管理、权限控制、错误信息屏蔽等,提供生产化配置项(如 FastMCP 设置)。
-
安装步骤
- 安装运行环境中的工具:确保安装了 uv(用于 MCP 服务的运行)以及所需依赖。
- 获取 Yandex Wiki 的 OAuth Token 及组织 ID,并设置环境变量:WIKI_TOKEN 与 WIKI_ORG_ID(也可使用 TRACKER_TOKEN 与 TRACKER_ORG_ID 的等效变量)。
- 设置可选参数(如 API 基址、缓存、传输协议等)以适应你的部署环境。
- 启动服务器:使用 MCP 启动命令,例如 uvx mcp-yandex-wiki(即可进入默认的 stdio 传输)。如需只读模式,请使用只读变体或在启动时指定只读选项。
- 如需调试,可使用 MCP Inspector 进行可视化调试,连接到 SSE 等传输。
-
服务器配置(MCP 客户端配置示例说明) 说明:MCP 客户端需要配置一个或多个 MCP 服务器来与后端建立连接。以下信息为示例描述,实际项目中需要将 token、org_id 等替换为你自己的凭证。配置以 JSON 格式呈现,包含服务器名称、启动命令与参数等字段,MCP 客户端本身并不需要这些参数的实现细节,只需知道服务器的启动方式即可。
示例配置(JSON 格式描述,非代码块,仅供参考) { "mcpServers": { "yandex-wiki": { "name": "yandex-wiki", "command": "uvx", "args": ["mcp-yandex-wiki"], "env": { "WIKI_TOKEN": "<your_yandex_wiki_token>", "WIKI_ORG_ID": "<your_org_id>" } // 说明:WIKI_TOKEN 与 WIKI_ORG_ID 必填,其他可选环境变量按需配置 }, "yandex-wiki-ro": { "name": "yandex-wiki-ro", "command": "uvx", "args": ["--from", "mcp-yandex-wiki", "mcp-yandex-wiki-ro"], "env": { "WIKI_TOKEN": "<your_yandex_wiki_token>", "WIKI_ORG_ID": "<your_org_id>" } // 说明:只读模式的服务器,参数通过 --from 从主服务器派生 } } }
-
基本使用方法
- 启动并连接:确保环境变量正确设置后,使用上述命令启动服务器,MCP 客户端即可通过标准 MCP 连接向服务器发送请求。
- 调用工具:LLM 客户端可以通过 JSON-RPC 请求调用 wiki_page_get、wiki_page_get_by_url、wiki_page_get_text_by_url、wiki_page_create、wiki_page_update、wiki_page_append_content 等工具来获取或修改 Wiki 页面内容。
- 使用只读模式:若需要仅进行读取操作,启用只读模式后写相关工具将不可用。
- 调试与监控:通过 MCP Inspector 等工具对服务器的工具集、响应和缓存行为进行交互式调试。
-
额外说明
- 该实现支持通过 Redis 进行缓存,适用于高并发读取的场景;缓存仅对读取操作生效,写操作会导致相关缓存失效。
- 服务器还提供了灵活的错误处理、重试策略与详细的日志信息,便于排错和性能优化。