こんにちは、ハックです。AIを相棒に、非エンジニアから今では様々なツールやアプリを開発をしている一人社長です。
「Claude CodeにMCPを追加すると便利らしいけど、何をどこに追加すればいいの?」
「追加したのに動かない。設定がどこに保存されたのかも分からない…」
Claude Codeを触り始めると、こんな場面に出会いますよね。
結論から言うと、MCPはClaude Codeを外部のサービスにつなぐための共通の規格で、追加はclaude mcp addというコマンド1本で済みます。
ただし、追加した設定がどこに保存されるか(スコープ)を知らないと、「別のプロジェクトで使えない」「チームに共有されてしまった」といった迷子になります。
この記事では、MCPとは何かから、追加方法、設定ファイルの場所、確認・削除、トークンの消費、僕が実際に使っているおすすめMCPサーバーまでを、順番に説明します。
MCPをつないでから、NotionやGitHubの画面を開いてコピー&ペーストする往復が、ほとんどなくなったんだよね。
はい、MCPの追加方法は、URLを指定する・起動コマンドを指定する・JSONを貼る、の3通りです。どれを使うかは、追加したいサーバーの説明書きで決まりますね。
🧭 読み終えたとき、あなたはこうなっています
- MCPとは何か、Skills・プラグインとどう違うかがわかり、どれに何を任せるかを決められる
claude mcp addでリモート(HTTP)とローカル(stdio)のMCPサーバーを追加できる- 設定がローカル・プロジェクト・ユーザーのどこに保存されるかがわかり、
~/.claude.jsonと.mcp.jsonの役割を説明できる /mcpとclaude mcp listで接続を確認し、不要なMCPサーバーを削除・無効化できる- トークンの消費を抑える仕組み(ツール検索)と、入れすぎを防ぐ考え方がわかる
⚠️ この記事の信頼性について
MCPとは?


MCPとは、Claude Codeを外部のツールやデータにつなぐための共通の規格(Model Context Protocol)のことです。公式ドキュメントでは、MCPは「AIツール統合のためのオープンソース標準」と説明されています。
MCPでつなぐ前は、別のサービスの情報を、自分でコピーしてチャットに貼っていました。たとえばタスク管理ツールの内容や、データベースの中身です。
MCPサーバーをつなぐと、Claudeがそのサービスを直接読んだり、操作したりできるようになります。公式ドキュメントには、次のような依頼の例が載っています。
- 課題追跡ツール(JIRA)の内容から機能を実装して、GitHubにPR(変更の提案)を作る
- データベース(PostgreSQL)を調べて、条件に合うユーザーを探す
- FigmaのデザインをもとにメールのテンプレートのHTMLを更新する
- Gmailに、送る相手ごとの下書きを作る
PR(プルリクエスト)とは、コードの変更をGitHub上で「この内容を取り込んでください」と提案する仕組みのことです。変更の内容と理由をまとめて送るので、確認してから取り込めます。
MCPサーバーとは
MCPサーバーとは、外部のサービスとClaude Codeの間に立って、「使える操作の一覧(ツール)」をClaudeに渡す役のプログラムのことです。
「Notion用のMCPサーバー」をつなぐと、Claudeは「ページを検索する」「ページを書き換える」といった操作を呼び出せるようになります。サービスごとに専用のMCPサーバーが用意されていて、必要なものだけを選んで追加します。
MCPサーバーには、動く場所が違う2種類があります。
| 種類 | 動く場所 | 追加のときの指定 | 向いているもの |
|---|---|---|---|
| リモート(HTTP) | インターネット上のサービス | --transport http | Notion・GitHubなど、クラウドのサービス |
| ローカル(stdio) | 自分のパソコンの中 | --transport stdio、または省略して--の後にコマンド | パソコン上のファイルや、手元で動くプログラム |
公式ドキュメントは、リモートのサーバーにはHTTPを推奨しています。SSE(Server-Sent Events)という別の方式は非推奨とされていて、利用できるならHTTPを使うよう案内されています。
MCPとSkills・プラグインの違い
MCPと、よく比べられるSkills(スキル)・プラグインの違いは、「何を足すか?」です。
| 足すもの | 例 | |
|---|---|---|
| MCP | 外部サービスへの接続(操作できるツール) | Notionのページを読む・書く |
| Skills | 作業の手順書(Claudeが必要なときに呼び出す) | 記事を書くときの手順 |
| プラグイン | 上の部品をまとめて配るパッケージ | MCPやSkillsをひとまとめにしたもの |
プラグインはMCPサーバーを同梱できます。公式ドキュメントによると、プラグインを有効にすると、同梱のMCPサーバーが自動的に起動します。この仕組みは、後の「入れすぎ」の話にも関わります。
Skillsの使い方は、以下の記事でまとめています。


Claude Code MCPの設定方法・追加方法


Claude Code MCPの追加方法は、使う場面ごとに4つあります。
claude mcp addで、リモート(HTTP)のサーバーを追加するclaude mcp addで、ローカル(stdio)のサーバーを追加するclaude mcp add-jsonで、JSONの設定をそのまま追加する- Claude Desktopの設定、またはclaude.aiのコネクタを取り込む
claude mcp addで追加する(HTTP・stdio)
リモートのMCPサーバーは、次の形で追加します。公式ドキュメントに載っている、Notionに接続する例です。
claude mcp add --transport http notion https://mcp.notion.com/mcp
notionがサーバーに付ける名前、最後のURLがサーバーの接続先です。APIキーなどが必要なサーバーは、--headerで渡します。
claude mcp add --transport http secure-api https://api.example.com/mcp --header "Authorization: Bearer your-token"
自分のパソコン上で動くローカルのサーバーは、次の形です。公式ドキュメントの例では、Airtableのサーバーを追加しています。
claude mcp add --env AIRTABLE_API_KEY=YOUR_KEY --transport stdio airtable -- npx -y airtable-mcp-server
ここで大事なのが、--(ダブルダッシュ)の位置です。公式ドキュメントによると、--はClaude自身のオプション(--transport・--env・--scopeなど)と、サーバーを動かすコマンドを分ける区切りです。--より後ろは、そのままサーバーに渡されます。
--が無いと、サーバー側の-yや--portといったフラグまで、Claude Codeが自分のオプションとして読もうとして、失敗します。
npxとは、Node.js(JavaScriptを動かす土台)に付いてくるコマンドで、ネット上のプログラムをダウンロードして、その場で実行するものです。MCPサーバーの多くは、npx -y パッケージ名という形で起動します。-yは、確認の質問に自動で「はい」と答える指定です。
また、--envは複数のKEY=valueを渡せます。
公式ドキュメントは、サーバー名を--envの直後に置くと名前までKEY=valueとして読まれて拒否されるので、--envとサーバー名の間に別のオプション(上の例では--transport stdio)を1つ挟むよう案内しています。
追加に成功すると、Added ...という行が表示されます。つながったかどうかは、次のコマンドで確認します。
claude mcp get notion
確認の方法は、後の「確認・削除」の章で詳しく説明します。
僕は、サーバーのREADMEに書いてあるセットアップ手順が、Claude Code向けじゃないことのほうが多いなぁと感じています。そういうときは、書かれているのが「URL」「起動コマンド」「JSONブロック」のどれかを見れば、この記事の3つの追加方法のどれかに当てはまりますよ。
公式ドキュメントにも、同じ見分け方が載っています。
- URL(
https://...)が書いてある:リモートのサーバー。--transport httpで追加する - 起動コマンド(
npx -y @example/mcp-serverなど)が書いてある:ローカルのサーバー。--の後ろにコマンドを書く mcpServersのJSONブロックが書いてある:次のadd-jsonで追加する
JSONで追加する(add-json)
claude mcp add-jsonは、JSONの設定をそのまま渡してサーバーを追加するコマンドです。ほかのMCPクライアント(Claude DesktopやCursorなど)向けの設定が、JSONで載っているときに使います。
公式ドキュメントでは、次のように説明されています。たとえば、設定が次のように書かれているとします。
{
"mcpServers": {
"example": {
"command": "npx",
"args": ["-y", "@example/mcp-server"]
}
}
}
add-jsonには、外側のmcpServersを除いて、中のオブジェクトだけを渡します。
claude mcp add-json example '{"command":"npx","args":["-y","@example/mcp-server"]}'
JSONの外側を、シングルクォート(')で囲んでいる点に注意してください。シェルの中でJSONが正しく渡るように、エスケープ(記号の扱いの調整)をする必要があるからです。
もうひとつ、公式ドキュメントが注意しているのがtypeの指定です。urlを持っているのにtypeが無い設定は、エラーになります。
Claude Codeは、typeが無い設定をローカル(stdio)のサーバーとして読むためです。"type": "http"を足して使います。
サーバー名には、文字・数字・ハイフン・アンダースコアだけを使えます。スペースなどは使えません。
Claude Desktopの設定を取り込む
Claude Desktop(Claudeのデスクトップアプリ)でMCPサーバーを設定済みなら、次のコマンドでClaude Codeに取り込めます。
claude mcp add-from-claude-desktop
実行すると、取り込むサーバーを選ぶ画面が出ます。取り込んだら、claude mcp listで確認します。
公式ドキュメントによると、この機能が使えるのは、macOSとWSL(Windows上のLinux環境)だけです。Claude Desktopの設定に、スペースを含む名前のサーバーがあると、そのサーバーは取り込めません。ほかのサーバーは取り込まれます。
claude.aiのコネクタをClaude Codeで使う
claude.aiのアカウントでClaude Codeにログインしていると、claude.aiに追加したMCPサーバー(コネクタ)が、Claude Codeでも自動的に使えます。
公式ドキュメントによると、サーバーの追加はclaude.ai側(claude.ai/customize/connectors)で行います。TeamとEnterpriseのプランでは、追加できるのは管理者だけです。
僕のNotionとTickTickは、この方法でつないでいます。ブラウザで接続を済ませておくと、Claude Codeの/mcpにもそのまま出てきます。claude mcp addを打つ必要がありません。
claude.aiのコネクタを追加していて、Claude Codeで見えないときは、まずclaudeを起動して/mcpを開いてみてください。サーバーの名前の頭にclaude.aiと付いたものが一覧に出ていれば、つながっています。
GitHubのMCPは、claude.aiのコネクタ経由と、Claude Codeへの直接の追加の両方で使っています。どちらで使うかの違いは、後の「おすすめMCPサーバー」の章でまとめます。
Claudeデスクトップアプリでも、Codeタブから同じClaude Codeを使えます。アプリのダウンロード方法と、無料でできることは以下の記事にまとめています。


Claude Code MCPの設定ファイルの場所とスコープ


追加したMCPの設定は、どこに保存されるのでしょうか。これは、保存先を決める「スコープ」の指定で決まります。
スコープとは、MCPサーバーをどの範囲で使えるようにするか?を決める区分のことです。claude mcp addに--scope(短縮形は-s)を付けて指定します。
ローカル・プロジェクト・ユーザーの違い
公式ドキュメントの表を、読みやすく整理します。
| スコープ | 使える範囲 | チームと共有 | 保存場所 |
|---|---|---|---|
ローカル(--scope local) | 追加したプロジェクトだけ | しない | ~/.claude.json |
プロジェクト(--scope project) | そのプロジェクトだけ | する(バージョン管理を通じて) | プロジェクトのルートにある.mcp.json |
ユーザー(--scope user) | すべてのプロジェクト | しない | ~/.claude.json |
ローカルがデフォルトです。--scopeを付けずにclaude mcp addを実行すると、ローカルに保存されます。
ローカルは、追加したプロジェクトの中だけで有効です。同じサーバーは、ほかのプロジェクトには出てきません。個人で試したいサーバーや、チームに見せたくない認証情報を持つサーバーに向いています。
~/.claude.jsonとは、ホームフォルダの直下にある、Claude Codeが自分の情報を保存するファイルのことです。~は、自分のホームフォルダを表します。ローカルとユーザーの2つのスコープは、同じこのファイルに保存されます。ただし、ローカルはプロジェクトごとの項目の下に、ユーザーは全体の項目に書かれます。
公式ドキュメントに、ローカルで追加した場合の保存の形が載っています。/path/to/your/projectの下に、mcpServersが書き込まれます。
{
"projects": {
"/path/to/your/project": {
"mcpServers": {
"stripe": {
"type": "http",
"url": "https://mcp.stripe.com"
}
}
}
}
}
注意が1つあります。公式ドキュメントによると、MCPの「ローカルスコープ」は、一般的な「ローカル設定」とは別物です。MCPのローカルスコープは、ホームフォルダの~/.claude.jsonに保存されます。一方、一般的なローカル設定は、プロジェクトの中の.claude/settings.local.jsonを使います。
settings.jsonなどの設定ファイルの場所と優先順位は、以下の記事にまとめています。


プロジェクトスコープは、チームで共有したいときに使います。プロジェクトのルートに.mcp.jsonが作られるので、バージョン管理(Git)に含めると、チームの全員が同じMCPサーバーを使えます。
claude mcp add --transport http shared-server --scope project https://example.com/mcp
できあがる.mcp.jsonは、次の形です。
{
"mcpServers": {
"shared-server": {
"type": "http",
"url": "https://example.com/mcp"
}
}
}
セキュリティのため、Claude Codeは、.mcp.jsonにあるプロジェクトスコープのサーバーを使う前に、あなたの承認を求めます。承認の選択をやり直したいときは、claude mcp reset-project-choicesを実行します。
ユーザースコープは、すべてのプロジェクトで使いたいサーバーに向いています。
claude mcp add --transport http hubspot --scope user https://mcp.hubspot.com/anthropic
グローバルに設定する(–scope user)
「グローバルに設定したい」「全部のプロジェクトで使いたい」というときは、--scope userを付けて追加します。公式ドキュメントには「グローバル」という呼び方はありませんが、すべてのプロジェクトで使える範囲は、ユーザースコープのことです。
僕のMacでは、Serena・context7・Playwright・Supabase・Sequential Thinkingを、ユーザースコープで追加しています。どのプロジェクトでも使うものは、ユーザースコープ。特定のプロジェクトだけで使うものは、ローカルスコープ。この2つに分けています。
同じ名前のサーバーが複数のスコープに存在するとき、使われるのは優先度が高い1つだけです。公式ドキュメントの順番は、次のとおりです。
- ローカルスコープ
- プロジェクトスコープ
- ユーザースコープ
- プラグインが提供するサーバー
- claude.aiのコネクタ
優先されたサーバーの設定が、そのまま使われます。項目ごとに混ぜ合わせることはありません。
.mcp.jsonの書き方と環境変数
.mcp.jsonは、mcpServersの下に、サーバーの名前ごとの設定を書くファイルです。公式ドキュメントによると、${VAR}や${VAR:-default}という書き方で、環境変数を使えます。
環境変数とは、パソコンの中に名前を付けて覚えさせておける値のことです。APIキーなどの秘密の値を、設定ファイルに直接書かずに、環境変数として保存しておくと、ファイルを共有しても秘密は漏れません。
${VAR}は、環境変数VARの値に置き換わります。${VAR:-default}は、VARが設定されていなければ、defaultの値を使います。公式ドキュメントにある例は次のとおりです。
{
"mcpServers": {
"api-server": {
"type": "http",
"url": "${API_BASE_URL:-https://api.example.com}/mcp",
"headers": {
"Authorization": "Bearer ${API_KEY}"
}
}
}
}
チームで共有する.mcp.jsonに、APIキーを直接書かない。Bearer ${API_KEY}のように、環境変数で書くのが基本です。キーそのものは、各自のパソコンの環境変数に保存します。
環境変数を使えるのは、command・args・env・url・headersの5か所です。
なお、公式ドキュメントによると、ANTHROPIC_API_KEYなど、Claude Code自身やクラウドサービスの認証情報にあたる変数は、リモートサーバーのurlとheadersの中では、空として読み込まれます。書いてもサーバーに送られない仕組みです。自分で作ったAPI_KEYのような別の名前の変数は、そのまま展開されます。
Claude Code MCPの確認・削除


追加したあとは、つながっているかの確認と、要らなくなったときの削除が必要になります。
/mcp と claude mcp list で確認する
確認の方法は、2つあります。ターミナルで打つコマンドと、Claude Codeの中で使うコマンドです。
claude mcp list
claude mcp get notion
Claude Codeを起動したあとは、画面の中で/mcpと入力します。/mcpは、サーバーの状態を確認するメニューです。OAuth認証が必要なリモートサーバーの認証も、ここから行います。
/で始まるコマンド全体は、以下の記事にまとめています。


claude mcp listは、サーバーごとに、状態を表すラベルを表示します。公式ドキュメントに載っているのは、次のものです。
| 表示 | 意味 |
|---|---|
✔ Connected | 接続できている |
! Needs authentication | 認証が必要(/mcpから認証する) |
✘ Failed to connect | 接続できなかった |
⏸ Pending approval | .mcp.jsonのサーバーで、まだあなたが承認していない |
⊘ Disabled for this project | このプロジェクトでは無効にしている |
僕の環境でも、claude mcp listを実行すると、Connectedのサーバーと、Needs authenticationのサーバーが混ざって並びます。Needs authenticationは、エラーではなく「認証がまだ」という状態です。
context7については、環境変数が設定されていないという警告が表示されていました。公式ドキュメントによると、設定の中の${VAR}が、設定されていない環境変数を指しているときに、Claude Codeが警告を出します。claude mcp listと/mcpの両方に表示されるので、警告が出たら、サーバー名と変数の名前を見て、環境変数を設定します。
MCPサーバーを削除・無効化する
削除は、claude mcp removeに、サーバーの名前を付けて実行します。
claude mcp remove notion
公式ドキュメントによると、リモートサーバーを削除すると、Claude Codeが保存していたOAuthトークン(認証の鍵)とクライアント登録も一緒に削除されます。つなぎ直すときは、認証もやり直しです。
同じ名前のサーバーが複数のスコープにあるときは、claude mcp remove サーバー名 --scope スコープで、スコープを指定して削除します。
無効化は、設定を残したまま、接続だけを止める方法です。/mcpのメニューで、サーバーをオフに切り替えます。Claude Codeは、そのサーバーに接続しなくなりますが、設定は残ります。「今は使わないけど、また使うかもしれない」サーバーに向いています。
無効にした選択は、プロジェクトごとに~/.claude.jsonへ記録されます。disabledMcpServersというリストに、サーバーの名前が入ります。claude.aiのコネクタも、/mcpのプロジェクトごとのスイッチでオフにでき、claude.ai Slackのような名前で記録されます。
プラグインが提供するMCPサーバーは、/mcpでは追加も削除もできません。削除するには、プラグインをアンインストールします。止めるだけなら、/mcpでオフにできます。
接続できないとき
つながらないときは、まずclaude mcp listか/mcpで、状態のラベルを見ます。✘ Failed to connectのときは、claude mcp get サーバー名のIssue:の行に、失敗の理由(HTTPのステータスやサーバーが返したエラーの文)が出ます。
サーバーの起動に時間がかかっているだけのときは、起動を待つ時間(タイムアウト)を延ばせます。公式ドキュメントにあるのは、MCP_TIMEOUTという環境変数です。
MCP_TIMEOUT=10000 claude
これは、MCPサーバーの起動を10秒(10,000ミリ秒)まで待つ指定です。
Claude Code全体のエラー文の読み方は、以下の記事で、エラー文ごとに切り分けています。


Claude Code MCPのトークン消費とコンテキスト


MCPサーバーを増やすと、気になるのがトークン(Claudeが処理する文字量の単位)の消費です。
MCPサーバーは、1つのサーバーが数個から数十個のツールを持っています。ツールの一覧を、すべて最初から会話に読み込ませると、会話に使える領域(コンテキスト)が減ってしまいます。
ツール検索で読み込みを遅らせる
公式ドキュメントによると、ツール検索は、デフォルトで有効です。MCPのツールは遅延されて、必要になったときに検出されます。
つまり、サーバーを何本つないでも、最初から全部のツールの説明が読み込まれるわけではありません。Claudeが「この作業にはNotionのツールが要りそうだ」と判断したときに、そのツールを探して呼び出します。
挙動は、ENABLE_TOOL_SEARCHという環境変数で変えられます。公式ドキュメントの表を、整理します。
| 値 | 動作 |
|---|---|
| (未設定) | すべてのMCPツールが遅延され、必要なときに読み込まれる |
true | すべて遅延される |
auto | ツール定義の合計がコンテキストの10%未満なら先に読み込み、10%に達したらすべて遅延する |
auto:5 | 割合を自分で決める(この例は5%) |
false | すべてのMCPツールを最初から読み込む(遅延しない) |
# ツール検索を完全に無効にする
ENABLE_TOOL_SEARCH=false claude
特に困っていなければ、未設定のままで大丈夫です。
反対に、毎回のやり取りで必ず使うサーバーがあるなら、そのサーバーだけ遅延から外せます。.mcp.jsonのサーバーの設定に、"alwaysLoad": trueを足します。
{
"mcpServers": {
"core-tools": {
"type": "http",
"url": "https://mcp.example.com/mcp",
"alwaysLoad": true
}
}
}
公式ドキュメントは、少数のツールだけに使うよう案内しています。先に読み込まれたツールは、その分、会話に使えるコンテキストを消費するからです。
出力が大きいときの上限
もうひとつ、トークンに関わるのが、MCPツールが返す出力の大きさです。
公式ドキュメントによると、MCPツールの出力が10,000トークンを超えると、警告が表示されます。そして、出力はデフォルトで25,000トークンまでに制限されます。
大きなデータベースのスキーマなどを返すサーバーで、上限が足りないときは、MAX_MCP_OUTPUT_TOKENSで上限を上げられます。
export MAX_MCP_OUTPUT_TOKENS=50000
claude
上限を超えた結果は、ファイルに保存されて、会話の中にはファイルの場所を示すメッセージが入ります。Claudeは、中身が必要になったときに、そのファイルを読みます。
トークンの節約全般は、以下の記事で説明しています。


Claude Code おすすめMCPサーバー


ここからは、僕が実際に使っているMCPサーバーを紹介します。
おすすめと言っても、「これを入れておけば間違いない」というランキングではありません。僕が毎日の作業で困って、必要になったから追加したものばかりです。自分の作業に合うものを、1本選んでみてください。
僕のMCPの追加の方法は、次の3つに分かれます。
| 追加の方法 | スコープ | 例 |
|---|---|---|
claude mcp addで、ユーザースコープに追加 | すべてのプロジェクト | Serena・context7・Playwright・Supabase・Sequential Thinking |
claude mcp addで、ローカルスコープに追加 | このプロジェクトだけ | noteの下書き作業用のサーバー |
| claude.aiのコネクタ | claude.aiのアカウントで共通 | Notion・TickTick・Google(Drive・Calendar・Gmail)・Slack・Canva・Ubersuggest・Claude Docs |
先ほど説明した優先順位(ローカル、プロジェクト、ユーザー、プラグイン、claude.aiのコネクタ)と、僕の使い分けは、そのまま重なります。
Serena MCP
Serenaは、コードを記号(関数やクラスの名前)の単位で探すMCPサーバーです。
Claudeは、コードを探すときに、grep(文字列の総当たり検索)で全体を読み回りがちです。Serenaを使うと、「この関数を使っている場所はどこか」を、名前から直接たどれます。読み込むコードの量が減るので、トークンの節約にもなります。
僕のMacでは、ユーザースコープで追加しています。コードを触るプロジェクトでは、ほぼ毎回使います。
context7 MCP
context7は、ライブラリやフレームワークの最新のドキュメントを引くMCPサーバーです。
Claudeの知識は、学習した時点のものです。ライブラリの書き方はバージョンで変わるので、古い書き方を出されることがあります。context7を使うと、現在のドキュメントを引いたうえで、コードを書いてもらえます。
これもユーザースコープで追加しています。
Playwright MCP
Playwrightは、ブラウザを操作して、画面を確認するMCPサーバーです。
Claudeが、ページを開く、ボタンを押す、画面の様子を見る、といった操作をできるようになります。作ったWebページの動作確認や、画面の見た目の確認に使っています。
ユーザースコープで追加しています。
GitHub MCP
GitHub MCPは、コード管理サービスのGitHubを、Claude Codeから操作するためのMCPサーバーです。
公式ドキュメントでも、GitHubは、課題追跡ツールと並べて「PRを作る」という使い方の例に出てきます。競合の記事でも、最もよく取り上げられるMCPのひとつです。
僕は、GitHub MCPを、claude.aiのコネクタ経由と、Claude Codeへの直接の追加の、両方で使っています。コネクタ経由は、ブラウザで接続を済ませておけば、Claude Codeの/mcpにそのまま出てきます。直接の追加は、claude mcp addで、スコープも自分で選べます。
どちらを選ぶかは、「ほかのプロジェクトでも使うか」「claude.aiでも同じ接続を使いたいか」で決めます。同じサービスを両方に追加すると、重複になります。公式ドキュメントによると、同じ接続先を指す定義は、重複として扱われ、優先度の高いほうが使われます。
追加のコマンドは、GitHubの公式の案内に書かれているものを、そのまま使います。
Notion MCP
Notionは、Notionのページやデータベースを、Claude Codeから検索したり、書き換えたりするためのMCPサーバーです。
公式ドキュメントの追加の例にも、Notionが載っています。
claude mcp add --transport http notion https://mcp.notion.com/mcp
僕は、claude.aiのコネクタ経由でつないでいます。日報の作成や、会計の台帳の更新を、Claude Codeの中から頼めるようになりました。ブラウザで一度つなぐだけなので、コマンドを覚える必要がありません。
Supabase MCP
Supabaseは、データベースサービスのSupabaseを、Claude Codeから確認・操作するMCPサーバーです。
テーブルの構造を調べたり、データの中身を見たりといった作業を、Claudeに頼めます。僕は、ユーザースコープで追加して、データベースの確認に使っています。
本番のデータベースにつなぐときは、特に注意が必要です。Claudeに操作を任せると、データを書き換えてしまうこともあるからです。操作の内容を、1つずつ確認しながら進めます。
Figma MCP
Figma MCPは、デザインツールのFigmaで作った画面を、Claude Codeから読み取るためのMCPサーバーです。
デザインの画面を見ながら、Claudeにコードを書いてもらう使い方で人気があります。「claude code mcp」の関連語の中で、いちばん多く検索されているMCPです。
追加のしかたと、デザインからコードへ起こす流れは、別の記事で詳しくまとめます。
🔗【Claude CodeでFigma MCPを使う方法】(現在作成途中・公開後リンク予定)
おすすめMCPを選ぶ基準
MCPサーバーを選ぶときは、次の3つの基準で考えると、迷いません。
- 今、手作業でコピー&ペーストしているものはあるか。あるなら、そのサービスのMCPが候補になる
- そのMCPで、何の作業を頼むか、1文で言えるか。言えないなら、まだ追加しない
- どのスコープで追加するか、決められるか。すべてのプロジェクトで使うならユーザー、このプロジェクトだけならローカル
MCPで頼める作業を、僕の例で並べます。
| 頼みたい作業 | 使うMCP |
|---|---|
| コードの中の、関数の使われ方を調べたい | Serena |
| ライブラリの最新の書き方を調べたい | context7 |
| 作ったページの動作を確認したい | Playwright |
| 日報やタスクを、Notionに書き込みたい | Notion |
| データベースの中身を見たい | Supabase |
「どれが一番いいか」ではなく、「どの作業を減らしたいか」から選びます。
Claude Code MCPの使い方・便利な活用例


ここまでで、MCPの追加と確認はできるようになりました。
ここからは、つないだMCPを毎日の作業の中でどう使っているか?を、場面ごとに紹介します。
最初は、MCPを「便利そうだから」と入れて、ほとんど使わずに放置していました。今は、「この作業でコピー&ペーストが発生している」と気づいたときだけ追加しています。そうすると、入れたMCPを本当に毎日使うようになりました。
Claude Code MCPで個人開発
個人開発では、コードを書く前の「調べる」作業をMCPに任せています。
アプリを直すとき、最初にやるのは「どこを直せばいいか」を探すことです。ここでSerenaを使うと、Claudeが関数の名前から使われている場所をたどってくれます。ファイルを片っ端から開かないので、会話の容量も減りません。
新しいライブラリを使うときは、context7で最新のドキュメントを引いてから書いてもらいます。Claudeの知識だけで書かせると、1つ前のバージョンの書き方が混ざることがあるからです。
データベースを使うアプリでは、Supabaseでテーブルの中身を確認します。僕は1つのSupabaseを複数のアプリで共有しているので、テーブル名の頭にアプリの名前を付けるルールをCLAUDE.mdに書いています。MCPでつないだ先のデータを、ほかのアプリの分まで書き換えないためです。
作り終えたら、Playwrightで画面を開いて、ボタンを押したときの動きを確かめます。コードの管理はGitHubです。
個人開発の流れ:1.Serenaで探す → 2.context7で調べる → 3.書く → 4.Supabaseで中身を確かめる → 5.Playwrightで動かす
Claude Code MCPでブログ・ライティング
ブログでは、記事を書く前の数字集めと、書いたあとの置き場所にMCPを使っています。
キーワードの検索数や、自分の記事の順位は、UbersuggestのMCPで引いています。「この語は月に何回検索されているか?」を、Claude Codeの中で聞くだけで返ってきます。サイトの点検もできます。
noteの記事は、noteの下書きへ入れるMCPを、このプロジェクトだけ(ローカルスコープ)に追加しています。noteを書くのはこのプロジェクトだけなので、ほかのプロジェクトには出てこないようにしています。
記事のネタは、Notionのネタ帳へ溜めています。作業中に「これは記事になる」と思ったことを、その場でClaudeに書き込んでもらいます。
ブログの入稿(WordPressへの下書き)はMCPではなく、自作のスクリプトで行っています。MCPは、データを「取ってくる→保管する」場面から試すと始めやすいです。
Claude Code MCPで画像生成
画像は、CanvaのMCPを試しています。
Canvaで作ってあるデザインを複製し、文字だけ差し替えて、PNGで書き出すところまでをClaude Codeから頼めました。無料プランでも、この流れは動きました。
ただ、毎回のブログの図解は、別の仕組みで作っています。Canvaは「決まった型に文字だけ入れたい」ときに向いています。
デザインの画面からコードを起こしたい場合は、先ほど紹介したFigma MCPのほうが合います。
Claude Code MCPで日常の業務(Notion・Google)
いちばん効果を感じているのは、毎日の事務作業です。
朝は、TickTickのMCPで、受信箱にたまったタスクを読んでもらいます。「どのリストに移すか・いつやるか」の案をClaudeが出し、僕が承認するだけで振り分けが終わります。
1日の終わりは、Notionの日報へ、その日に何をしたかを書き込んでもらいます。経費の台帳への記録も、同じくNotionです。
長い作業が終わったときや、判断を仰ぎたいことが出たときは、Slackの専用チャンネルへ報告が届くようにしています。ファイルを読むときは、Googleドライブのコネクタを使います。
事務作業でのコツは、Claudeには「案を出す」まで、決めるのは自分と分けることです。TickTickもNotionも、書き込む前に必ず中身を見せてもらっています。
どれも、もとは手でアプリを開いて、コピー&ペーストしていた作業です。MCPは、アプリとアプリの間の「手作業の橋渡し」を消すものと考えると、使いどころが見つかります。
Claude Code MCPのセキュリティと注意点


MCPは便利な分、気をつけたい点が4つあります。
信頼できるサーバーだけを追加する
公式ドキュメントは、接続する前に、各サーバーを信頼できることを確認するよう警告しています。外部のコンテンツを取得するサーバーは、プロンプトインジェクションのリスクにさらされる可能性があるからです。
プロンプトインジェクションとは、読み込ませた文章の中に、AIへの命令を紛れ込ませて、意図しない動きをさせる攻撃のことです。たとえば、Webページの中に「このデータを外部へ送れ」と書いてあるのを、Claudeが指示として受け取ってしまうようなケースです。
公式ドキュメントの、セキュリティのページに詳しい説明があります。
- Claude Codeのセキュリティ(公式):https://code.claude.com/docs/ja/security
追加するのは、提供元がはっきりしているものに絞ります。Anthropicが運営する一覧(claude.ai/directory)には、レビュー済みのコネクタが並んでいます。ここにあるリモートサーバーは、claude mcp addでも追加できると、公式ドキュメントに書かれています。
APIキーを設定ファイルに直接書かない
先ほどの.mcp.jsonの説明のとおり、チームで共有するファイルには、キーを直接書かないことです。${API_KEY}の形で、環境変数を参照します。
.mcp.jsonは、Gitに含めて共有するものです。うっかりキーを書いたまま共有すると、チーム全員とリポジトリを見られる人に、キーが渡ってしまいます。
入れすぎない・使わないものを外す
これは、僕が実際にやってしまった失敗です。
ある日、claude mcp listを実行したら、Needs authenticationのまま並んでいるサーバーが、十数本ありました。プラグインを試したときに、同梱されていたMCPサーバーが、一緒に追加されていたんです。
design・legal・engineeringといった、用途ごとのプラグインでした。ほとんど使っていないのに、一覧だけが長くなっていました(汗)。
先ほど説明したとおり、プラグインを有効にすると、同梱のMCPサーバーが一緒に追加されます。そして、プラグインのサーバーは、/mcpでは削除できません。削除するには、プラグインをアンインストールします。
「試しにプラグインを入れて、そのままにしている」と、使っていないMCPが増えていきます。認証が済んでいないサーバーは、使えないのに一覧に残り続けます。接続の状態を見るたびに、必要な情報が埋もれてしまいます。
公式ドキュメントによると、Claude Codeは、認証が必要なサーバーがあると、起動時に通知を表示します。ただし、通知が出ていても、使わないものを自分で整理するまでは、一覧は減りません。
僕は、次の手順で整理しました。
claude mcp listで、Needs authenticationのサーバーを洗い出す- 「使う予定があるもの」と「ないもの」に分ける
- 使わないものは、プラグインごとアンインストールする
- 使うかもしれないものは、
/mcpで無効にして、設定を残す
MCPは、「全部つないでおく」より、「使うものだけをつなぐ」ほうが、管理しやすくなります。
プラグインを追加したあとは、claude mcp listを1回実行してみてください。同梱のMCPサーバーが増えていないかを、その場で確認できます。
MCPのツールをhooksで止める
MCPのツールは、Claude Codeのhooks(決まったタイミングで自動実行されるコマンド)の対象にもできます。フックの絞り込み(matcher)で、MCPのツールを指定します。
プラグインにバンドルされたMCPサーバーのツールは、mcp__plugin_<プラグイン名>_<サーバー名>__<ツール名>という長い名前になります。公式ドキュメントによると、サーバー名だけを書いたmatcherは、プラグインにバンドルされたサーバーには発火しません。
hooksの書き方は、以下の記事で説明しています。


CLAUDE.mdに、MCPの使い分けを書いておく方法もあります。たとえば、「データベースを確認するときはSupabase MCPを使う」と書いておくと、Claudeが迷いません。書き方は、以下の記事にまとめています。


VS Codeの拡張機能から使うときの設定は、以下の記事で説明しています。


CodexでのMCPの扱いは、以下の記事で、Claude Codeとの比較をまとめています。


Claude Code MCPのよくある質問
- MCPとは、何ですか?
-
AIを、外部のサービスやデータにつなぐための共通の規格(Model Context Protocol)です。サーバーをつなぐと、Claudeがそのサービスを直接読んだり、操作したりできます。
- MCPサーバーは、どうやって追加しますか?
-
claude mcp addで追加します。リモートのサーバーはclaude mcp add --transport http 名前 URL、ローカルのサーバーはclaude mcp add 名前 -- コマンドの形です。 - MCPの設定ファイルは、どこにありますか?
-
スコープで変わります。ローカルとユーザーは
~/.claude.json、プロジェクトは、プロジェクトのルートにある.mcp.jsonです。 - MCPをすべてのプロジェクトで使うには、どうしますか?
-
claude mcp addに--scope userを付けて、ユーザースコープで追加します。 - 追加したMCPが動いているかは、どう確認しますか?
-
ターミナルで
claude mcp listを実行するか、Claude Codeの中で/mcpを開きます。✔ Connectedと表示されていれば、接続できています。 - MCPサーバーを削除するには、どうしますか?
-
claude mcp remove サーバー名を実行します。削除せずに止めたいときは、/mcpのメニューで、サーバーをオフにします。 - MCPを増やすと、トークンを使いすぎませんか?
-
ツール検索がデフォルトで有効なので、MCPのツールは必要になったときだけ読み込まれます。使わないサーバーは、無効化か削除で整理しておくと、一覧も見やすくなります。
- Claude DesktopのMCPの設定を、Claude Codeで使えますか?
-
claude mcp add-from-claude-desktopで取り込めます。ただし、使えるのはmacOSとWSLだけです。
まとめ:Claude Code MCPは、1本追加して、スコープと確認方法まで覚える
- MCPは、Claude Codeを外部のサービスにつなぐ共通の規格。つなぐと、コピーして貼る手間が減る
- 追加は
claude mcp add。リモートは--transport http、ローカルは--の後ろにコマンドを書く - 保存先はスコープで決まる。ローカルはデフォルト、プロジェクトは
.mcp.jsonでチームと共有、ユーザーはすべてのプロジェクトで使える - 確認は
claude mcp listと/mcp、削除はclaude mcp remove。止めるだけなら/mcpでオフにする - ツール検索のおかげで、MCPは必要なときだけ読み込まれる。ただし、使わないMCPは整理する
MCPは、最初の1本をつなぐまでが、いちばん難しく感じる機能です。でも、claude mcp addを1回実行して、claude mcp listでConnectedと出るのを見れば、仕組みは分かります。
まずは、今、手作業でコピーして貼っているサービスを1つ選んで、そのMCPを追加してください。つながったら、claude mcp listで状態を確かめて、スコープを確認してみてください。
出典(Anthropic公式ドキュメント・2026年10月2日確認)
以上、ハックでした!いつも読んでくださり、ありがとうございます🙏
AI HACKSでは、AIの活用術、0からの起業・副業・最新のAIトレンドニュースなどをリアルタイムで発信しています。その他、AIで開発した無料アプリ・ツール・プロンプトテンプレートなども随時公開中です。
note (ai_hacks_jp) や、𝕏(@ai_hacks_jp)でも日々、AIの実践情報を投稿しています。








