🎧 Listen to this article: English
🌍 Read this in your language: हिंदी · தமிழ் · తెలుగు · ಕನ್ನಡ · മലയാളം · ଓଡ଼ିଆ · 日本語 · 中文
AIコーディングアシスタントの有用性は、利用できるツールによって決まります。導入直後の状態でもファイルの読み書きや編集は可能ですが、最新のライブラリドキュメントを調べたり、ブラウザを操作したり、エラートラッカーを確認したりすることはできません。MCPサーバーはそのギャップを埋めるものであり、セットアップはほんの数分で完了します。
今日は2026年10月26日です。各チームはAIツールの導入を進め続けていますが、新しいツールを導入するたびに当然の疑問が生じます。それは、「このツールはどこにアクセスできるのか、そしてどのように安全性を確保すればよいのか」という点です。コマンドを盲目的に貼り付けるのではなく、MCPのセットアップの仕組みを学ぶ価値があるのは、まさにこの疑問があるからです。
MCPサーバーとは何か
MCPはModel Context Protocolの略です。MCPサーバーは、アシスタントに対して一連のツールを公開する軽量なプログラムです。あるサーバーはドキュメントを検索し、別のサーバーはWebブラウザを操作し、また別のサーバーはデータベースにクエリを実行するかもしれません。アシスタントはこれらのツールを認識し、タスクで必要になった際に呼び出します。
サーバーの実行方法には主に2通りあります:
- ローカル(stdio): アシスタントがマシン上でプログラムを起動します。通常は
npxまたはuvx. - リモート(http): アシスタントがURLに接続し、OAuthまたはAPIキーを使用してサインインします。
ステップ1:スコープを決定する
Claude Codeでは、主に2つの場所にサーバー設定を保存できます:
- ユーザースコープ: マシン上のすべてのプロジェクトで利用可能。
- プロジェクトスコープ: 次の
.mcp.jsonファイルとしてプロジェクトフォルダに保存されるため、設定はプロジェクトとともに引き継がれます。
はじめのセットアップとしては、プロジェクトスコープを選択するのがより適切です。そのフォルダを開いた全員が同じツールを利用できます。
ステップ2:コマンドラインでサーバーを追加する
基本的なパターンは claude mcp addの後に名前、そしてサーバーを起動するコマンドを指定します。以下はAPIキーを必要としないサーバーの例です:
claude mcp add -s project context7 -- npx -y @upstash/context7-mcp
claude mcp add -s project playwright -- npx -y @playwright/mcp@latest --headless
claude mcp add -s project filesystem -- npx -y @modelcontextprotocol/server-filesystem /path/to/project
claude mcp add -s project --transport http sentry https://mcp.sentry.dev/mcp
Context7はアシスタントに最新のライブラリドキュメントを提供します。Playwrightを使用すると、ページを開いて実際のブラウザでテストできるようになります。Filesystemサーバーは、指定したフォルダ内でのみ読み書きを行います。Sentryはリモートであるため、初回時にサインインを求められます。
キーを必要とするサーバーも同様に動作し、キーは環境変数として渡されます:
claude mcp add -s project firecrawl -e FIRECRAWL_API_KEY=$FIRECRAWL_API_KEY -- npx -y firecrawl-mcp
ステップ3:または構成ファイルを直接記述する
上記のコマンドは単に次の .mcp.json ファイルを作成(書き込み)するだけです。手動で作成することも可能で、その方がレビューしやすく、バージョン管理での保持も容易になります:
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
},
"playwright": {
"command": "npx",
"args": ["-y", "@playwright/mcp@latest", "--headless"]
},
"sentry": {
"type": "http",
"url": "https://mcp.sentry.dev/mcp"
}
}
}
ステップ4:すべてが正常に接続されたか確認する
プロジェクトフォルダでClaude Codeを再起動します。このファイルが初めて認識された際、プロジェクトサーバーの承認を求められます。その後、ターミナルで claude mcp list を実行するか、セッション内で /mcp を実行します。各サーバーと、それらが接続されているかどうかが表示されます。Sentryなどのリモートサーバーは、その同じ画面からサインインを完了します。
ステップ5:認証情報が必要なサーバーを追加する
基本的な動作を確認できたら、プロジェクトで実際に必要なものを追加します:
- GitおよびGitHub:
uvx mcp-server-gitローカルリポジトリ向け、または個人用アクセストークンを使用するGitHubのリモートサーバー向け。 - 検索: ExaまたはBrave Search(いずれも無料枠あり)。
- データベース: PostgresサーバーまたはSupabaseサーバー。
- インフラストラクチャ: Kubernetes、Docker、AWS、Cloudflareのサーバー。
重要な安全管理の習慣
- シークレットを構成ファイルに含めないでください。
.mcp.jsonは${VAR}の展開をサポートしているため、キーを直接貼り付けるのではなく環境変数を参照してください。次のコマンドの使用後はファイルを確認してください:-e KEY=$KEY。リテラル値がそのまま書き込まれてしまう可能性があるためです。 - 可能な限り読み取り専用アクセスを使用する。 読み取り専用のデータベースロールや、権限を制限したクラウド認証情報を使用することで、誤操作による被害を最小限に抑えられます。
- 可能な限り最小限のフォルダ のみをfilesystemサーバーに公開してください。
- 使用するものだけをインストールする。 サーバーを追加するたびに、そのツールのリストがアシスタントのコンテキストに追加されます。これによりコンテキスト容量が消費され、ツールの選択精度が低下する原因になります。
- メモリ使用量に注意する。 ヘッドレスブラウザは負荷が高くなります。大規模な処理は一度に1つずつ実行してください。
まとめ
MCPサーバーの追加は、わずかなセットアップで大きなメリットをもたらします。まずはプロジェクトスコープの .mcp.json を用意してキー不要のサーバーをいくつか登録し、接続を確認した上で、認証情報が必要なサーバーを追加してください。承認する前に、各サーバーが何にアクセスできるかを確認しましょう。
メリット
- 最新のドキュメント、ブラウザテスト機能、エラー情報をアシスタントに提供できます。
- プロジェクトの
.mcp.jsonファイルにより、チームの誰もが同じ設定を再現できるようになります。 - 多くのサーバーが無料、あるいは無料枠を用意しています。
- サーバーの追加や削除が数秒で完了します。
デメリット
- サーバーごとにアシスタントのコンテキストサイズが増加します。
- データベースやクラウドアカウントへの書き込み権限を持つサーバーは、誤用された場合に重大な損害を与えるリスクがあります。
- パッケージ名やフラグは時間の経過とともに変更されるため、コマンドが古くなることがあります。
- リモートサーバーはサードパーティの稼働状況やサインインフローに依存します。
注意点
本記事は教育目的で提供されています。パッケージ名、URL、フラグは筆者の把握している限り正確ですが、頻繁に変更されるため、インストール前に各サーバーの公式ドキュメントをご確認ください。プレースホルダーのパス、トークン、プロジェクト参照はすべて独自の値に置き換え、本番のキーは決してコミットせず、サーバーを承認する前にアクセス範囲を必ず確認してください。
よくある質問
- MCPサーバーとは何ですか? — ドキュメントの検索やブラウザの制御など、AIアシスタントに追加のツールを提供する軽量プログラムまたはリモートサービスです。
- Claude CodeはMCP設定をどこに保存しますか? — ユーザー設定、またはプロジェクトスコープを使用する場合はプロジェクトフォルダ内の
.mcp.jsonファイルに保存されます。 - MCPサーバーにはAPIキーが必要ですか? — すべてに必要なわけではありません。Context7、Playwright、Filesystem、Sentryはキーなしで動作しますが、Firecrawl、Exa、Braveにはキーが必要です。
- サーバーが正常に動作しているか確認するにはどうすればよいですか? — ターミナルで
claude mcp listを実行するか、セッション内で/mcpを実行して接続ステータスを確認します。 - 次のファイルにAPIキーを含めても安全ですか:
.mcp.json? — いいえ。ファイルを安全に共有またはコミットできるように、環境変数の参照を使用してください。 - MCPサーバーが多すぎると動作が遅くなりますか? — はい。サーバーごとにツールの説明がコンテキストに追加されるため、実際に使用するものだけをインストールしてください。
- stdioサーバーとhttpサーバーの違いは何ですか? — stdioサーバーはユーザーが起動するローカルプロセスとして実行されます。httpサーバーは接続先のリモートURLであり、多くの場合OAuthを使用します。
- データベースサーバーに書き込み権限を付与すべきですか? — 書き込みがどうしても必要な場合を除き読み取り専用ロールを優先し、まずは本番環境以外のレプリカやコピーでテストしてください。
タグ
#MCP #ModelContextProtocol #ClaudeCode #AITools #DeveloperTools #Playwright #Context7 #Automation #Productivity #CodingAssistant
Prompt-Injection Defense Checklist
The controls that actually reduce the blast radius when your app feeds untrusted text to an LLM. Enter your email — you'll get the PDF instantly, plus new posts on AI, security & Linux.
Free. No spam — unsubscribe in one click.


Responses
Sign in to leave a response.