Claude CodeでMCP(Model Context Protocol)を設定する方法を初心者向けに徹底解説します。
Claude Code MCP設定の基本
MCPとは
Model Context Protocol(MCP)
- Claudeが外部ツールやデータソースにアクセスするための仕組み
- ファイルシステム、データベース、APIなどと連携可能
- JSONファイルで簡単に設定できる
なぜMCP設定が必要か
MCPを使うメリット
- ローカルファイルへのアクセス
- データベース操作の自動化
- 外部APIとの連携
- ブラウザ自動化
設定ファイルの場所
macOS/Linuxの場合
# グローバル設定
~/.config/claude-code/mcp.json
# または
~/Library/Application Support/Claude/claude_desktop_config.json
Windowsの場合
# グローバル設定
%APPDATA%\claude-code\mcp.json
# または
%APPDATA%\Claude\claude_desktop_config.json
プロジェクト単位の設定
# プロジェクトルート
.claude/mcp.json
# または
claude-code.json
基本的な設定ファイルの書き方
最小限の設定例
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/directory"
]
}
}
}
設定項目の説明
必須項目
{
"mcpServers": {
"サーバー名": {
"command": "実行コマンド",
"args": ["引数1", "引数2"]
}
}
}
オプション項目
{
"mcpServers": {
"サーバー名": {
"command": "コマンド",
"args": ["引数"],
"env": {
"環境変数名": "値"
},
"disabled": false
}
}
}
ステップバイステップ設定手順
Step 1: 設定ファイルの作成
macOS/Linuxの場合
# ディレクトリ作成
mkdir -p ~/.config/claude-code
# 設定ファイル作成
touch ~/.config/claude-code/mcp.json
Windowsの場合
# ディレクトリ作成
New-Item -ItemType Directory -Path "$env:APPDATA\claude-code" -Force
# 設定ファイル作成
New-Item -ItemType File -Path "$env:APPDATA\claude-code\mcp.json"
Step 2: 基本設定の記述
基本設定を記述
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"${HOME}/projects"
]
}
}
}
Step 3: Claude Codeの再起動
# Claude Codeを完全に終了してから再起動
Step 4: 動作確認
MCPサーバーが認識されているか確認
Claude Codeで以下のように質問:
「使用可能なツールを教えてください」
→ filesystem関連のツールが表示されればOK
よく使うMCPサーバーの設定例
ファイルシステムMCP
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"${HOME}/Documents"
]
}
}
}
GitHub MCP
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_TOKEN": "${env:GITHUB_TOKEN}"
}
}
}
}
PostgreSQL MCP
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-postgres"
],
"env": {
"DATABASE_URL": "${env:DATABASE_URL}"
}
}
}
}
複数のMCPサーバー設定
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"${HOME}/projects"
]
},
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_TOKEN": "${env:GITHUB_TOKEN}"
}
}
}
}
環境変数の設定方法
.envファイルの使用
.envファイルの内容
GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxx
DATABASE_URL=postgresql://user:pass@localhost/db
BRAVE_API_KEY=BSA_xxxxxxxxxxxxxxxxxxxx
システム環境変数の設定
macOS/Linux
# ~/.zshrc または ~/.bashrc に追加
export GITHUB_TOKEN="ghp_xxxxxxxxxxxxxxxxxxxx"
export DATABASE_URL="postgresql://user:pass@localhost/db"
# 反映
source ~/.zshrc
Windows
# PowerShellで設定
[Environment]::SetEnvironmentVariable(
"GITHUB_TOKEN",
"ghp_xxxxxxxxxxxxxxxxxxxx",
"User"
)
トラブルシューティング
問題1: MCPサーバーが起動しない
確認事項
# Node.jsのバージョン確認
node --version # 18以上が必要
# npxコマンドの確認
which npx
# MCPサーバーの直接実行テスト
npx -y @modelcontextprotocol/server-filesystem /tmp
よくある原因
- Node.jsがインストールされていない
- パス指定が間違っている
- 権限の問題
問題2: 設定ファイルが読み込まれない
確認事項
- ファイルの場所を確認
- JSONの構文チェック
- Claude Codeの完全再起動
問題3: 環境変数が読み込まれない
対処法
# 環境変数の確認
echo $GITHUB_TOKEN
# Claude Codeを再起動
セキュリティ設定のポイント
シークレット情報の管理
❌ 避けるべき設定
{
"mcpServers": {
"github": {
"env": {
"GITHUB_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
✅ 推奨される設定
{
"mcpServers": {
"github": {
"env": {
"GITHUB_TOKEN": "${env:GITHUB_TOKEN}"
}
}
}
}
アクセス範囲の制限
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"${HOME}/safe-directory"
]
}
}
}
まとめ
Claude Code MCP設定は、適切な手順で行えば初心者でも簡単に導入できます。
設定の基本ステップ
- 設定ファイルの場所を確認
- JSON形式で設定を記述
- 環境変数を適切に設定
- Claude Codeを再起動
重要なポイント
- JSONの構文を正しく記述
- 環境変数でシークレット管理
- パスは環境変数を使用
- 設定後は必ず動作確認
次のステップ
- まずはファイルシステムMCPから試す
- 徐々に他のMCPサーバーを追加
- カスタムMCPの作成にチャレンジ