mcpField
D
Docs MCP Server

Docs MCP Server

ローカル
probeai.devメモリ・ナレッジ9254 週間前に更新

Docs MCP Server について

Docs MCP Server は、Probe 検索エンジンを基盤とする MCP サーバーで、ドキュメントやコードベースを AI アシスタントから検索できるようにします。ローカルディレクトリや Git リポジトリを内容源に指定でき、テンプレートとして専用のサーバーを構築することもできます。

主な機能

  1. 01Probe 検索エンジンによる検索
  2. 02ローカルディレクトリと Git リポジトリを内容源に指定
  3. 03ビルド時にコンテンツをパッケージへ同梱
  4. 04実行時の内容源とツールの設定
  5. 05設定間隔による Git の定期更新

活用シーン

  1. 01GitHub リポジトリの内容を自然言語で照会
  2. 02プロジェクトドキュメントの検索機能の提供
  3. 03テンプレートを使った専用ドキュメント MCP サーバーの構築

MCP 対応

本プロジェクトは MCP サーバーであり、名前と説明を設定可能な検索ツールを MCP クライアントに公開します。query と page のパラメーターを受け取ります。

設定

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

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

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

パッケージ
npm@probelabs/docs-mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Docs MCP Server

Probe を活用した柔軟な Model Context Protocol(MCP)サーバーです。AI アシスタントがあらゆるドキュメントやコードベースを検索できるようにします。

Git リポジトリまたはフォルダーを指定するだけで、コードやドキュメントとチャットできます。

npx -y @probelabs/docs-mcp@latest --gitUrl https://github.com/probelabs/probe

ユースケース:

  • 任意の GitHub リポジトリとチャットする: パブリックまたはプライベートの Git リポジトリをサーバーに指定すると、その内容について自然言語で問い合わせられるようになります。
  • ドキュメントを検索する: プロジェクトのドキュメント(ローカルディレクトリまたは Git)を統合して、簡単に検索できるようにします。
  • カスタム MCP サーバーを構築する: このプロジェクトをテンプレートとして使用し、特定のドキュメントセットやコードベースに合わせた独自の公式 MCP サーバーを作成できます。

コンテンツソース(ドキュメントまたはコード)は、npm run build ステップ中にパッケージに事前ビルドすることも、ローカルディレクトリや Git リポジトリを使用して実行時に動的に設定することもできます。デフォルトでは、自動更新を有効にせずに gitUrl を使用すると、起動を速くするためにサーバーは .tar.gz アーカイブをダウンロードします。Git の完全なクローンは、autoUpdateInterval が 0 より大きい場合にのみ使用されます。

機能

  • Probe を活用: Probe 検索エンジンを活用し、効率的で関連性の高い結果を提供します。
  • 柔軟なコンテンツソース: 特定のローカルディレクトリを指定するか、Git リポジトリをクローンできます。
  • コンテンツの事前ビルド: ドキュメントやコードのコンテンツをパッケージに直接バンドルできます。
  • 動的な設定: 設定ファイル、CLI 引数、または環境変数を使って、コンテンツソース、Git 設定、MCP ツールの詳細を設定できます。
  • Git の自動更新: 設定可能な間隔で Git リポジトリから変更を自動取得し、コンテンツを最新の状態に保ちます。
  • カスタマイズ可能な MCP ツール: AI アシスタントに公開する検索ツールの名前と説明を定義できます。
  • AI との統合: Model Context Protocol(MCP)をサポートする AI アシスタントとシームレスに統合できます。

インストール

Claude Desktop ですぐに始める

macOS の場合、Claude Desktop の設定ファイル(~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "docs-search": {
      "command": "npx",
      "args": [
        "-y",
        "@probelabs/docs-mcp@latest",
        "--gitUrl",
        "https://github.com/your-org/your-repo",
        "--toolName",
        "search_docs",
        "--toolDescription",
        "Search documentation"
      ]
    }
  }
}
MCP クライアントとの統合

MCP クライアントが npx を使用してこのサーバーを起動するように設定できます。以下は、クライアントの設定例です(構文は使用するクライアントによって異なる場合があります)。

例 1:Git リポジトリを動的に検索する(Tyk Docs)

この設定では、クライアントが npx を使って最新の @probelabs/docs-mcp パッケージを実行し、Tyk ドキュメントのリポジトリを動的に指定します。-y 引数は、npx のインストール確認プロンプトに自動で応答します。--toolName および --toolDescription 引数を使って、AI アシスタントに表示される検索ツールをカスタマイズできます。

{
  "mcpServers": {
    "tyk-docs-search": {
      "command": "npx",
      "args": [
        "-y",
        "@probelabs/docs-mcp@latest",
        "--gitUrl",
        "https://github.com/TykTechnologies/tyk-docs",
        "--toolName",
        "search_tyk_docs",
        "--toolDescription",
        "Search Tyk API Management Documentation"
      ],
      "enabled": true
    }
  }
}

また、クライアントによっては、コマンド全体を直接指定できる場合があります。例 1 と同じ設定を次のように行えます。

npx -y @probelabs/docs-mcp@latest --gitUrl https://github.com/TykTechnologies/tyk-docs --toolName search_tyk_docs --toolDescription "Search Tyk API Management Documentation"

例 2:事前ビルド済みのブランド化された MCP サーバーを使用する(例:Tyk パッケージ)

特定のドキュメントを含む事前ビルド済みパッケージ(@tyk-technologies/docs-mcp など)をチームが公開している場合、コンテンツソースとツールの詳細がパッケージに組み込まれているため、設定がより簡単になります。npx には引き続き -y 引数の使用をおすすめします。

{
  "mcpServers": {
    "tyk-official-docs": {
      "command": "npx",
      "args": [
        "-y",
        "@tyk-technologies/docs-mcp@latest"
      ],
      "enabled": true
    }
  }
}

この方法は、公式ドキュメントやコードベース向けに標準化された検索体験を配布するのに最適です。詳しくは、以下の「独自の事前ビルド済み MCP サーバーを作成する」セクションをご覧ください。

Tyk チームが独自のドキュメント MCP サーバーを構築した例はこちらです:https://github.com/TykTechnologies/docs-mcp。

設定

ルートディレクトリに docs-mcp.config.json ファイルを作成し、ビルド時および実行時に使用するデフォルトのコンテンツソースと MCP ツールの詳細を定義します(CLI 引数または環境変数で上書きされない場合)。

例 1:ローカルディレクトリを使用する
{
  "includeDir": "/Users/username/projects/my-project/docs",
  "toolName": "search_my_project_docs",
  "toolDescription": "Search the documentation for My Project.",
  "ignorePatterns": [
    "node_modules",
    ".git",
    "build",
    "*.log"
  ]
}
例 2:Git リポジトリを使用する
{
  "gitUrl": "https://github.com/your-org/your-codebase.git",
  "gitRef": "develop",
  "autoUpdateInterval": 15,
  "toolName": "search_codebase",
  "toolDescription": "Search the main company codebase.",
  "ignorePatterns": [
    "*.test.js",
    "dist/",
    "__snapshots__"
  ]
}
設定オプション
  • includeDir: (ビルド/実行時) 内容をビルド時に data ディレクトリへコピーするローカルディレクトリの絶対パスです。または、dataDir が指定されていない場合、実行時に直接使用されます。gitUrl とのどちらか一方を使用してください。
  • gitUrl: (ビルド/実行時) Git リポジトリの URL です。includeDir とのどちらか一方を使用してください。
    • autoUpdateInterval が 0(デフォルト)の場合、サーバーは .tar.gz アーカイブを直接ダウンロードしようとします(現在は GitHub の URL 構造 https://github.com/{owner}/{repo}/archive/{ref}.tar.gz を前提としています)。こちらのほうが高速ですが、更新には対応していません。
    • autoUpdateInterval が 0 より大きい場合、サーバーは git clone を実行し、定期的な更新を有効にします。
  • gitRef: (ビルド/実行時) gitUrl で使用するブランチ、タグ、またはコミットハッシュです(デフォルト:main)。tarball のダウンロードと Git のクローン/プルの両方で使用されます。
  • autoUpdateInterval: (実行時) Git の更新を自動確認する間隔(分)です(デフォルト:0、つまり無効)。0 より大きい値を設定すると、Git のクローンと定期的な git pull 操作が有効になります。システムのパスから git コマンドを実行できる必要があります。
  • dataDir: (実行時) 実行時に検索するコンテンツを含むディレクトリのパスです。設定ファイルで定義された、またはパッケージに組み込まれた includeDir や gitUrl のコンテンツを上書きします。再ビルドせずに、サーバーから最新のデータを参照する場合に便利です。
  • toolName: (ビルド/実行時) サーバーが公開する MCP ツールの名前です(デフォルト:search_docs)。コンテンツに関連する、わかりやすい名前を選んでください。
  • toolDescription: (ビルド/実行時) AI アシスタントに表示される MCP ツールの説明です(デフォルト:"probe 検索エンジンを使用してドキュメントを検索します。")。
  • ignorePatterns: (ビルド/実行時) glob パターンの配列です。
  • enableBuildCleanup: (ビルド) true(デフォルト)の場合、ビルド手順の後に、一般的なバイナリ/メディアファイル(画像、動画、アーカイブなど)と 100KB を超えるファイルを data ディレクトリから削除します。このクリーンアップを無効にするには、false に設定してください。
    • ビルド時に includeDir を使用する場合:これらのパターンに一致するファイルは、data へのコピー時に除外されます。.gitignore のルールも適用されます。
    • 実行時に gitUrl または dataDir を使用する場合:data ディレクトリ内でこれらのパターンに一致するファイルは、検索インデクサーによって無視されます。

優先順位:

  1. 実行時設定(最優先): CLI 引数(--dataDir、--gitUrl など)と環境変数(DATA_DIR、GIT_URL など)は、他のすべての設定を上書きします。CLI 引数は環境変数より優先されます。
  2. ビルド時設定: docs-mcp.config.json(includeDir、gitUrl、toolName など)の設定は、npm run build で使用するデフォルト値を定義し、上書きされない場合は実行時のデフォルト値としても使用されます。
  3. デフォルト値(最優先度): 設定が指定されていない場合は、内部デフォルト値が使用されます(例:toolName: 'search_docs'、autoUpdateInterval: 5)。

注:同じ設定元(例:設定ファイル内、または CLI 引数)で includeDir と gitUrl の両方が指定されている場合は、gitUrl が優先されます。

独自のビルド済み MCP サーバーの作成

このプロジェクトをテンプレートとして使用し、ドキュメントやコードをあらかじめ組み込んだ独自の npm パッケージを作成して公開できます。これにより、ユーザーは設定不要で利用できます(上記の例 2 のようになります)。

  1. このリポジトリをフォーク/クローンします: このプロジェクトのコードをベースにします。
  2. docs-mcp.config.json を設定します: コンテンツのソースを指す includeDir または gitUrl を定義します。デフォルトの toolName と toolDescription を設定します。
  3. package.json を更新します: name(例:@my-org/my-docs-mcp)、version、description などを変更します。
  4. ビルドします: npm run build を実行します。コンテンツが data ディレクトリにクローン/コピーされ、パッケージが使用できる状態になります。
  5. 公開します: npm publish を実行します(npm の認証設定が必要です)。

これで、ユーザーは独自のドキュメントサーバーを簡単に実行できます:npx @my-org/my-docs-mcp@latest。

(クライアント設定内の引数を使用した npx の使い方が、現在、主なドキュメント記載方法となったため、以前の「実行」、「実行時の動的設定」、「環境変数」のセクションは削除されました。)

AI アシスタントでの使用

この MCP サーバーは、Model Context Protocol を通じて、接続された AI アシスタントに検索ツールを公開します。ツールの名前と説明は設定可能です(「設定」セクションを参照)。現在アクティブな data ディレクトリ(ビルド設定、設定ファイル、CLI 引数、または環境変数によって決定)内のコンテンツを検索します。

ツールのパラメーター:

  • query:検索対象を説明する自然言語のクエリまたはキーワード(例:「ゲートウェイの設定方法」、「データベース接続の例」、「ユーザー認証」)。サーバーは Probe の検索機能を使用して、関連するコンテンツを検索します。(必須)
  • page:一致する結果が多数ある場合のページ番号です。省略した場合のデフォルトは 1 です。(任意)

ツール呼び出しの例(使用例 1 の search_tyk_docs を使用):

{
  "tool_name": "search_tyk_docs",
  "arguments": {
    "query": "gateway rate limiting",
    "page": 1 // Requesting the first page
  }
}

ツール呼び出しの例(@tyk/docs-mcp パッケージのツールを使用):

ビルド済みパッケージ @tyk/docs-mcp で、ツール名が search_tyk_official_docs と定義されているとします:

{
  "tool_name": "search_tyk_official_docs",
  "arguments": {
    "query": "dashboard api access",
    "page": 2 // Requesting the second page
  }
}

(以前の「npm パッケージとして公開する」セクションは、上記の「独自のビルド済み MCP サーバーの作成」セクションに置き換えられました。)

サードパーティとの連携

Smithery 経由でインストール

Smithery 経由で Claude Desktop に Docs MCP Server を自動的にインストールするには:

npx -y @smithery/cli install @probelabs/docs-mcp --client claude

smithery バッジ

コミュニティの掲載情報
Docs Server MCP server

MseeP.ai Security Assessment Badge

GitHub Actions による NPM リリースの自動化

このプロジェクトには、MCP サーバーを NPM に簡単にリリースできる、再利用可能な GitHub Actions ワークフローが含まれています。このワークフローはどのプロジェクトでも使用でき、git タグをプッシュしたときに MCP サーバーを自動的にビルドして公開できます。

再利用可能なリリースワークフローの使用

この自動リリースシステムを独自のプロジェクトで使用するには、単一のファイル .github/workflows/release.yml を作成します:

name: Release MCP

on:
  push:
    tags:
      - 'v*'

jobs:
  release:
    uses: probelabs/docs-mcp/.github/workflows/release-mcp.yml@main
    with:
      package-name: '@yourorg/your-mcp-server'
      package-description: 'Your MCP Server Description'
      include-folders: 'src,data,bin'  # Folders to include in the package
      include-files: '*.json,*.md'     # File patterns to include
    secrets:
      NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

次に、git タグを作成するだけでリリースが開始されます:

git tag v1.0.0
git push origin v1.0.0
ワークフローの入力パラメーター
パラメーター必須デフォルト説明
package-nameはい-NPM パッケージ名(例:@org/my-mcp)
package-descriptionいいえMCP Serverパッケージの説明
entry-pointいいえsrc/index.jsメインのエントリーファイルのパス
include-foldersいいえsrc,data,bin含めるフォルダーのカンマ区切りリスト
include-filesいいえ*.json,*.md,LICENSE含めるファイルパターンのカンマ区切りリスト
dependenciesいいえ{}JSON 文字列で指定する追加の依存関係
build-commandいいえ-公開前に実行するビルドコマンド
node-versionいいえ18使用する Node.js のバージョン
設定例
最小限の設定
jobs:
  release:
    uses: probelabs/docs-mcp/.github/workflows/release-mcp.yml@main
    with:
      package-name: '@myorg/simple-mcp'
    secrets:
      NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
カスタム依存関係を指定する場合
jobs:
  release:
    uses: probelabs/docs-mcp/.github/workflows/release-mcp.yml@main
    with:
      package-name: '@myorg/custom-mcp'
      dependencies: '{"lodash": "^4.17.21", "dotenv": "^16.0.0"}'
    secrets:
      NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
ビルドステップを含める場合
jobs:
  release:
    uses: probelabs/docs-mcp/.github/workflows/release-mcp.yml@main
    with:
      package-name: '@myorg/built-mcp'
      build-command: 'npm run build && npm run prepare-data'
      include-folders: 'dist,assets'
    secrets:
      NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
前提条件
  1. GitHub リポジトリに NPM_TOKEN シークレットを追加します(Settings → Secrets → Actions)
  2. 組織またはスコープの npm 公開権限があることを確認します

ワークフローでは、次の処理が自動的に行われます。

  • Git タグからバージョンを抽出します(例:v1.0.0 → 1.0.0)
  • MCP の依存関係を含む完全な package.json を生成します
  • オプションのビルドコマンドを実行します
  • パブリックアクセスで NPM に公開します

ライセンス

MIT

コメント

MCP は初めてですか?

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

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