arabold/docs-mcp-server
Grounded Docs MCP Server: Open-Source Alternative to Context7, Nia, and Ref.Tools
Docs MCP Server とは?
Grounded Docs MCP Server は、任意のコードライブラリやフレームワークのドキュメントについて、検索可能でバージョン指定可能なインデックスを構築するオープンソースツールです。公式サイト、GitHubリポジトリ、npm / PyPIパッケージ、ローカルフォルダ、またはZIPアーカイブから最新のドキュメントを取得し、プレーンテキスト/Markdownに変換します。さらに(オプションで)ベクトル埋め込みを保存することで、言語モデルが必要な正確な文章を取得できるようにします。このサーバーはローカルで実行され、Claude、Cline、Copilot、Gemini‑CLIなど、AIコーディングアシスタントがクエリできるシンプルな MCP(Message‑Stream‑Endpoint)APIを公開します。
なぜ重要なのか
- 幻覚の低減 – LLMは推測するのではなく、実際の最新ドキュメントから回答します。
- バージョン対応 – プロジェクトが依存している正確なライブラリバージョンをインデックス化できます。
- プライベートかつローカル – すべての処理はあなたのマシン上で行われ、コードやドキュメントはネットワーク外に流出しません。
- 広範なフォーマット対応 – PDF、Officeファイル、Markdown、Jupyterノートブック、90種類以上のソースコード言語が自動的に解析されます。
- 既存のAIツールとの即時連携 – 任意のMCP互換クライアント(Claude、Cline、VS Code拡張機能など)と連携可能です。
コア機能(READMEに記載)
| 機能 | 説明 |
|---|---|
| CLI優先ワークフロー | scrape、search、fetch-url コマンドにより、スクリプトやエージェントがドキュメントをインデックス化、意味的検索を実行、および生のページを取得できます。 |
| Web UI | http://localhost:6280 でアクセス可能。ブラウザからドキュメントを追加、インデックスを表示、設定を管理できます。 |
| MCPサーバー | 長期間実行されるSSEエンドポイント(/sse)で、AIクライアントが設定ファイル内で指定できます。 |
| 埋め込みサポート | オプションのベクトル埋め込み(OpenAI、Ollama、Gemini、Azureなど)により、意味的検索の品質が向上します。 |
| Dockerイメージ | 隔離されたデプロイ用の公式コンテナ(ghcr.io/arabold/docs-mcp-server:latest)が利用可能です。 |
| ハッシュルーティングSPA対応 | --preserve-hashes フラグ(またはUIのチェックボックス)により、スクレイパーがURLフラグメントを保持し、必要に応じてクライアントサイドレンダリングのためにPlaywrightにフォールバックします。 |
| Markdown優先クローリング | Accept: text/markdown ヘッダーを送信。サイトが直接Markdownを提供できる場合、HTMLからMarkdownへの変換をスキップします。 |
| 広範なフォーマットリスト | PDF、Word/Excel/PowerPoint、OpenDocument、RTF、EPUB、Jupyterノートブック、アーカイブ、HTML、Markdownのバリエーション、多数のプログラミング言語、設定ファイル、データフォーマットなど。 |
| 認証とセキュリティ | OAuth2/OIDCサポートと、本番環境デプロイ用のハードニングガイドがドキュメントに記載されています。 |
クイックスタートガイド(READMEより)
- インストール/実行 – 永続的なインストールは不要。Node 22+ の
npxを使用:
またはDockerコンテナを実行:npx @arabold/docs-mcp-server@latest # サーバーとUIを起動docker run --rm -v docs-mcp-data:/data -v docs-mcp-config:/config \ -p 6280:6280 ghcr.io/arabold/docs-mcp-server:latest \ --protocol http --host 0.0.0.0 --port 6280 - ドキュメントソースのインデックス化(CLI例):
ハッシュベースのSPAドキュメントにはnpx @arabold/docs-mcp-server@latest scrape react https://react.dev/reference/react--preserve-hashesを追加します。 - インデックスの検索:
npx @arabold/docs-mcp-server@latest search react "useEffect cleanup" --output yaml - AIクライアントの接続 – クライアントのMCP設定にサーバーを追加。例:Claude Desktopの場合
{ "mcpServers": { "docs-mcp-server": { "type": "sse", "url": "http://localhost:6280/sse" } } } - (オプション)埋め込みの有効化 – サーバー起動前に
OPENAI_API_KEY(または他のプロバイダの環境変数)を設定すると、意味的検索が可能になります。
どんな人が使うべきか?
- AIアシスタント付きのコーディングツールを開発する 開発者。
- 内部ライブラリ用のプライベートでバージョンロックされた知識ベースを望む チーム。
- 検索拡張生成(RAG)パイプラインを実験する 研究者。
- Claude、Cline、Copilot、Gemini‑CLIなどに即座に使えるMCPエンドポイントが必要な ツール開発者。
詳細情報の入手先
- インストールと設定 –
docs/setup/installation.md - クライアントの接続 –
docs/guides/mcp-clients.md - 埋め込みモデルの設定 –
docs/guides/embedding-models.md - 対応フォーマット一覧 –
docs/concepts/supported-formats.md - アーキテクチャ概要 –
ARCHITECTURE.md - 貢献ガイド –
CONTRIBUTING.md
ライセンス
MIT – 無料で使用、変更、再配布可能です。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト