Tauri Documentation MCP

io.github.fxckcode由 GitHub 帳號 fxckcode 發布v0.2.0更新於 Oct 24, 2026

Read-only MCP server for official Tauri 2 documentation snapshots.

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

唯讀 MCP 伺服器,讓助理解析並查詢內建的 Tauri 2 官方文件快照。

可以做什麼
解析預設或指定的 Tauri 2 文件快照,回傳修訂版本、版本號與條目數等中繼資料,並對不支援的識別碼回傳穩定錯誤碼。依關鍵字查詢快照,取得有界且確定的結果,包含標題、小節、章節、標準連結、內容與版本敏感標記。為舊用戶端保留相容的搜尋工具,沿用原有回應結構與限制。
適用情境
適合在開發 Tauri 2 桌面應用程式時,讓助理離線查閱官方框架文件,而不依賴即時抓取網頁。適用於 capabilities 等 Tauri 2 概念性問題,答案應來自固定且帶版本的語料庫。
執行需求
透過 npm 套件 tauri-docs-mcp 以 stdio 在本機執行,可用 npx 或全域安裝啟動。需要 Node.js 20.19 或更新版本以及 npm 10 或更新版本。無需驗證、API 金鑰、標頭或環境變數;除非設定 TAURI_DOCS_MCP_DIAGNOSTICS=1,否則診斷功能關閉。
安裝前請注意
文件是隨套件提交的快照,可能落後於目前的 Tauri 版本;來源修訂不可變,更新需使用新快照。它為唯讀,不抓取網址、不寫入檔案、不執行程式碼,因此無法對照實際專案驗證行為。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Tauri Documentation MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

tauri-docs-mcp

[npm version]

A read-only Model Context Protocol (MCP) server for resolving and querying a checked-in snapshot of official Tauri 2 documentation.

Requirements

  • Node.js 20.19 or newer (supported Node LTS)
  • npm 10 or newer

The committed package-lock.json is authoritative. Use npm install for local development and dependency changes; CI and reproducible installs use npm ci. Lockfile changes must be committed with dependency changes.

Install and run

Install the published package:

bash
npm install --global tauri-docs-mcp

Or install it in a project and invoke the binary from node_modules/.bin:

bash
npm install tauri-docs-mcpnpx tauri-docs-mcp

Build from a checkout, then run the compiled stdio server:

bash
npm installnpm run buildnode dist/src/index.js

Configure an MCP client to launch the installed binary over stdio:

json
{  "mcpServers": {    "tauri-docs": {      "command": "tauri-docs-mcp"    }  }}

Portable configurations for generic MCP clients, Claude Desktop, Cursor, and VS Code are in examples/mcp/. They pin the package version and use stdio only. Installable agent guidance is in skills/tauri-docs-mcp/SKILL.md.

The server writes MCP JSON-RPC messages only to stdout. It does not start an HTTP listener. Diagnostics are disabled by default; opt in with TAURI_DOCS_MCP_DIAGNOSTICS=1 and they are written to stderr as event names only (never request arguments, corpus content, secrets, or PII).

Tool contract

The server exposes two stable tools and one backwards-compatible legacy tool.

resolve_tauri_docs

Resolve the default snapshot or an explicit identifier:

json
{}
json
{ "identifier": "tauri@2" }

Supported identifiers are tauri, tauri@2, and the immutable snapshot ID tauri-2@58194ceb69424c4332b2780b196ced3a6fffb32b. Resolution is deterministic and returns snapshot, source revision, generated-at, version, and entry-count metadata. Unsupported identifiers return UNSUPPORTED_SNAPSHOT.

query_tauri_docs

Query content from the default or selected snapshot:

json
{ "query": "capabilities", "snapshot": "tauri@2", "limit": 3 }

query is required and must contain 1–200 non-whitespace characters and at most 16 whitespace-separated terms. snapshot is optional and accepts the resolver identifiers. limit is an optional integer from 1–10 (default 5). Results are bounded, deterministic, and include title, heading, section, canonical URL, content, corpus snapshot, source revision, Tauri version, and versionSensitive. Empty matches return results: [], not an application error. Inputs reject unknown fields.

Both tools are read-only and idempotent. They read only the checked-in corpus; there is no live fetching or arbitrary URL access.

Resource and lifecycle bounds

The shared tool contract enforces a 200-character query, 16 terms, 10 results, 1,200-character snippets, 8 KiB corpus entries, and 32 KiB serialized tool responses. The stdio frame buffer is capped at 64 KiB. EOF, transport errors, SIGINT, and SIGTERM share an idempotent shutdown path with a one-second cleanup bound; in-flight work is allowed to settle or is abandoned at that bound.

search_tauri_docs (compatibility)

Existing clients can continue to call:

json
{ "query": "capabilities", "limit": 3 }

It remains supported with its existing response shape and limits. New clients should use resolve_tauri_docs followed by query_tauri_docs.

Application errors are returned with stable discriminated codes such as INVALID_INPUT, INVALID_QUERY, INVALID_LIMIT, and UNSUPPORTED_SNAPSHOT; protocol errors remain MCP protocol errors.

Product boundary

This package is intentionally:

  • read-only;
  • stdio-only;
  • limited to its checked-in corpus; and
  • constrained to official Tauri 2 sources under https://v2.tauri.app/.

It never fetches user-controlled URLs, writes files, executes arbitrary code, controls a Tauri runtime, provides hosted HTTP, authenticates users, or emits telemetry. See docs/architecture.md for the module seams.

Development commands

bash
npm install          # install from package-lock.jsonnpm run typecheck    # TypeScript validationnpm run build        # compile runtime files to dist/npm test             # run the full Vitest suitenpm run lint         # ESLintnpm run format       # format tracked source and documentationnpm run format:check # verify formatting without writingnpm pack --dry-run   # inspect the publish allowlistnpm run package:smoke -- /path/to/tauri-docs-mcp-0.1.0.tgz # test a packed install

The pull-request workflow runs the same commands from a clean checkout. To reproduce its package step locally, create a tarball and pass its path to the smoke test:

bash
mkdir -p .tmp/packageTARBALL=$(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

See CONTRIBUTING.md for contribution rules and SUPPORT.md for supported use cases. Report vulnerabilities privately as described in SECURITY.md.

Releases and registry

The release workflow runs from a version tag and checks package, immutable corpus metadata, registry metadata, and the pack allowlist before publishing. npm publishing uses provenance/trusted publishing where enabled, then runs a fresh published-package smoke gate. Official MCP Registry publication is a separately protected environment chained after the successful npm job. No release is published from pull requests. See CHANGELOG.md for the release and MCP contract-change process.

Corpus maintenance

The runtime reads only the checked-in generated snapshot under corpus/; it never fetches documentation URLs. The approved manifest records canonical URLs, section hierarchy, Tauri version, source revision/freshness metadata, and a SHA-256 hash for each concise excerpt. The source revision is immutable, so a future snapshot must use a new tauri-2@<revision> directory.

After an approved source review, regenerate and validate deterministically:

bash
npm run ingest:docsnpm run validate:corpus

validate:corpus fails if the manifest is unsafe or incomplete, if content hashes drift, or if the generated artifact differs from its manifest. Source and license attribution is preserved in corpus/NOTICES.md.

Sources

來源:README.md,提交 d56a3a3

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分