こんにちは。AI・生成AIを経営・事業に活かすメディア「AINOW」のAINOW編集部です。ClaudeのModel Context Protocol(MCP)は、MCPサーバーを通してClaude Desktopと連携し、標準入力を介して高度なAIエージェントとのやり取りを可能にする革新的な仕組みです。本記事では、MCP導入に必要なツール(Claude Desktopアプリ、Node.js、Python、SQLite)からMCPサーバーの設定方法、テスト実行の手順、そしてPoC(概念実証)段階での精度確認やPythonバージョンアップのポイントまで、包括的な導入ガイドをご紹介します。
1. 必要なツールのインストール
まず、以下のツールをインストールする必要があります。
- Claude Desktopアプリ:公式サイトからダウンロードし、インストールします。
- Node.js:MCPサーバーを動かすために必要です。公式サイトから最新の安定版をインストールしてください。
- Python:MCPの一部機能に必要です。Pythonの公式サイトからインストールします。
- SQLite:データベースとして使用します。SQLiteの公式サイトからダウンロードしてインストールします。
2. MCPサーバーの設定
次に、MCPサーバーを設定します。以下の手順に従ってください:
- MCPサーバーのインストール:Node.jsを使用して、MCPサーバーをインストールします。
node build/index.js
テストした結果、ちゃんとレスポンスが返ってくるようになりました。
node build/index.js < request.json
Starting MCP server...
MCP server is running. Provide JSON requests via stdin.
listResources handler invoked
{"result":{"resources":[{"uri":"note:///1","mimeType":"text/plain","name":"First Note","description":"A text note: First Note"},{"uri":"note:///2","mimeType":"text/plain","name":"Second Note","description":"A text note: Second Note"}]},"jsonrpc":"2.0","id":2}
前提条件
- Claude Desktopがインストール済みであること
- MCPサーバーがローカルで動作し、
node build/index.js
で起動可能な状態になっていること - MCPサーバーが標準入出力(Stdio)を通してMCPプロトコルでやり取りできる状態であること
- 設定ファイルの作成:
claude_desktop_config.json
という設定ファイルを作成し、必要な設定を記述します。具体的には、MCPサーバーのポート番号やデータベースのパスを指定します。 - 基本的に前提条件ができていれば以下のようなコードが書かれているので、あまり修正する必要がない。
{
"mcpServers": {
"yes": {
"command": "node",
"args": [
"/Users/xxx/Documents/dev/my-mcp-project(プロジェクト名)/build/index.js"
]
}
}
}
3. Claude Desktopの設定
Claude Desktopアプリを開き、以下の手順で設定を行います:
- アプリの設定を開く:メニューから「Settings」を選択し、「Developer」タブに移動します。
- MCPサーバーの設定:先ほど作成した設定ファイルのパスを指定します。
セッティングが完了していると以下のような画像になっている。
4. MCP サーバーの起動
設定が完了したら、MCPサーバーを起動します。ターミナルで以下のコマンドを実行します。起動すると以下のような状態になるので、これで起動が完了しました。
node /Users/xxx/Documents/dev/my-mcp-project/build/index.js
Starting MCP server...
MCP server is running. Provide JSON requests via stdin.
5. Claude Desktopの再起動
MCPサーバーが正常に起動したら、Claude Desktopアプリを再起動します。これにより、MCPサーバーとの接続が確立されます。
6. 動作確認
MCP関連UIの確認:
Claude DesktopがMCPサーバーを認識すると、UI上にハンマーアイコン(ツールアイコン)や「Resources」などの項目が表示される場合があります。
- ツール一覧(listToolsが有効な場合)が見られるUIがあるか
- リソース一覧(listResourcesが有効な場合)が参照できるUIがあるか
これらのUI要素は、Claude Desktop内のサイドバーやツールバーに現れることがあります。設定後初めてMCPサーバーが有効になると、画面内にMCP関連のアイコンが追加されていることが多いです。
ツールを利用してみるテスト
Use the create_note tool to create a new note titled "My Test Note" with the content "This is a test".
上記のコマンドをClaude Desktopで打ち込むと以下のようなモーダルが立ち上がり、noteが作成されました。
ローカルのデータベースに問い合わせるテストーSQLite
Pythonバージョンを確認
python --version
または python3 --version
で現在のPythonバージョンを確認します。
現在3.9.6が使用されているので、3.10以降にアップグレードが必要です。
Pythonのアップグレード
macOSの場合、pyenv
やHomebrewでPython 3.10以降をインストールすることが可能です。
例: Homebrewを使う場合
brew install python@3.11
インストール後、which python3
で新しいPythonが正しくパスに通っているか確認します。
uvx環境でPythonバージョンが反映されるようにする
uvx
がどのように環境を解決しているか不明ですが、新しいPythonバージョンがPATH
で優先されるよう、シェルを再起動したり、pyenv
を使用している場合はpyenv global 3.11.x
などでグローバルバージョンを設定してください。
再度コマンドを試す
Pythonをアップグレードしたら、
uvx mcp-server-sqlite --db-path /Users/xxx/test.db
を再度実行してみてください。
これでPythonバージョン要件が満たされれば、依存関係が正しく解決され、mcp-server-sqlite
が実行可能になるはずです。
Claude Desktopとの再連携
mcp-server-sqlite
が正常に起動できるようになったら、claude_desktop_config.json
で設定したサーバーを認識するためにClaude Desktopを再起動し、SQLiteデータベース内のリソースが表示されるか再度試してみてください。
導入時の注意点
MCPの導入にあたっては、以下の追加情報も考慮することが重要です。
- MCPのバージョン確認:MCPの最新バージョンを使用することが推奨されます。公式サイトで最新のリリースノートを確認し、必要に応じてアップデートを行ってください。
- 依存関係の確認:Node.jsやPythonのバージョンがMCPの要件を満たしているか確認します。特に、Node.jsはLTS(Long Term Support)バージョンを使用することが望ましいです。
- データベースの初期設定:SQLiteを使用する場合、初期データベースの作成やスキーマの設定が必要です。これには、MCPのドキュメントに従ってSQLスクリプトを実行することが含まれます。
- セキュリティ設定:MCPサーバーを公開する場合、適切なセキュリティ設定を行うことが重要です。ファイアウォールの設定やSSL/TLSの導入を検討してください。
これらのステップを踏むことで、よりスムーズにMCPを導入し、運用することができます。
連携できるツール
- AWS KB Retrieval – Retrieval from AWS Knowledge Base using Bedrock Agent Runtime
- Brave Search – Web and local search using Brave’s Search API
- EverArt – AI image generation using various models
- Everything – Reference / test server with prompts, resources, and tools
- Fetch – Web content fetching and conversion for efficient LLM usage
- Filesystem – Secure file operations with configurable access controls
- Git – Tools to read, search, and manipulate Git repositories
- GitHub – Repository management, file operations, and GitHub API integration
- GitLab – GitLab API, enabling project management
- Google Drive – File access and search capabilities for Google Drive
- Google Maps – Location services, directions, and place details
- Memory – Knowledge graph-based persistent memory system
- PostgreSQL – Read-only database access with schema inspection
- Puppeteer – Browser automation and web scraping
- Sentry – Retrieving and analyzing issues from Sentry.io
- Sequential Thinking – Dynamic and reflective problem-solving through thought sequences
- Slack – Channel management and messaging capabilities
- Sqlite – Database interaction and business intelligence capabilities
- Time – Time and timezone conversion capabilities