📚 Wiki MCP Server について
Wiki MCP Serverは、チームがMCPサーバー経由でConfluenceのWikiページを管理するためのものです。ページ編集とキーワード検索に対応し、クエリから利用するConfluenceナレッジベースを推定します。
主な機能
- 01ページの作成・更新・削除
- 02キーワードによるページ検索
- 03クエリからConfluenceのWiki種別を推定
- 04Wiki種別の手動指定
活用シーン
- 01選択したWikiにページを作成
- 02既存ページの修正や削除
- 03キーワードに合うページの検索
MCP 対応
ConfluenceのWikiページ操作に使うMCPツール、プロンプト、リソースを提供します。MCPクライアントからページの作成、更新、削除、検索を行えます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
📚 Wiki MCP サーバー
Confluence wiki ページを管理するための MCP(Model Context Protocol)サーバー実装です。
次の機能に対応しています:
- 新しい wiki ページの作成
- 既存の wiki ページの更新
- wiki ページの削除
- キーワードによる wiki ページの検索
- ユーザーのクエリに基づく適切な Confluence ナレッジベース(
alm、wpbなど)の自動選択
FastAPI で構築され、MCP サーバーのベストプラクティスに従っており、本番環境へのデプロイに対応しています。
🚀 技術スタック
- Python 3.10+
- FastAPI
- MCP SDK
- Requests(Confluence API との連携用)
- ContextVars(セッション管理用)
📦 プロジェクト構成
wiki_mcp_server/
├── src/wiki_mcp_server/
│ ├── server.py # MCP server entry point
│ ├── service.py # Business logic (Confluence API interactions)
│ ├── tools.py # MCP tool definitions
│ ├── prompts.py # MCP prompt definitions
│ ├── resources.py # MCP resource definitions
│ ├── utils.py # Helper functions (wiki_type inference etc.)
│ ├── utils/session_context.py # Session context manager
│ └── middleware.py # Authentication and session initialization middleware
├── Dockerfile # Container configuration
├── requirements.txt # Python dependencies
├── README.md # Project documentation
├── smithery.yaml # Smithery integration config (optional)
└── pyproject.toml # Python project metadata
⚙️ インストール
- リポジトリをクローンします:
git clone https://your-repo-url/wiki_mcp_server.git
cd wiki_mcp_server
- 依存関係をインストールします:
pip install -r requirements.txt
- (任意)必要に応じて環境変数を設定します。
🛠 ローカルでの実行
サーバーを実行します:
cd src
uvicorn wiki_mcp_server.server:app --host 0.0.0.0 --port 9999 --reload
起動後、次のページにアクセスできます:
- OpenAPI ドキュメント(Swagger UI):http://localhost:9999/docs
- ReDoc ドキュメント:http://localhost:9999/redoc
🧪 リクエスト例
必須ヘッダー:
| キー | 値の例 |
|---|---|
| user_name | [email protected] |
| alm_confluence_base_url | https://your-confluence-site/wiki/rest/api |
| alm_confluence_api_token | your-api-token |
| wpb_confluence_base_url | (利用可能な場合は任意) |
| wpb_confluence_api_token | (利用可能な場合は任意) |
⚠️ ヘッダーがない場合、または無効な場合、サーバーは HTTP 400 エラーを返します。
例:ページの作成
POST /create_page
{
"space_key": "TEST",
"title": "Test Page Created by MCP Server",
"content": "<p>Hello, World!</p>",
"user_query": "Please create a page in GSNA knowledge base."
}
動作:
- サーバーは
user_queryからwiki_type=almを推測します。 - Confluence にページを作成し、ページのメタデータを返します。
🧠 自動推測のロジック
- クエリに
gsna、global、alm-confluenceが含まれる場合 → alm - クエリに
wpb、wealthが含まれる場合 → wpb - それ以外の場合は、デフォルトで alm
(入力で wiki_type を手動で指定することもできます)
🐳 Docker(任意)
コンテナ化されたサーバーをビルドして実行します:
docker build -t wiki-mcp-server .
docker run -d -p 9999:9999 --name wiki-mcp-server wiki-mcp-server
📜 ライセンス
MIT ライセンス。
📞 お問い合わせ
問題の報告や共同作業の依頼については、次の連絡先にお問い合わせください:
- 開発者:Shawn
- メール:[email protected]
- プロジェクトは社内 MCP ワーキンググループによって保守されています。
---# wiki_mcp_server
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。