気軽に楽しくプログラムと遊ぶ

自分が興味があってためになるかもって思う情報を提供しています。

MCPとは

概要

MCP(Model Context Protocol) は、AIモデルが外部のツールやデータソースと安全に連携するための標準プロトコルです。Anthropicが開発したオープンな仕様で、Claudeが様々な外部システムと対話できるようにします。

主な特徴

  • 標準化されたインターフェース: 一貫した方法でツールと接続
  • セキュリティ: 安全な権限管理とアクセス制御
  • 拡張性: 新しいツールやサービスを簡単に追加可能
  • 双方向通信: リアルタイムでのデータ交換

用途

1. ファイルシステム操作

  • ローカルファイルの読み書き、移動、コピー
  • フォルダ構造の参照と操作

2. データベース連携

  • SQLクエリの実行
  • データの検索、更新、挿入

3. Web API連携

  • REST APIの呼び出し
  • 外部サービスとの統合

4. 開発ツール

  • Git操作
  • コード実行環境
  • テスト実行

5. その他

  • メール送信
  • カレンダー連携
  • 計算処理

サーバーインストール方法

前提条件

# Node.jsがインストールされていることを確認
node --version
npm --version

1. 公式サーバーのインストール

ファイルシステムサーバー

npm install -g @modelcontextprotocol/server-filesystem

SQLiteサーバー

npm install -g @modelcontextprotocol/server-sqlite

Gitサーバー

npm install -g @modelcontextprotocol/server-git

2. Claude Desktop設定

~/Library/Application Support/Claude/claude_desktop_config.json を作成/編集:

{
  "mcpServers": {
    "filesystem": {
      "command": "node",
      "args": [
        "/usr/local/lib/node_modules/@modelcontextprotocol/server-filesystem/build/index.js",
        "/Users/yourusername/Documents"
      ]
    },
    "sqlite": {
      "command": "node",
      "args": [
        "/usr/local/lib/node_modules/@modelcontextprotocol/server-sqlite/build/index.js",
        "/path/to/your/database.db"
      ]
    }
  }
}

3. 自作サーバー例(Python

# MCPライブラリのインストール
pip install mcp

# または開発版
pip install git+https://github.com/modelcontextprotocol/python-sdk.git

インストール確認

1. パッケージ確認

# グローバルパッケージ一覧
npm list -g --depth=0

# 特定パッケージの確認
npm list -g @modelcontextprotocol/server-filesystem

2. 実行テスト

# サーバーが起動するかテスト
node $(npm root -g)/@modelcontextprotocol/server-filesystem/build/index.js --help

3. Claude Desktopでの確認

  1. Claude Desktopを再起動
  2. 新しい会話で以下を試す:
    • "ローカルファイルにアクセスできますか?"
    • "現在のディレクトリの内容を表示して"

4. 設定ファイル確認

# 設定ファイルが正しく配置されているか確認
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json

トラブルシューティング

よくあるエラー

# 権限エラーの場合
sudo npm install -g @modelcontextprotocol/server-filesystem

# パスが見つからない場合
npm config get prefix
npm root -g

# 設定ファイルの構文エラー確認
python -m json.tool ~/Library/Application\ Support/Claude/claude_desktop_config.json

成功時の確認方法

  • Claude Desktopでファイル操作が可能になる
  • npm list -g でパッケージが表示される
  • サーバーが --help オプションで正常に応答する

どの段階で問題が発生しているか教えていただければ、より具体的なサポートができます。