atlassian-proxy
atlassian-proxy
Atlassian のホスト型 Rovo MCP サーバー (https://mcp.atlassian.com/v1/mcp) の前に配置し、Claude Code 向けに不要な部分を削ぎ落とすローカル stdio MCP プロキシです。
Claude Code (stdio) -> index.js -> mcp-remote (subprocess, OAuth) -> https://mcp.atlassian.com/v1/mcp次のことを行います:
index.jsのALLOWED_TOOLSにリストされたツールのみを公開します (jira-ops/jira-reviewerが実際に使うもの)。それ以外の上流ツールはすべてtools/listから隠されます。すべての呼び出しに
cloudId、contentFormat、responseContentFormatを自動注入し、Claude が見るスキーマからはこれらのパラメータを取り除くため、Claude がそれらを知る必要はありません。すべてのツール結果を返す前に、ノイズとなるキー (
avatarUrls、self、iconUrl、_links、expand、browseUrlなど) を再帰的に取り除きます。
必要条件
Node.js (ネイティブ ESM /
type: "module"をサポートする任意のバージョン)。npxが PATH で利用できること (mcp-remoteの起動に使用します)。
Related MCP server: JIRA MCP Server
インストール
まず、Node.js がすでにインストールされているか確認してください。インストール済みで、このフォルダに node_modules も存在する場合、npm install は不要です:
node -vその確認で Node.js が見つからない場合は、先に Node.js をインストールしてから:
cd C:\Users\Dz\oktanetest\atlassian-proxy
npm installこれにより、package.json から @modelcontextprotocol/sdk と mcp-remote がインストールされます。
単独実行 (手動スモークテスト)
node index.jsstdio 経由で MCP をやり取りするため、直接実行すると stdin でクライアントを待ちながらブロックします。Jira/Confluence ツールへの最初の呼び出しで npx -y mcp-remote https://mcp.atlassian.com/v1/mcp を子プロセスとして起動し、Atlassian OAuth ログイン用のブラウザーウィンドウが開きます。認証されると mcp-remote がトークンをキャッシュするので、以降の実行で再認証する必要はありません。stderr に [atlassian-proxy] ready が表示されれば、上流に接続してフィルター済みのツールリストを提供中です。
Claude Code での登録
このプロキシは atlassian ではなく atlassian-proxy という名前で登録してください。そうすれば、実際のホスト型 Atlassian/Rovo MCP サーバーが atlassian という名前で登録されている場合でも衝突しません。
プロジェクトの stdio MCP サーバーとして追加します。例: そのプロジェクトの Claude Code 設定 (mcpServers ブロック) に:
{
"atlassian-proxy": {
"type": "stdio",
"command": "node",
"args": ["<path-to-atlassian-proxy>\\index.js"],
"env": {}
}
}実際の atlassian MCP サーバーも登録されている場合は、このプロキシのフィルター済みツールだけが有効になるよう、それを削除せずに無効にしてください。Claude Code で /mcp を実行し、atlassian サーバーを選択して無効オプションを選びます。後でフィルタリングされていない完全な上流ツールセットが必要になったら、そこで再度有効にできます。
登録後、Claude Code (または MCP 接続) を再起動・再接続して、新しいサーバーを認識させてください。このプロキシのツールは atlassian-proxy プレフィックスの下に現れ (例: mcp__atlassian-proxy__getJiraIssue)、すでに ALLOWED_TOOLS に限定され、cloudId/contentFormat/responseContentFormat が取り除かれた状態です。
トークン削減量の統計
Claude Code はこのプロキシを隠して実行するため、stderr はチャットに表示されません。そのため削減量はファイルに書き出されます:
logs/token-savings.log— JSONL。tools/list/tools/callの各イベントごとに 1 行 (tokensSavedIn、tokensSavedOut、累計)。logs/stats-summary.txt— イベントのたびに現在の累計で上書きされます。
追跡される値は 2 つです (どちらも概算です — 文字数 / 4 であり、実際のトークナイザーではありません。Claude のトークナイザーは組み込まれていないためです):
Claude のコンテキストに入れずに済んだ分 (
tokensSavedIn):ALLOWED_TOOLSによるツールリストの削減と、stripNoiseによるツール結果からのノイズ除去の合計。Claude が生成しなくて済んだ分 (
tokensSavedOut): プロキシが Claude の代わりに自動注入する定数パラメータ (cloudId、contentFormat、responseContentFormat) の分。
ライブで確認するには、別のターミナルを開いてサマリーファイルを tail してください:
Get-Content logs\stats-summary.txt -Waitトラブルシューティング
readyメッセージが出ずにハングする場合:npx -y mcp-remote ...が OAuth のブラウザーフローを待機している可能性が高いです。ブラウザーのウィ ンドウ/プロンプトを確認してください。Claude でツールを利用できない場合: ツール名が
index.jsのALLOWED_TOOLSにあるか確認してください。リストにないものはtools/listから除外され、tools/callで拒否されます。
期限切れ・失効した認証 (401 Unauthorized、または could not resolve cloudId from getAccessibleAtlassianResources)
Claude Code の /mcp 再接続は node index.js の stdio プロセスを再起動するだけであり、再認証を強制するものではりません。実際の OAuth トークンは 1 層下にあり、mcp-remote 子プロセスが ~/.mcp-auth/mcp-remote-<version>/<server-hash>_tokens.json にディスクへキャッシュしていて、上流サーバー URL をキーにしています。そのトークンが古い (期限切れ、失効済み、または node プロセスが再起動する前からすでに古い) 場合、Claude Code で何度再接続しても、すべてのツール呼び出しは 401/could not resolve cloudId で失敗します再。接続はそのキャッシュに一切触れないからです。
完全な手順は、順番に次のとおりです:
キャッシュを削除します:
rm -rf ~/.mcp-auth(Windows:C:\Users\<you>\.mcp-auth)。これにより、マシン上のmcp-remoteを使うすべてのサーバーについて、キャッシュされたクライアント登録、PKCE verifier、トークンが消去されます。安全です。純粋な OAuth クライアント状態であり、他に依存するものはありません。Claude Code の外で、単独で再認証します。専用のターミナルで:
cd C:\Users\Dz\oktanetest\atlassian-proxy npx -y mcp-remote https://mcp.atlassian.com/v1/mcp --host 127.0.0.1このコマンドはフォアグラウンド (または確認できるバックグラウンドシェル) で実行し、ブラウザーのログインを自分のペースで完了してください。先に Claude Code 内で
atlassian-proxyを再接続して再認証しようとすることは しないでください。index.jsのmain()は、上流のmcp-remote接続 (ブラウザーでのクリック操作を含む) がすべて解決するまで自身の stdio 側を開かないため、Claude Code 独自の接続セットアップタイムアウトがインタラクティブな OAuth フローと競合しますか。Claude Code が先にタイムアウトすると、ハンドシェイクの途中でindex.jsとそのmcp-remote子プロセスが kill されれます。ブラウザーには "Authorization successful!" と表示されるかもしれませんが、tokens.jsonが書き込まれる前にトークン交換が遮断されます (その場合、~/.mcp-authにはclient_info.json/code_verifier.txtしか残らず、トークンはありません — この症状が起きたら確認してください)。先にmcp-remoteを単独で実行すればこの競合はまったく起こりません。Proxy established successfullyが表示されて (終了コード 0)、トークンが安全にキャッシュされます。その後 に、Claude Code (
/mcp) でatlassian-proxyを再接続します。同じmcp-remoteが起動し、有効なキャッシュ済みトークンを見つけて、ブラウザー操作なしで即座に接続します。
--host 127.0.0.1 を index.js の spawn 引数に指定する (上流 mcp-remote のデフォルトとは異なる。)のは Windows では必須です。mcp-remote のローカル OAuth コールバックサーバーは 127.0.0.1 だけにバインドしますが、デフォルトの redirect_uri ホスト名は localhost です。localhost が先に ::1 に解決される Windows マシン (Resolve-DnsName localhost で確認できます) では、ログイン後のブラウザーリダイレクト先が誰も待機していないアドレスになり、コールバックページに「接続できません」と表示されて認証コードが使われないままになります。このフラグは削除しないでください。
コールバックポートで EADDRINUSE が発生した場合 (例: 前回の認証試行が中断された後の listen EADDRINUSE: 127.0.0.1:3736): Windows の npx は、親プロセスがキャンセルされたときに子プロセスツリー全体を常に kill するわけではないため、前回の mcp-remote が孤立プロセスとして残り、ポートを保持したままになる可能性があります。再試行する前にそれを探して kill してください:
Get-NetTCPConnection -LocalPort <port> | Select-Object OwningProcess
Stop-Process -Id <pid> -ForceThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables Claude to interact with Jira through JQL (Jira Query Language) queries using the Model Control Protocol, allowing natural language access to Jira issue tracking and project management.
- AlicenseNot gradedqualityDmaintenanceEnables Claude AI to interact with JIRA for project management and issue tracking, supporting JQL queries, comprehensive issue details retrieval with subtasks and linked issues, and release planning analysis.MIT
- AlicenseNot gradedqualityAmaintenanceEnables users to fetch and search Jira tickets, comments, and attachments directly within Claude Code. It features JQL support and automatically exports linked Figma designs to provide comprehensive project context.1242MIT
- AlicenseAqualityBmaintenanceEnables Claude AI and other MCP clients to interact with Jira Server/Data Center through tools like listing issues, logging work, and updating issues, requiring user confirmation for write operations.8891MIT
Related MCP Connectors
Live SEO workflow tools for Claude Code, Codex, and AI agents.
Free public MCP for AI agents — 193 tools, 44 workflows. No API key.
One shared context your team's AI tools read & write over MCP. No re-explaining. Free.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DzmHub/atlassian-proxy'
If you have feedback or need assistance with the MCP directory API, please join our Discord server