MCP Document Server について
プラグイン可能なサービスを通じて、ドキュメントの検索、取得、作成を行う MCP サーバーです。Cursor などの MCP クライアント向けで、ローカルの Markdown・HTML と Confluence ワークスペースに対応します。
主な機能
- 01セマンティックなドキュメント検索
- 02ドキュメントの取得と作成
- 03ローカルの Markdown・HTML 保存
- 04Confluence ワークスペース検索
- 05プラグイン可能なドキュメントサービス
活用シーン
- 01Cursor からキーワードでドキュメントを検索
- 02ローカルストレージにドキュメントを作成
- 03Confluence ワークスペースを検索
MCP 対応
`search` や `create_document` などのツールを通じて、MCP クライアントにドキュメント検索と作成機能を提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Document Server
ドキュメントの検索と取得を行う、Model Context Protocol(MCP)を実装したシンプルなサーバーです。
機能
- MCP を使用したドキュメントの保存と取得
- セマンティック検索機能
- Cursor やその他の MCP クライアントとの互換性
- プラグイン可能なドキュメントサービスアーキテクチャ:
- JSON を使用したローカルドキュメントストレージ
- ワークスペース内のドキュメント検索に対応する Confluence 連携
- HTML のサポート
セットアップ
- 依存関係をインストールします:
npm install
- TypeScript コードをビルドします:
npm run build
- サーバーを起動します:
npm run stdio
Cursor での使用
このサーバーは Cursor での使用を想定して設計されています。キーワードパラメーターを指定して、search ツールでドキュメントを検索できます。
例:
search({
keyword: "data"
})
ドキュメントの作成
Cursor から新しいドキュメントを直接作成できます:
create_document({
title: "New Confluence Page",
content: "This is a page created in Confluence",
serviceId: "confluence"
})
ドキュメントサービス
このアーキテクチャは、プラグイン可能なドキュメントサービスを基盤としています。各サービスは、ドキュメントの検索と取得に共通のインターフェースを実装します。
ローカルストレージサービス
ローカルストレージサービスは、ローカルのファイルシステムにドキュメントを保存します:
- ドキュメントは
data/documents/ディレクトリに保存されます(必要に応じて自動作成されます) - メタデータは
data/documents.jsonに保存されます(必要に応じて自動作成されます) - ドキュメントの内容には Markdown と HTML の両方の形式をサポートします
Confluence サービス
Confluence サービスは、Confluence REST API と CQL(Confluence Query Language)を使用して、Confluence ワークスペース内のドキュメントを強力に検索します。この機能を有効にするには、次の環境変数を設定します:
# Confluence configuration
export CONFLUENCE_BASE_URL="https://your-domain.atlassian.net/wiki"
export CONFLUENCE_USERNAME="[email protected]"
export CONFLUENCE_API_TOKEN="your-api-token"
export CONFLUENCE_SPACE="your-space-key"
サーバーの起動前に、これらの変数を設定できます:
CONFLUENCE_BASE_URL="https://your-domain.atlassian.net/wiki" \
CONFLUENCE_USERNAME="[email protected]" \
CONFLUENCE_API_TOKEN="your-api-token" \
CONFLUENCE_SPACE="your-space-key" \
npm run stdio
認証の詳細
このサービスは、メールアドレスと API トークンを使用した Basic 認証を使用します。認証情報は、Base64 エンコードされた文字列として Authorization ヘッダーで送信されます:
Authorization: Basic <base64-encoded-email:token>
ドキュメントの管理
ローカルストレージサービスは、初回使用時に data/documents ディレクトリと data/documents.json ファイルを自動的に作成します。これらのファイルはリポジトリには含まれておらず、必要に応じて生成されます。
サーバーの拡張
新しいドキュメントサービスの追加
この MCP サーバーは、拡張性を考慮して設計されています。DocumentService インターフェースを実装することで、新しいドキュメントサービスを簡単に追加できます:
interface DocumentService {
id: string;
getByKeywords: (keywords: string[]) => Promise<Document[]>;
createDocument?: (title: string, content: string) => Promise<Document>;
}
新しいサービスを追加するには:
- サービス用の新しいディレクトリを
src/services/に作成します DocumentServiceインターフェースを実装します- サービスを
src/services/index.tsに登録します
実装できるドキュメントサービスの例:
- Google Drive:ドキュメントの保存と取得のために Google Drive API に接続します
- OneDrive/SharePoint:Microsoft のドキュメントサービスと連携します
- Notion:Notion ワークスペースのサポートを追加します
- GitHub Wiki:ドキュメント作成のために GitHub Wiki に接続します
- カスタムデータベース:SQL または NoSQL データベースにドキュメントを保存します
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。