mcpField
T
Tauri Documentation MCP

Tauri Documentation MCP

ローカル
github.com/fxckcode開発ツール17 週間前に更新

Tauri Documentation MCP について

Tauri Documentation MCPは、公式Tauri 2ドキュメントのチェックイン済みスナップショットを検索する読み取り専用サーバーです。URLをライブ取得せず、決定的な結果を必要とするMCPクライアント向けです。

主な機能

  1. 01ドキュメントスナップショットの解決
  2. 02Tauri 2ドキュメントの検索
  3. 03ソースとバージョン情報の返却
  4. 04上限付きの決定的な結果
  5. 05チェックイン済みコーパスの読み取り専用処理

活用シーン

  1. 01MCPクライアントでTauri 2ドキュメントを参照
  2. 02特定のドキュメントスナップショットを選択
  3. 03バージョン依存情報を含む抜粋の取得

MCP 対応

標準入出力専用のMCPサーバーで、スナップショットの解決と内容検索のツール、および旧版の検索ツールを提供します。チェックイン済みコーパスのみを読み取り、ドキュメントをライブ取得しません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"fxckcode-tauri-docs": {
"command": "npx",
"args": [
"-y",
"tauri-docs-mcp"
]
}
}
}
起動コマンドnpx -y tauri-docs-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmtauri-docs-mcp0.2.0

ツール

3

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
identifierstringいいえtauri、tauri@2、または不変のスナップショット識別子。

詳細

tauri-docs-mcp

npm version

公式 Tauri 2 ドキュメントのチェックイン済みスナップショットを解決してクエリする、読み取り専用の Model Context Protocol(MCP)サーバーです。

要件

  • 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

インストール済みのバイナリを stdio 経由で起動するように、MCP クライアントを設定します。

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

汎用 MCP クライアント、Claude Desktop、Cursor、VS Code 向けのポータブルな設定は、examples/mcp/ にあります。パッケージのバージョンを固定し、stdio のみを使用します。インストール可能なエージェント向けガイダンスは、skills/tauri-docs-mcp/SKILL.md にあります。

サーバーは MCP JSON-RPC メッセージのみを stdout に書き込みます。HTTP リスナーは起動しません。診断機能はデフォルトで無効です。TAURI_DOCS_MCP_DIAGNOSTICS=1 で有効にすると、イベント名のみが stderr に書き込まれます(リクエスト引数、コーパスの内容、シークレット、個人を特定できる情報は出力されません)。

ツールの仕様

サーバーは、安定した 2 つのツールと、後方互換性のあるレガシーツール 1 つを公開します。

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 は、冪等なシャットダウン処理を共有し、クリーンアップの上限は 1 秒です。進行中の処理は完了するまで待機するか、この上限に達した時点で中断されます。

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の説明に従って、脆弱性は非公開で報告してください。

リリースとレジストリ

リリースワークフローはバージョンタグから実行され、公開前にパッケージ、不変のコーパスメタデータ、レジストリメタデータ、パックの許可リストを確認します。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に保持されています。

ソース

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。