MTA:SA Documentation MCP Server について
MTA:SA Documentation MCP Serverは、Multi Theft Auto: San AndreasのドキュメントをAIアシスタントが構造化して利用できるようにします。キーワード検索とセマンティック検索、ローカルSQLiteキャッシュを組み合わせ、イベント検索や非推奨警告にも対応します。
主な機能
- 01キーワード検索とセマンティック検索
- 02イベント優先の探索
- 03タスクに応じたAPI検索
- 04SQLiteベースのドキュメントキャッシュ
- 05非推奨警告
活用シーン
- 01タスクに合うMTA:SA関数の検索
- 02ワークフローに関係するイベントの特定
- 03APIドキュメントと例の取得
- 04キャッシュされたドキュメント状態の確認
MCP 対応
ドキュメントの検索と取得、キャッシュ管理、ドキュメント利用手順の提案を行う11個のMCPツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
11掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| side | enum | いいえ | クライアント側、サーバー側、または共有関数で絞り込みますclient | server | shared |
| limit | integer | いいえ | 結果の最大件数 |
| query | string | はい | 検索する関数名またはその一部 |
詳細
MTA:SA ドキュメント MCP サーバー
AI アシスタントが Multi Theft Auto: San Andreas のドキュメントに、信頼性の高い構造化された方法でアクセスできるようにする MCP(Model Context Protocol)サーバーです。
高速なキーワード検索、セマンティックマッチング、SQLite ベースのキャッシュを組み合わせているため、エージェントは手作業で wiki をスクレイピングすることなく、適切な API を見つけて、信頼できるドキュメントを取得できます。
主な機能
- 検索、ドキュメント取得、キャッシュ操作、ワークフローのガイダンスを行う 11 個の MCP ツール
- イベントを優先した検索(
search_events、find_events_for_task) - SQLite のベクトル検索によるセマンティックなタスクマッチング
- キーワードのスマートな拡張(例:
database→db*API) - 非推奨の検出と警告を内蔵
- 有効期間を設定できるローカル SQLite キャッシュ
- CI 検証ゲート、スモークテスト、リリースの自動化
インストール
必要条件:
- Node.js 24+
- Bun 1.3+(ランタイムとしては任意)
- pnpm 10+(ローカル開発用)
ランチャーに関する注意:
npx、pnpx、bunx、または yarn dlx 形式の方法で起動/インストールできます。- ランタイムは複数に対応しています。Node.js(
node:sqlite経由)と Bun(bun:sqlite経由)をサポートしています。
npm からインストール(推奨)
npm install -g mtasa-docs-mcp
または:
pnpm add -g mtasa-docs-mcp
クイックインストール
ソースからインストール
git clone https://github.com/Luminaire1337/mtasa-docs-mcp.git
cd mtasa-docs-mcp
pnpm install
pnpm build
環境でオプションのネイティブ依存関係がスキップされる場合は、次を実行してください。
pnpm install --force
MCP クライアントの設定
Cursor(手動)
グローバル:~/.cursor/mcp.json
プロジェクト:.cursor/mcp.json
{
"mcpServers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}
VS Code(手動)
ワークスペース:.vscode/mcp.json
ユーザー:コマンドパレット -> MCP: Open User Configuration
{
"servers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}
または、ターミナルから追加します。
code --add-mcp "{\"name\":\"mtasa-docs\",\"command\":\"npx\",\"args\":[\"-y\",\"mtasa-docs-mcp\"]}"
Claude Code(CLI)
claude mcp add-json mtasa-docs '{"type":"stdio","command":"npx","args":["-y","mtasa-docs-mcp"]}'
OpenCode(手動)
グローバル設定ファイル:~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mtasa-docs": {
"type": "local",
"command": ["npx", "-y", "mtasa-docs-mcp"],
"enabled": true
}
}
}
Antigravity(手動)
設定ファイル:~/.gemini/antigravity/mcp_config.json
{
"mcpServers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}
汎用 MCP クライアント(手動)
{
"mcpServers": {
"mtasa-docs": {
"command": "node",
"args": ["/absolute/path/to/mtasa-docs-mcp/build/index.js"]
}
}
}
mtasa-docs-mcp がすでに公開されている場合は、コマンドを次のように置き換えてください。
{
"mcpServers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}
利用可能なツール
search_functionssearch_eventsfind_functions_for_taskfind_events_for_taskget_function_docsget_multiple_function_docsget_function_exampleslist_functions_by_categoryget_cache_statsrecommend_doc_workflowclear_cache
開発
pnpm build
pnpm test
pnpm test:runtime
pnpm smoke
pnpm smoke:cross-runtime
pnpm verify
pnpm verify:full
便利なチェック:
pnpm check:versions-package.jsonと MCP サーバーのバージョンが一致していることを確認しますpnpm check:changelog-CHANGELOG.mdに現在のリリース見出しがあることを確認しますpnpm check:tool-names- 古いツール名への意図しない回帰を防ぎますpnpm test:runtime- Node と Bun のスモークテスト経路に対する統合ランタイムテストを実行しますpnpm smoke:cross-runtime- Node と Bun の両方のランタイムでスモークチェックを実行します
スクリプトは scripts/(ビルド、スモークテスト、リリースガード)にあります。
リリースフロー
リリースの自動化は .github/workflows/release.yml で行います。
package.jsonとsrc/index.tsのバージョンを更新します。Unreleasedのリリースノートを、## [x.y.z] - YYYY-MM-DD形式のバージョン付きセクションに移動します。CHANGELOG.mdを使用してください。- リリースタグを作成してプッシュします:
git tag v<version> && git push origin v<version>。
ブランチ運用方針:
v1.0.0より前:masterへの直接プッシュが許可されています。v1.0.0以降:masterへのすべての変更で PR ベースの開発を使用してください。
リリースタグ(v*.*.*)をプッシュすると、リリースワークフローは次を実行します。
- バージョンがすでに npm に存在するか確認します
pnpm verify:fullを実行します- 信頼されたパブリッシング(OIDC)を使用して、来歴情報付きで npm に公開します
- GitHub OIDC を使用して、
server.jsonを MCP Registry に公開します CHANGELOG.mdから GitHub Release を作成/更新します- 公開されたパッケージをインストールできることを検証し、スモークテストを実行します
npm の信頼済みパブリッシングに関するメンテナーの設定
npm パッケージの設定で、このリポジトリとワークフローの信頼済みパブリッシャーを設定します。
- リポジトリ:
Luminaire1337/mtasa-docs-mcp - ワークフローファイル:
.github/workflows/release.yml - 環境(使用する場合):GitHub Actions の設定に合わせます
MCP Registry への公開に関するメンテナーの設定
- リポジトリのルートに
server.jsonがあり、次のパッケージ名が設定されていることを確認します。mtasa-docs-mcp io.github.Luminaire1337/mtasa-docs-mcpの MCP Registry オーナーシップを設定します- リリースワークフローでは
mcp-publisher login github-oidcを使用し、npm の公開ゲートを通過した場合にのみ公開します
CI ワークフロー
.github/workflows/ci.yml-masterへの push/PR 時の検証(Ubuntu と macOS)、およびラベル付き PR でのオプションのライブ Wiki 統合テスト.github/workflows/release.yml- リリースタグ(v*.*.*)での自動公開と GitHub リリース
プロジェクトのドキュメント
AGENTS.md- アーキテクチャとコントリビューター向けガイドFEATURES.md- ロードマップとアイデアCHANGELOG.md- リリース履歴SECURITY.md- 脆弱性の開示ポリシー
ライセンス
GNU General Public License v3.0。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
