关于 Tauri Documentation MCP
Tauri Documentation MCP 是只读服务,用于查询已纳入版本管理的官方 Tauri 2 文档快照,适合需要确定性结果且不进行实时 URL 抓取的 MCP 客户端。
主要功能
- 01解析文档快照
- 02查询 Tauri 2 文档
- 03返回来源和版本元数据
- 04提供有界的确定性结果
- 05只读已纳入版本管理的语料
适用场景
- 01在 MCP 客户端中查阅 Tauri 2 文档
- 02选择特定文档快照
- 03获取带版本信息的文档摘录
MCP 相关
此 MCP 服务仅通过标准输入输出运行,提供解析文档快照、查询内容的工具,并保留旧版搜索工具。它只读取已纳入版本管理的语料,不会实时抓取文档。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| identifier | string | 否 | tauri、tauri@2 或不可变快照标识符。 |
详细介绍
tauri-docs-mcp
一个只读的模型上下文协议(MCP)服务,用于解析和查询已纳入代码库的官方 Tauri 2 文档快照。
要求
- Node.js 20.19 或更高版本(受支持的 Node LTS)
- npm 10 或更高版本
已提交的 package-lock.json 是权威依据。本地开发和依赖变更请使用 npm install;CI 和可复现安装请使用 npm ci。更改依赖时,必须一并提交锁文件变更。
安装和运行
安装已发布的软件包:
npm install --global tauri-docs-mcp
或将软件包安装到项目中,并从 node_modules/.bin 调用二进制文件:
npm install tauri-docs-mcp
npx tauri-docs-mcp
从检出目录构建,然后运行已编译的 stdio 服务:
npm install
npm run build
node dist/src/index.js
配置 MCP 客户端,通过 stdio 启动已安装的二进制文件:
{
"mcpServers": {
"tauri-docs": {
"command": "tauri-docs-mcp"
}
}
}
通用 MCP 客户端、Claude Desktop、Cursor 和 VS Code 的可移植配置位于 examples/mcp/。这些配置固定了软件包版本,并且仅使用 stdio。可安装的 Agent 指南位于 skills/tauri-docs-mcp/SKILL.md。
该服务仅向 stdout 写入 MCP JSON-RPC 消息,不会启动 HTTP 监听器。诊断功能默认禁用;设置 TAURI_DOCS_MCP_DIAGNOSTICS=1 可启用诊断信息,这些信息仅以事件名称的形式写入 stderr(绝不包含请求参数、语料内容、机密或个人身份信息)。
工具契约
该服务提供两个稳定工具和一个向后兼容的旧版工具。
resolve_tauri_docs
解析默认快照或指定标识符:
{}
{ "identifier": "tauri@2" }
支持的标识符包括 tauri、tauri@2 和不可变快照 ID tauri-2@58194ceb69424c4332b2780b196ced3a6fffb32b。解析过程具有确定性,并返回快照、源修订版本、生成时间、版本和条目数量元数据。不支持的标识符会返回 UNSUPPORTED_SNAPSHOT。
query_tauri_docs
查询默认快照或选定快照中的内容:
{ "query": "capabilities", "snapshot": "tauri@2", "limit": 3 }
query 为必填项,必须包含 1–200 个非空白字符,且最多包含 16 个以空白字符分隔的词项。snapshot 为可选项,接受解析器支持的标识符。limit 为可选的 1–10 整数(默认为 5)。结果数量受限且具有确定性,并包含标题、标题层级、章节、规范 URL、内容、语料快照、源修订版本、Tauri 版本和 versionSensitive。无匹配项时会返回 results: [],而非应用错误。输入中不得包含未知字段。
这两个工具均为只读且幂等。它们仅读取已纳入代码库的语料;不会实时获取内容,也无法访问任意 URL。
资源和生命周期限制
共享工具契约将查询长度限制为 200 个字符、词项数限制为 16 个、结果数限制为 10 个、片段长度限制为 1,200 个字符、语料条目大小限制为 8 KiB,并将序列化后的工具响应限制为 32 KiB。stdio 帧缓冲区上限为 64 KiB。EOF、传输错误、SIGINT 和 SIGTERM 共用幂等的关闭流程,清理时间上限为一秒;正在执行的工作可以完成,也可以在达到上限时中止。
search_tauri_docs(兼容性)
现有客户端可以继续调用:
{ "query": "capabilities", "limit": 3 }
该工具仍受支持,并保留原有的响应格式和限制。新客户端应依次使用 resolve_tauri_docs 和 query_tauri_docs。
应用错误会以稳定的区分代码返回,例如 INVALID_INPUT、INVALID_QUERY、INVALID_LIMIT 和 UNSUPPORTED_SNAPSHOT;协议错误仍为 MCP 协议错误。
产品边界
此软件包有意限定为:
- 只读;
- 仅使用 stdio;
- 仅限于已纳入代码库的语料;以及
- 仅限于
https://v2.tauri.app/下的官方 Tauri 2 来源。
它绝不会获取由用户控制的 URL、写入文件、执行任意代码、控制 Tauri 运行时、提供托管 HTTP 服务、验证用户身份或发送遥测数据。有关模块边界,请参阅 docs/architecture.md。
开发命令
npm install # install from package-lock.json
npm run typecheck # TypeScript validation
npm run build # compile runtime files to dist/
npm test # run the full Vitest suite
npm run lint # ESLint
npm run format # format tracked source and documentation
npm run format:check # verify formatting without writing
npm pack --dry-run # inspect the publish allowlist
npm run package:smoke -- /path/to/tauri-docs-mcp-0.1.0.tgz # test a packed install
拉取请求工作流会在干净的检出中运行相同的命令。若要在本地复现其打包步骤,请创建一个 tarball,并将其路径传递给冒烟测试:
mkdir -p .tmp/package
TARBALL=$(npm pack --json --pack-destination .tmp/package | node -e "let s=''; process.stdin.on('data', d => s += d).on('end', () => process.stdout.write(JSON.parse(s)[0].filename))")
npm run package:smoke -- ".tmp/package/$TARBALL"
rm -rf .tmp
贡献规则请参阅 CONTRIBUTING.md,支持的用例请参阅 SUPPORT.md。请按照 SECURITY.md 中的说明,私下报告漏洞。
发布与注册表
发布工作流从版本标签启动,并会在发布前检查软件包、不可变语料库元数据、注册表元数据和 pack 允许列表。 在启用来源证明/可信发布的情况下,npm 发布会使用来源证明/可信发布,随后运行针对全新已发布软件包的冒烟测试门禁。官方 MCP Registry 发布则在成功的 npm 作业之后,通过单独受保护的环境执行。不会从拉取请求发布任何版本。有关发布和 MCP 合约变更流程,请参阅 CHANGELOG.md。
语料库维护
运行时仅读取 corpus/ 下已检入的生成快照;绝不会获取文档 URL。获批清单记录规范 URL、章节层级、Tauri 版本、源修订/新鲜度元数据,以及每段精简摘录的 SHA-256 哈希。源修订不可变,因此未来的快照必须使用新的 tauri-2@<revision> 目录。
通过获批的源审查后,确定性地重新生成并验证:
npm run ingest:docs
npm run validate:corpus
如果清单不安全或不完整、内容哈希发生偏差,或生成的构件与清单不一致,validate:corpus 就会失败。源和许可证归属信息保留在 corpus/NOTICES.md 中。
来源
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。