mcpField
D
Documentation Hub MCP Server

Documentation Hub MCP Server

ローカル
github.com/deep-poharkarメモリ・ナレッジ082 週間前に更新

Documentation Hub MCP Server について

React、Node.js、Python のドキュメントを探す AI クライアント向けの、ドキュメント検索 MCP サーバーです。分野を判定してトピックを抽出し、対象 URL を組み立てて関連内容を取得します。

主な機能

  1. 01技術分野の判定
  2. 02クエリからトピックを抽出
  3. 03対象を絞ったドキュメント URL の構築
  4. 04複数分野のドキュメント取得
  5. 05他分野への対応拡張

活用シーン

  1. 01React の特定トピックのドキュメント検索
  2. 02Node.js の技術資料の取得
  3. 03Python ドキュメントの検索
  4. 04技術的な質問を該当ページに対応付け

MCP 対応

互換クライアントに分野判定、トピック抽出、ドキュメント取得のツールを公開し、React、Node.js、Python、および一般ドキュメントのリソースを提供します。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

ドキュメントハブ MCP サーバー

複数の技術分野からインテリジェントにドキュメントを取得するための、Model Context Protocol(MCP)サーバーです。

概要

このプロジェクトは、技術的な質問に対して対象を絞ったドキュメント取得を提供する MCP サーバーを実装しています。次の処理を行うために、ハイブリッド方式を採用しています。

  1. 質問の技術分野(React、Node.js、Python)を特定する
  2. 質問から具体的なトピックを抽出する
  3. 適切なドキュメント URL を構築する
  4. 最も関連性の高いドキュメントを取得して返す

このサーバーは TypeScript と MCP SDK を使用して構築されており、AI モデルがドキュメントリソースにアクセスするための標準インターフェースを提供します。

機能

  • 分野の分類:質問が React、Node.js、Python、または一般的なトピックのどれについてかを自動的に特定します
  • トピックの抽出:正規表現パターンマッチングを使用して、質問内の具体的な技術概念を特定します
  • URL の構築:特定したトピックに基づいて、対象を絞ったドキュメント URL を作成します
  • 複数のドキュメントソース:React、Node.js、Python のドキュメントに対応しており、他の分野にも拡張できます
  • 標準インターフェース:Model Context Protocol を実装し、MCP 対応クライアントとの相互運用性を実現します

インストール

# Clone the repository
git clone https://github.com/yourusername/mcp-server.git
cd mcp-server

# Install dependencies
npm install

# Build the project
npm run build

使い方

サーバーの実行
node build/index.js
トピック抽出のテスト

このプロジェクトには、トピックの抽出と URL の構築の仕組みを示すテストスクリプトが含まれています。

# Build the test script
npx tsc src/test.ts --outDir build

# Run the test
node build/test.js
クライアントとの統合

このサーバーは、MCP 対応クライアントであればどれとでも統合できます。クライアントがサーバーとやり取りする方法の例を以下に示します。

// Example client code (not included in this project)
const client = new McpClient();
const result = await client.callTool("fetch-documentation", {
  query: "How do I use useState hook in React?",
});

console.log(result);
// Output: {
//   domain: "react-docs",
//   topics: ["useState", "state"],
//   specificUrl: "https://react.dev/reference/react/useState",
//   content: "...",
//   source: "https://react.dev/reference/react/useState"
// }

プロジェクト構成

  • src/index.ts - メインのサーバー実装
  • src/test.ts - トピックの抽出と URL の構築を行うテストスクリプト
  • build/ - コンパイル済み JavaScript の出力先
  • package.json - プロジェクトの設定と依存関係

利用可能なツール

サーバーは次のツールを公開します。

determine-domain

質問がどの技術分野に属するかを特定します。

{
  query: string; // The user query to classify
}

戻り値:

{
  domain: string; // The identified domain
  confidence: string; // "high" or "low"
}
extract-topics

指定された分野について、質問から具体的なトピックを抽出します。

{
  query: string; // The user query to analyze
  domain: string; // The technical domain to extract topics for
}

戻り値:

{
  topics: string[]; // Array of identified topics
  count: number; // Number of topics found
}
fetch-documentation

質問と分野に基づいてドキュメントを取得します。

{
  query: string; // The user query
  domain?: string; // Optional domain override
}

戻り値:

{
  domain: string; // The identified domain
  topics: string[]; // Array of identified topics
  specificUrl: string | null; // The constructed URL if available
  content: string; // The fetched documentation content
  source: string; // The source URL
}

利用可能なリソース

サーバーは次のドキュメントリソースを提供します。

  • react-docs - React.js のドキュメント
  • node-docs - Node.js のドキュメント
  • python-docs - Python のドキュメント
  • general - 分野が明確でない場合の一般的なドキュメント

サーバーの拡張

新しい分野の追加

新しい技術分野への対応を追加するには、次の手順に従います。

  1. determineDomain 関数内の domainKeywords オブジェクトに分野のキーワードを追加します
  2. extractTopics 関数内の topicPatterns オブジェクトにトピックのパターンを追加します
  3. constructSpecificUrl 関数に URL の構築ロジックを追加します
  4. サーバー設定に新しいリソースハンドラーを追加します
トピック抽出の改善

トピック抽出は、次の方法で改善できます。

  1. 既存のトピックの正規表現パターンを強化する
  2. 既存の分野に新しいトピックを追加する
  3. トピック抽出のための、より高度な NLP 技術を実装する

ライセンス

MIT

コントリビューション

コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。

コメント

MCP は初めてですか?

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

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