Confluence MCP Server
Confluence APIにアクセスするためのModel Context Protocolサーバーシステム。 Personal Access Tokenを使用してConfluenceと通信します。 VPNゾーン内でConfluence APIにアクセスするための仲介サーバーとして機能します。
システム構成
このプロジェクトは2つのサーバーで構成されています。
MCPサーバー(server.ts):Confluence APIと通信してデータを処理するプライマリサーバー。
デフォルトポート:3000
RESTful APIの提供
MCPプロトコル処理
プロキシサーバー( proxyServer.ts ):MCPクライアントとMCPサーバー間のプロキシとして機能します。
デフォルトポート:3001
MCPクライアントから要求を受けてプライマリサーバーに転送
この構造は、VPNゾーンの問題を解決するために設計されています。 MCP サーバーは VPN 内で実行され、Confluence API にアクセスし、プロキシサーバーは外部からアクセス可能な環境で実行されます。
Related MCP server: Notion MCP Server
機能
すべてのConfluenceスペースのリストを見る
特定のスペース内のすべてのページを検索する
ページIDで特定のページ情報を検索する
新しいページを作成
既存のページを更新
インストールと設定
前提条件
Node.js 16.x以降
Bun 1.0.0以降
インストール
# 저장소 클론
git clone https://github.com/yourusername/confluence-mcp-server.git
cd confluence-mcp-server
# 의존성 설치
bun install環境変数の設定
.envファイルをプロジェクトのルートに作成し、次の内容を追加します。
PORT=3000
PROXY_PORT=3001
MCP_SERVER_URL=http://localhost:3000
CONFLUENCE_BASE_URL=https://wiki.musinsa.com
PERSONAL_ACCESS_TOKEN=your_personal_access_token
NODE_ENV=development実行
開発環境
# MCP 서버 실행 (Confluence API와 통신)
bun run dev
# 프록시 서버 실행 (MCP 클라이언트와 통신)
bun run dev:proxy
# MCP 서버 Stdio 모드 실행 (선택 사항)
bun run dev:stdio本番環境
# 빌드
bun run build
# MCP 서버 실행
bun run serve
# 프록시 서버 실행
bun run serve:proxyエンドポイント
MCPサーバーエンドポイント(デフォルトポート:3000)
POST /mcp - MCP 要求を処理するメインエンドポイント
GET /mcp/tools - 利用可能なツールのリストを検索する
GET /api/spaces - すべてのスペースのリストを見る
GET /api/spaces/:spaceKey/pages - 特定のスペースのページリストを検索する
GET /api/pages/:pageId - 特定のページ情報の検索
POST /api/pages - 新しいページの作成
PUT /api/pages/:pageId - ページ更新
GET /health - サーバーの状態を確認する
プロキシサーバーエンドポイント(デフォルトポート:3001)
POST /mcp - MCP クライアント要求を受け取り、MCP サーバーに転送
GET /tools - 利用可能なツールのリストを検索する
GET /health - プロキシサーバーの状態を確認する
トラブルシューティング
VPNゾーンのトラブルシューティング
このプロジェクトは、VPNゾーンの問題を解決するために2つのサーバーに分けられています。
MCPサーバーはVPN内で実行してConfluence APIに直接アクセスします。
プロキシサーバーは外部からアクセス可能な環境で実行され、MCPクライアントからの要求を受け取ります。
この設定は、MCPクライアントが直接Confluence APIにアクセスできない状況で仲介として機能します。
"Error fetching spaces: Unable to connect" エラー
このエラーは、次の問題で発生する可能性があります。
HTTPS 証明書の問題: 開発環境では SSL 証明書検証が無効になっていますが、本番環境では正しい証明書設定が必要です。
ネットワーク接続の問題:ファイアウォールまたはプロキシ設定のためにConfluenceサーバーにアクセスできない場合。
Personal Access Token 問題: トークンが期限切れになっているか、間違った形式になっている可能性があります。
解決策
.envファイルのCONFLUENCE_BASE_URLが正しいことを確認してください。Personal Access Tokenが有効であることを確認してください。
ファイアウォール設定を確認して、Confluenceサーバーにアクセスできることを確認します。
ネットワーク管理者に連絡してアクセス権を確認してください。
MCP サーバーとプロキシサーバー間の接続が正しく確立されていることを確認します (
MCP_SERVER_URLの設定).
テスト
# 모든 테스트 실행
bun test
# 특정 테스트 실행
bun test src/test/getSpaces.test.ts展開の構成
推奨展開の構成
本番環境では、次の展開構成をお勧めします。
MCPサーバー:VPN内部またはConfluenceサーバーにアクセスできるネットワークに展開
プロキシサーバー:MCPクライアントがアクセス可能なネットワークに展開
セキュリティに関する考慮事項
プロキシサーバーとMCPサーバー間の通信は、HTTPSを使用して暗号化することをお勧めします。
Personal Access Tokenは安全に管理し、必要に応じて定期的に更新してください。
本番環境では、適切な認証メカニズムを追加して、プロキシサーバーへの不正なアクセスを防ぎます。
ライセンス
MIT