Claude Media
Claude CodeにUnblocked MCPを入れてPR・チャットの文脈を引く

Claude CodeにUnblocked MCPを入れてPR・チャットの文脈を引く

Unblocked MCPをClaude Codeに入れ、PRの議論やSlackの会話を根拠に答えさせる手順。2つのツールの使い分け、旧ツール名の移行、クレジット消費も扱います。

Unblocked MCPは、コードだけでは分からない「なぜそう書かれたのか」をClaude Codeに渡すためのMCPサーバーです。プルリクエストの議論、メッセージスレッド、課題管理、ドキュメントを横断して調べ、出典付きの要約を返します。

入れ方は3通りあります。インストーラーを走らせる、プラグインとして入れる、claude mcp addで手動登録する、のいずれかです。この記事では導入の選び方から、2つのツールの使い分け、CLAUDE.mdへの書き方、つながらないときの切り分け、クレジットの消費までを順に扱います。

Unblocked MCPがClaude Codeに足すもの

Unblockedは、GitHubやSlack、Jira、Confluenceなどに散らばった組織の文脈を集め、サーバー側で順位付けと圧縮をしてからエージェントに渡すサービスです。MCPサーバーはその入口にあたります。

Claude Code側から見えるツールは2つだけです。

ツール役割
context_research役割コード・PR・ドキュメント・課題・メッセージを横断して調べ、出典付きの要約を返す
context_get_urls役割渡されたURLの先にある内容(PRの差分やコメント、課題、ドキュメント、スレッド)を取得する

context_researchにはeffortという入力があり、値を上げるほど網羅的に探します。そのぶん待ち時間は延びます。返り値は要約(Summary)と、根拠になったPR・文書・課題・メッセージ・コード断片(Sources)の組です。

context_get_urlsはその逆で、URLがすでに手元にあるときの取得専用です。「この課題のリンクを要約して」「PRの議論で参照されていたドキュメントを開いて」といった場面で呼ばれます。URLがない質問はcontext_researchの担当です。

接続先として使えるデータソースは、GitHub、GitLab、Bitbucket、Slack、Microsoft Teams、Jira、Linear、Confluence、Notion、Google Drive、Sentry、Datadogなど多岐にわたります。権限は各ツール側で設定済みのものがそのまま適用されます。

導入前に揃える条件

インストールの前に、次の4点が満たされているかを見ます。

  • チームがUnblockedにセットアップ済みであること
  • 自分にUnblockedのライセンスがあること。チームがライセンスを手動承認制にしているなら、申請が要ります
  • macOSかLinuxであること。Windowsではインストーラーを使わず、アプリ別の手順に従います
  • 使いたいコーディングエージェントが先に入っていること。インストーラーは、見つかったエージェントだけを設定します

ライセンスの有無は、料金の話に直結します。ライセンスはMCP経由の質問にも必要で、1ライセンスにつき月300クレジットがチームの共有プールに加わります。詳しくは後半の「クレジットの消費」で扱います。

導入経路を選ぶ

Claude Codeへの入れ方は、手元の環境と運用で選びます。

経路向く場面認証
インストーラー向く場面macOS・Linuxで一括設定したい認証ブラウザでサインイン
プラグイン向く場面スキルも一緒に入れたい認証OAuth
手動登録(リモートMCP)向く場面Windows、またはローカルにバイナリを置きたくない認証OAuthかAPIトークン

インストーラーで入れる

macOSかLinuxなら、1行で済みます。

curl -fsSL https://getunblocked.com/install-mcp.sh | bash

スクリプトはUnblocked CLIをダウンロードし、見つかったエージェント(Claude Code、Cursor、OpenCode、Windsurfなど)を設定します。同時に、エージェントにUnblockedの使い方を教えるスキルも入れます。

途中でブラウザが開き、サインインを求められます。開かない場合や失敗した場合は、unblocked authを実行します。終わったらClaude Codeを再起動してください。インストール前に開いていたセッションでは、Unblockedを使えません。

プラグインで入れる

スキルだけ、あるいはスキル込みでプラグインとして管理したいなら、Claude Code内でマーケットプレイスを追加します。

/plugin marketplace add unblocked/skills

続けて/pluginを開き、DiscoverタブからUnblockedのプラグインを選んでインストールします。認証はOAuthで、インストール後に促されます。スキルが表示されないときは、/reload-pluginsを実行するか、Claude Codeを再起動します。この再読み込みは、一時的な要件とされています。

手動でリモートMCPとして登録する

インストーラーを使えないWindowsや、ローカルにバイナリを置きたくない環境では、リモートのMCPサーバーを直接登録します。

claude mcp add -s user --transport http unblocked \
  https://getunblocked.com/api/mcpsse

登録直後のunblockedはdisconnectedと表示されます。Claude Codeで/mcpを実行してunblockedを選ぶと、ブラウザが開いてUnblockedへのログインに進みます。トランスポートはHTTPを選びます。古いHTTP+SSEには対応していません。

CIなどの非対話環境ではAPIトークンを使う

GitHub Actionsのような非対話環境では、Unblockedの画面でAPIトークンを発行し、Authorizationヘッダーに載せて登録します。トークンは、SettingsのAPI Tokensから作ります。個人用とチーム用の2種類があり、どちらも作成時にアクセスさせるデータソースを絞れます。

claude mcp add -s user --transport http unblocked \
  https://getunblocked.com/api/mcpsse \
  --header "Authorization: Bearer unb_token"

unb_tokenは発行したトークンに置き換えます。ドキュメントのコマンド例では、サーバー名がsecure-serverになっています。一方、同じページの~/.claude.jsonの例はunblockedです。名前は後で権限ルールにも使うので、unblockedに揃えておくと迷いません。

チーム用トークンは、作成時に選んだデータソースのすべての文書にアクセスできます。MCPの問い合わせは中身を返すため、トークンには、その連携に必要なデータソースだけを選びます。

動作確認は「出典付きで返るか」で見る

導入後は、Claude Codeで/mcpを実行し、unblockedが接続済みでツールが並んでいるかを見ます。次に、実際に質問してみます。

Use Unblocked to find the most recent pull request that changed our authentication code.

エージェントはcontext_researchを呼び、PRや議論を引用して答えます。引用が付かず、Claudeが手元のコードだけで答えているなら、Unblockedは使われていません。

切り分け

Unblockedから文脈が返らないときの切り分け

  1. Q/mcp の一覧に unblocked が出ているか?
    答えが出ていない

    インストール前に開いたセッションでは使えません。Claude Codeを再起動し、それでも出なければclaude mcp listで登録を確かめます。

    答えがはい
  2. Q状態は connected か?
    答えがfailed や not authenticated

    プロジェクトの.mcp.jsonがunblockedを上書きしていないか疑います。詳細は後半の「.mcp.jsonがuser設定を上書きする」にあります。

    答えがはい
  3. Q回答に出典(PR・文書・スレッド)が付いているか?
    答えが付いていない

    チームのデータソースが接続されているかを確かめます。つないだばかりのソースは、インデックス作成中の場合があります。

    答えがはい

ここまで通れば導入は完了です

以降は、どう呼ばせるかの設計に進めます。

呼ばれ方を決める: CLAUDE.mdと権限

ツールが入っても、エージェントが毎回呼ぶとは限りません。エージェントとその設定によって、自分で呼ぶ場合と、ユーザーが頼んだときに呼ぶ場合があります。

CLAUDE.mdに一言足す

呼ぶ場面を固定したいなら、リポジトリのCLAUDE.mdかAGENTS.mdに短い指示を書きます。例を示します。

## Organizational context
 
Unblocked provides context from PRs, docs, Slack, and issue trackers.
Use the `context_research` MCP tool before planning or modifying
unfamiliar code, and `context_get_urls` to resolve links to PRs,
issues, docs, or Slack threads.

詳細な使い方は、インストーラーやプラグインで入るスキルがすでに持っています。CLAUDE.mdには長く書かず、「いつ呼ぶか」だけを残せば足ります。

毎回の承認を省くなら、サーバー名で書く

Claude Codeの権限ルールは、MCPツールをmcp__<サーバー名>__<ツール名>で指定します。インストーラーか手動登録でサーバー名がunblockedなら、.claude/settings.jsonに次のように書けます。

{
  "permissions": {
    "allow": [
      "mcp__unblocked__context_research",
      "mcp__unblocked__context_get_urls"
    ]
  }
}

プラグイン経由で入れた場合、ツール名はmcp__plugin_<プラグイン名>_<サーバー名>__<ツール名>の形になります。/mcpでツールを選ぶと完全な名前が表示されるので、それを写すのが確実です。

承認なしで呼べるようにすると、1回ごとの人の確認が消えます。MCPコールにはクレジットがかかるので、消費の見積もり方は後述の「クレジットの消費を見積もる」で扱います。

旧ツール名の移行

Unblocked MCPは、2026年4月に5ツール構成から現在の2ツールへ置き換えられました。旧ツールは次の5つです。

  • unblocked_context_engine
  • research_task
  • data_retrieval
  • historical_context
  • link_resolver

プロンプトや設定、スキルの中に旧名が残っていると、呼び出しが成立しません。旧名はcontext_researchかcontext_get_urlsに書き換えます。手元のリポジトリに残っていないかは、grepで洗えます。

grep -rnE \
  "unblocked_context_engine|research_task|data_retrieval|historical_context|link_resolver" \
  CLAUDE.md AGENTS.md .claude ~/.claude 2>/dev/null

research_taskやdata_retrievalは一般的な語なので、ほかのツールと偶然ぶつかる可能性があります。ヒットした行は、Unblockedに関するものかを見てから直します。ツールと説明は、今後また変わりうるものです。

つながらないときの落とし穴

.mcp.jsonがuser設定を上書きする

Claude Codeでunblockedがfailedやnot authenticatedになっているときは、プロジェクトの.mcp.jsonにunblockedという名前のサーバーがないかを見ます。Claude Codeは同名のサーバーを、ローカル、プロジェクト、ユーザーの順で優先し、エントリ全体を採用します。項目単位の混ぜ合わせはしません。つまり、プロジェクト側の定義が1つあれば、ユーザー設定は使われません。

ここには安全上の落とし穴もあります。自分で管理していないリポジトリの.mcp.jsonは、Unblockedを装って、エージェントが送る文脈を受け取れます。コマンドやURLを信じる前に、中身を読んでください。直し方は、プロジェクト側のエントリを消すか、公式のサーバーを指すように書き換えることです。

プロジェクトの.mcp.jsonにあるサーバーは、Claude Codeが対話セッションで承認を求めます。承認前の状態はclaude mcp listにPending approvalと出ます。

invalid_redirect_uri

自作のMCPクライアントからOAuthでinvalid_redirect_uriが返るのは、そのクライアントのコールバックURLがUnblocked側でまだ許可されていないからです。クライアント名を添えてUnblockedに連絡すると、追加してもらえます。

クレジットの消費を見積もる

Unblockedの課金は、ライセンスと共有クレジットプールの2層です。1ライセンスにつき月300クレジットが、チーム全体のプールに加わります。

操作クレジット
回答(Webアプリ・Macアプリ・Slack)クレジット4
MCPコールクレジット2
コードレビュー(1件)クレジット9
CIレポート(1件)クレジット9

MCPコール1回が2クレジットなので、1ライセンスの300クレジットは約150回分です。ただしプールはチームで共有され、回答やコードレビュー、CIレポートも同じプールから引かれます。10人のチームで月3,000クレジットのうち2,345を使う例では、内訳はMCPコール250回(500クレジット)と、コードレビュー110件(990クレジット)などです。

プールを使い切りそうなら、毎月一定量を追加するクレジットパックがあります。使用状況はUsage & Billingのページで見られます。

先ほどの権限設定に戻ると、承認なしで呼べる設定に「毎回調べさせる」指示を重ねれば、1回2クレジットの呼び出しが人の確認なしに積み上がります。CLAUDE.mdには、すべての作業で呼ばせるのではなく、不慣れなコードに触る前など場面を限って書くと、消費も読みやすくなります。

組織で配るときの選択肢

チームに配る段階では、3つの論点があります。

  1. MCP・CLI・REST APIのどれを使うか。コーディングエージェントに文脈を渡すならMCP、シェルスクリプトやCIにJSONで返したいならCLIのcontext-*コマンド、アプリケーションから質問したりドキュメントを同期したりするならREST APIです。同じチームで併用できます
  2. リモートかローカルか。同じツールが使えます。違いは接続と認証で、リモートはバイナリ不要でHTTPとOAuth(またはトークン)、ローカルはCLIがMCPサーバーを動かし、stdioが必要なクライアントにも向きます
  3. シングルサインオン。ClaudeとUnblockedの両方でOktaを使っている組織は、Claude上のUnblockedコネクタを、Okta経由の接続(Enterprise Managed Authorization)にできます。条件は、UnblockedのOkta SSOとユーザー・グループのプロビジョニングが設定済みで、Claude側の組織管理者権限とOktaのSuper Adminがそろっていることです

Claudeのコネクタ一覧にもUnblockedは登録されています。接続先のURLはhttps://getunblocked.com/api/mcpsseで、サインインが必要です。Claude Code側では、手動登録した同じURLのサーバーが、claude.aiのコネクタより優先されます。

まとめ

Unblocked MCPが解くのは、コードを読んでも見えない「経緯」と「決定」を、エージェントの手元に引き込む問題です。導入そのものは1行で終わります。実運用で差が出るのは、CLAUDE.mdで呼ぶ場面を絞ることと、承認とクレジットの設計です。

先に試すなら、インストーラーで入れ、不慣れなモジュールを触る前に1回だけcontext_researchを使わせる、という最小の使い方から始めると、効果と消費の両方を見積もれます。既存のMCP運用との整合は、Claude CodeのMCP追加が管理設定で止まるときも参考になります。GitHub側の接続を整える手順はGitHub MCPサーバーの使い方にまとめています。

この記事を共有:XはてブLinkedIn