
Claude CodeのMCP:データベースとAPIを接続する方法
公開日:
読了時間: 2 min
テーマ: テクノロジー
著者: Leandro Valencia
claude mcp addでClaude CodeにMCPサーバーを追加し、.mcp.jsonでチームと共有する方法。認証情報を漏らさずGit、PostgreSQL、APIに接続できます。
目次
- クイックリファレンス
- MCPの仕組み
- ステップ1:ローカルサーバーを追加する(stdio)
- ステップ2:リモートサーバーに接続する(HTTP)
- ステップ3:スコープを選ぶ
- ステップ4:秘密情報を共有せずに設定を共有する
- ステップ5:動作を確認する
- 本格的な接続の前に守る8つのセキュリティルール
- Superpowersはどこに入る?
- チームのための計画
インストールすると、Claude Codeはターミナルでファイルを読み取り、コマンドを実行できるようになります。データベースへの問い合わせ、Issueの確認、APIの呼び出しを行わせるには、モデルを外部ツールに接続するためにAnthropicが公開したオープンなプロトコル、MCP(Model Context Protocol)が必要です。
このガイドでは、MCPサーバーの追加方法、認証情報をGitにコミットせずチームと共有する方法、本格的な接続を行う前に守るべきセキュリティのルールを説明します。
クイックリファレンス
| サーバー | トランスポート | コマンド | 推奨スコープ | 主な注意点 |
|---|---|---|---|---|
| ローカルのGit | stdio(uvx) |
claude mcp add git -- uvx mcp-server-git |
user | 公開される書き込み操作を確認する |
| PostgreSQL | stdio(npx) |
claude mcp add db -- npx -y @bytebase/dbhub --dsn "$DATABASE_READONLY_URL" |
project | 読み取り専用ユーザーの場合のみ使う |
| リモートAPI | http | claude mcp add --transport http mi-api https://mcp.ejemplo.com/mcp |
project | トークンは変数に入れ、ファイルには書かない |
| ファイルシステム | stdio(npx) |
claude mcp add archivos -- npx -y @modelcontextprotocol/server-filesystem . |
local | パスはプロジェクトに限定し、ディスクのルートにはしない |
MCPの仕組み
Claude Codeはクライアントとして動作します。各MCPサーバーは、run_queryやlist_issuesのようなツールを公開するプロセスまたはサービスです。セッション中、Claudeはそれらのツールを認識し、いつ呼び出すかを判断します。設定に応じて、あなたの許可を求めることもあります。
接続方法は2種類あります。
- stdio: Claude Codeがサーバーをローカルのプロセスとして起動し(通常は
npxまたはuvxを使用)、標準入出力で通信します。自分のマシンで動作するツールに一般的な方法です。 - http: サーバーはリモートのURLに置かれます。クラウドサービスに一般的な方法です。多くの大手サービスは、OAuth認証付きの公式MCPサーバーを公開しています。
ステップ1:ローカルサーバーを追加する(stdio)
基本の形式は次のとおりです。
claude mcp add <nombre> -- <comando> [argumentos...]
--区切りは必須です。これはclaudeのオプションと、サーバーを起動するコマンドを分けるものです。これがないと、Claude Codeはサーバーの引数を自分のオプションとして解釈しようとします。
Gitサーバーの例:
claude mcp add git -- uvx mcp-server-git
読み取り専用ユーザーの環境変数を指定して、DBHubでPostgreSQLに接続する例:
export DATABASE_READONLY_URL="postgresql://lectura:****@db.tuempresa.com:5432/analytics"
claude mcp add db -- npx -y @bytebase/dbhub --dsn "$DATABASE_READONLY_URL"
ステップ2:リモートサーバーに接続する(HTTP)
claude mcp add --transport http mi-api https://mcp.ejemplo.com/mcp \
--header "Authorization: Bearer $MI_API_TOKEN"
サーバーがOAuthを使う場合は、ヘッダーを付けないでください。セッションに入り、/mcpを実行して、ブラウザで認証の手順に従います。
ステップ3:スコープを選ぶ
各サーバーは3つのスコープのいずれかに保存されます。--scopeで選択します。
local(デフォルト):自分だけが、このプロジェクトでのみ使います。テストや、個人の認証情報を使うサーバーに便利です。project:リポジトリ直下の.mcp.jsonに書き込まれます。クローンしたチーム全員が受け取ります。プロジェクトのサーバーを初めて使うとき、Claude Codeは承認を求めます。user:自分のすべてのプロジェクトで使えます。Gitのような汎用ツールに最適です。
claude mcp add --scope project db -- npx -y @bytebase/dbhub --dsn '${DATABASE_READONLY_URL}'
ステップ4:秘密情報を共有せずに設定を共有する
.mcp.jsonは${VARIABLE}の構文による環境変数(および${VARIABLE:-デフォルト値})に対応しています。これにより、認証情報なしでファイルをリポジトリに含められます。
{
"mcpServers": {
"mi-api": {
"type": "http",
"url": "https://mcp.ejemplo.com/mcp",
"headers": {
"Authorization": "Bearer ${MI_API_TOKEN}"
}
},
"db": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@bytebase/dbhub", "--dsn", "${DATABASE_READONLY_URL}"]
}
}
}
各開発者は自分の変数(export MI_API_TOKEN=...)をエクスポートするか、シークレット管理ツールから読み込みます。誰もファイルに触れる必要はありません。
ステップ5:動作を確認する
claude mcp list # estado de todos los servidores
claude mcp get db # detalle de uno
claude mcp remove db # eliminarlo
セッション内で/mcpを実行すると、接続されているサーバーと公開しているツールが表示されます。サーバーにエラーが出る場合、最もよくある原因は、Claude Codeを起動したシェルで環境変数が定義されていないことです。
本格的な接続の前に守る8つのセキュリティルール
- 最小権限の原則。 読み取り専用のデータベースユーザーを使い、トークンには必要最小限の権限だけを与えます。エージェントに管理者ユーザーを渡してはいけません。
- リポジトリに秘密情報を置かない。 必ず環境変数を
.mcp.jsonで使います。 - パスを限定する。 ファイルサーバーが見られるのはプロジェクトのフォルダーだけにします。
- 公式または検証済みのサーバーを使う。 サービス提供元が公開しているものを優先します。MCPサーバーはあなたのマシン上でコードを実行するため、インストール前に提供元を確認してください。
- 書き込みを伴う操作には人の承認を入れる。 データを変更するツールには確認を求めるよう、Claude Codeの権限を設定します。あるいは、
mcp__db__.*のようなマッチャーを付けたPreToolUseフックで、特定の呼び出しをブロックまたは記録します。 - 妥当なタイムアウトを設定する。 サーバーの起動に時間がかかる場合(最初の
npxのダウンロードは通常遅い)は、MCP_TIMEOUT変数(ミリ秒単位)で待機時間を延ばします。 - 出力の上限を設ける。 ツールが大量の結果を返す場合は、
MAX_MCP_OUTPUT_TOKENSを調整し、LIMIT付きのクエリを使って、モデルのコンテキストがあふれないようにします。 - 本番の前にレプリカを使う。 分析には、メインのデータベースではなく、レプリカまたはステージング環境に接続します。
Superpowersはどこに入る?
MCPはClaude Codeにツールへのアクセスを与えます。一方、Superpowersは進め方を与えます。コーディングの前に設計させ、段階的な計画を書かせ、テストを先に書いて作業させるスキルのプラグインです。両者は補完関係にあります。MCPではClaudeがデータベースに問い合わせられ、Superpowersではそれがレビュー済みの計画の中で行われます。
まだインストールしていない場合は、Claude CodeにSuperpowersをインストールする方法のガイドで、マーケットプレイスからの導入を5分ほどで説明しています。
チームのための計画
- ツールを標準化する。 チームにClaude Codeをインストールし、どのサーバーを汎用(
userスコープ)にし、どれをプロジェクト用にするかを決めます。 - AI用の認証情報を作成する。 インフラ担当者に、専用の読み取り専用データベースユーザーを依頼します。アクセスは必要なスキーマに限定します。
.mcp.jsonをバージョン管理する。 環境変数を使った状態でリポジトリにコミットし、各開発者に必要な変数をREADMEに記載します。- 効果を測定する。 チームの問題解決が速くなれば、コスト構造も変わります。利益率計算ツールで数字を確認しましょう。
Step-by-step guide
ローカルサーバーを追加
claude mcp add <nombre> -- <comando>の形式で、コマンドの前に--区切りを付けます。
リモートサーバーに接続
claude mcp add --transport http <nombre> <url>で、トークンはヘッダーに入れます。
適切なスコープを選ぶ
自分だけならlocal、チームならproject(.mcp.json)、すべてのプロジェクトならuserです。
認証情報をリポジトリから除外
.mcp.jsonでは${VARIABLE}を使い、各開発者がシェルで環境変数を設定します。
動作確認と権限の制限
claude mcp listか/mcpで確認し、読み取り専用ユーザーと書き込み用のフックを使います。
Frequently asked questions
Claude CodeのMCPとは何ですか?
MCP(Model Context Protocol)は、Claude Codeをデータベース、リポジトリ、タスク管理ツール、APIなどの外部ツールに接続するためのオープンなプロトコルです。各接続はMCPサーバーとして動作し、セッション中にClaudeが呼び出せるツールを公開します。
local、project、userのスコープの違いは何ですか?
localは現在のプロジェクトでだけ、自分にのみサーバーを保存します。これがデフォルトです。projectはリポジトリ直下の.mcp.jsonに書き込み、チーム全員が利用できるようにします。userは、自分のすべてのプロジェクトでサーバーを使えるようにします。
本番のデータベースに接続しても安全ですか?
読み取り専用ユーザーを使い、できればレプリカに接続する場合にのみ安全です。本番への書き込み権限を持つエージェントは、指示の解釈を誤って破壊的なクエリを実行する可能性があります。有効にする前に、サーバーが公開するツールを確認することもおすすめします。
MCPを使うにはSuperpowersが必要ですか?
いいえ。MCPはClaude Codeに組み込まれています。Superpowersは作業手順(設計、計画、テスト)を強制するスキルのプラグインです。両者は補完し合いますが、それぞれ単独で動作します。
関連記事
興味を持ちそうな関連コンテンツを探し続けましょう

Manus vs Claude Code vs OpenCode 料金と選び方
Manusはクラウドで、Claude CodeとOpenCodeは手元のPCで動きます。料金、課金の仕組み、機能を比べ、どんな人にどれが合うかを解説します。

Claude Code 完全ガイド2026:導入から使いこなしまで
Claude Codeとは何か、macOS・Linux・Windowsへのインストール方法、必要なプラン、使うべきモデル、スキル・プラグイン・MCPでの拡張方法をまとめた2026年版の実践ガイド。

Claude CodeにSuperpowersをインストールする方法(2026)
Claude CodeにSuperpowersをインストールする手順。公式マーケットプレイスかGitHub、有効化の確認、よくあるインストールエラーの対処法まで。
提携
私が毎日使っていて、このコミュニティがより良い条件で使えるツールです。