claude_desktop_config.json の場所と書き方|Claude Desktop の MCP 設定
🚀 AIアシスタントの新時代が到来!
こんにちは!エンハンスド業務効率化チームです。
「もしAIアシスタントが、あなたのGitHub、Google Drive、Slackに直接アクセスできたら?」
そんな夢のような機能が、ついに現実になりました!Anthropicが発表したClaude Desktop Extensionsは、MCP(Model Context Protocol)を使って、様々な外部ツールとシームレスに連携できる革新的な機能です。
今回は、この画期的なアップデートの全貌と、実際の設定方法を分かりやすく解説します!
🎯 Desktop Extensionsって何がすごいの?
従来のClaude Desktop
テキストベースの対話のみ
ローカルファイルへのアクセスは限定的
外部ツールとの連携は手動コピペ
新しいClaude Desktop with Extensions
GitHubのリポジトリを直接操作
Google Driveのファイルを読み込み・編集
Slackのメッセージを確認・送信
Postgresデータベースにクエリ実行
その他、無限の可能性!
🔥 実際の活用シーンがヤバすぎる!
シーン1)開発者の朝のルーティン
あなた:「昨日のPRレビューコメントをまとめて、対応すべきものをリストアップして」
Claude(GitHub Extension使用):
「3つのPRにレビューコメントがありました:
1. PR #234:変数名の修正(優先度:高)
2. PR #235:テストケースの追加(優先度:中)
3. PR #236:ドキュメント更新(優先度:低)
対応用のブランチも作成しましょうか?」
シーン2)マーケティングチームの効率化
あなた:「Google Driveの売上レポートを分析して、来月の施策を提案して」
Claude(Google Drive Extension使用):
「売上レポートを分析しました。
- 先月比15%増加
- 特にオンラインチャネルが好調(+32%)
来月の提案
1. オンライン広告予算を20%増額
2. 成功したキャンペーンの横展開
詳細な施策案をドキュメントにまとめますか?」
📦 Desktop Extensionsの仕組み
MCP(Model Context Protocol)とは?
MCPは、AIモデルと外部ツールを安全に接続するためのオープンプロトコルです。
graph LR
A[Claude Desktop] -->|MCP| B[Extension Server]
B --> C[GitHub API]
B --> D[Google Drive API]
B --> E[Slack API]
B --> F[その他のツール]
主な特徴
セキュア:認証情報は暗号化して保存
柔軟:様々なツールに対応可能
高速:リアルタイムでデータ取得
簡単:GUI操作で設定完了
🛠️ 実際に設定してみよう!超簡単セットアップガイド
🎬 まずは動画で流れを確認!
実際の設定画面を使った解説動画で、セットアップの流れを把握しましょう。
Step 1)Claude Desktopを最新版にアップデート
Claude Desktopを起動
設定メニューから「アップデートを確認」
最新版(v0.7.0以降)にアップデート ※Extension機能対応版
Step 2)MCPサーバーのセットアップ方法を選択
MCPサーバーをセットアップする方法は3つあります:
方法1:npxを使用(推奨)
最も簡単で、Node.jsがインストールされていれば追加設定不要。
方法2:ローカルインストール
npm install -g @modelcontextprotocol/server-github
方法3:Docker経由
セキュリティを重視する環境では、Dockerコンテナ内でMCPサーバーを実行。
Step 3)claude_desktop_config.jsonの編集
実は、現在のExtensionsはJSON設定ファイルで管理されています!
設定ファイルの場所
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
💡 Pro Tip: 設定ファイルの開き方
Mac/Linux:
# エディタで直接開く
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
# または
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows:
# PowerShellから
notepad $env:APPDATA\Claude\claude_desktop_config.json
Step 4)使いたいExtensionを設定
利用可能なExtension一覧から、使いたいものを選択:
🐙 GitHub Extension(mcp-server-github)
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_github_token_here"
}
}
}
}
必要な権限設定
repo- プライベートリポジトリへのアクセスread:org- 組織情報の読み取りread:user- ユーザー情報の読み取り
📁 Google Drive Extension(mcp-server-gdrive)
{
"mcpServers": {
"gdrive": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-gdrive"],
"env": {
"GDRIVE_CLIENT_ID": "your_client_id",
"GDRIVE_CLIENT_SECRET": "your_client_secret",
"GDRIVE_REDIRECT_URI": "http://localhost:3000/oauth/callback"
}
}
}
}
OAuth設定の手順
Google Cloud Consoleでプロジェクト作成
Google Drive APIを有効化
OAuth 2.0クライアントIDを作成
リダイレクトURIを設定
💬 Slack Extension(mcp-server-slack)
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
"SLACK_USER_TOKEN": "xoxp-your-user-token"
}
}
}
}
Slack App設定
api.slack.comでアプリ作成
Bot Token Scopesを設定(channels:read, chat:write等)
ワークスペースにインストール
Step 5)複数のExtensionを同時に設定
複数のツールを使いたい場合は、以下のように設定します。
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_token"
}
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {
"DATABASE_URL": "postgresql://user:password@localhost:5432/mydb"
}
}
}
}
Step 6)Claude Desktopを再起動
設定ファイルを保存したら、Claude Desktopを完全に終了して再起動します。
Step 7)動作確認
あなた:「GitHubの最新のissueを3つ表示して」
Claude:「リポジトリ owner/repo の最新issueです:
1. #456: ビルドエラーの修正
2. #455: ドキュメントの更新
3. #454: 新機能の提案」
🎉 設定成功のサイン
Claude Desktopの画面上部に接続されたExtensionのアイコンが表示
チャット入力欄の近くに利用可能なツールが表示
「MCP Connected」の通知が表示
🆕 注目の新Extension紹介
📂 Filesystem Extension
ローカルファイルへの読み書きアクセスを提供。特定のディレクトリのみアクセス可能に制限できます。
{
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem",
"/path/to/allowed/directory"]
}
}
🐘 PostgreSQL Extension
データベースに直接クエリを実行。分析やレポート作成が爆速に!
{
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {
"DATABASE_URL": "postgresql://user:password@host:5432/dbname"
}
}
}
🔍 Brave Search Extension
最新のWeb情報を検索。Claude Desktopから直接Web検索が可能に!
{
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "your_brave_api_key"
}
}
}
🎨 Puppeteer Extension
Webページのスクリーンショット取得やPDF生成が可能に!
{
"puppeteer": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-puppeteer"]
}
}
📊 Google Sheets Extension
スプレッドシートの読み書きを直接実行!
{
"google-sheets": {
"command": "npx",
"args": ["-y", "mcp-server-google-sheets"],
"env": {
"GOOGLE_SHEETS_CLIENT_ID": "your_client_id",
"GOOGLE_SHEETS_CLIENT_SECRET": "your_client_secret"
}
}
}
🎨 カスタムExtensionの作成方法
MCPサーバーの基本構造
// my-mcp-server.ts
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
const server = new Server(
{
name: 'my-custom-server',
version: '1.0.0',
},
{
capabilities: {
tools: {},
resources: {},
},
}
);
// ツールの定義
server.setRequestHandler('tools/list', async () => ({
tools: [
{
name: 'fetch_data',
description: 'カスタムデータを取得',
inputSchema: {
type: 'object',
properties: {
query: { type: 'string' }
},
required: ['query']
}
}
]
}));
// ツールの実装
server.setRequestHandler('tools/call', async (request) => {
if (request.params.name === 'fetch_data') {
const { query } = request.params.arguments;
// 実際の処理
return {
content: [
{
type: 'text',
text: `データ: ${query}の結果`
}
]
};
}
});
// サーバー起動
const transport = new StdioServerTransport();
server.connect(transport).catch(console.error);
実装例)社内システム連携
// company-systems-mcp.ts
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import fetch from 'node-fetch';
const server = new Server(
{
name: 'company-systems',
version: '1.0.0',
},
{
capabilities: {
tools: {},
},
}
);
// ツール定義
server.setRequestHandler('tools/list', async () => ({
tools: [
{
name: 'search_wiki',
description: '社内Wikiを検索',
inputSchema: {
type: 'object',
properties: {
query: { type: 'string', description: '検索クエリ' }
},
required: ['query']
}
},
{
name: 'get_employee_info',
description: '社員情報を取得',
inputSchema: {
type: 'object',
properties: {
employeeId: { type: 'string', description: '社員ID' }
},
required: ['employeeId']
}
},
{
name: 'create_ticket',
description: 'サポートチケットを作成',
inputSchema: {
type: 'object',
properties: {
title: { type: 'string' },
description: { type: 'string' },
priority: { type: 'string', enum: ['low', 'medium', 'high'] }
},
required: ['title', 'description']
}
}
]
}));
// ツール実装
server.setRequestHandler('tools/call', async (request) => {
const { name, arguments: args } = request.params;
switch (name) {
case 'search_wiki':
const wikiResults = await fetch(
`https://wiki.company.com/api/search?q=${args.query}`,
{ headers: { 'Authorization': `Bearer ${process.env.WIKI_TOKEN}` } }
);
const data = await wikiResults.json();
return {
content: [{
type: 'text',
text: `検索結果(${data.length}件):\n` +
data.map(d => `- ${d.title}: ${d.url}`).join('\n')
}]
};
case 'get_employee_info':
// 社員情報取得の実装
break;
case 'create_ticket':
// チケット作成の実装
break;
}
});
const transport = new StdioServerTransport();
server.connect(transport).catch(console.error);
package.jsonの設定
{
"name": "company-systems-mcp",
"version": "1.0.0",
"type": "module",
"bin": {
"company-systems-mcp": "./dist/index.js"
},
"scripts": {
"build": "tsc",
"dev": "tsx watch src/index.ts"
},
"dependencies": {
"@modelcontextprotocol/sdk": "^1.0.0",
"node-fetch": "^3.3.2"
},
"devDependencies": {
"@types/node": "^20.0.0",
"typescript": "^5.0.0",
"tsx": "^4.0.0"
}
}
💡 実践的な活用アイデア10選
1. 開発効率化
PRレビューの自動要約
コードの問題点を自動検出
ドキュメント生成の自動化
2. プロジェクト管理
タスクの進捗状況を可視化
締切アラートの自動生成
チームメンバーの負荷分析
3. カスタマーサポート
過去の対応履歴を即座に検索
類似問題の解決策を提案
FAQ自動生成
4. マーケティング
競合分析レポートの作成
SNS投稿の最適化提案
キャンペーン効果の測定
5. 営業支援
顧客情報の統合管理
提案書の自動生成
商談履歴の分析
6. 人事・採用
履歴書のスクリーニング
面接質問の生成
社員満足度の分析
7. 財務・経理
経費精算の自動チェック
予算管理レポート作成
異常値の検出
8. 法務・コンプライアンス
契約書のリスク分析
規約違反の検出
法的文書の要約
9. 研究・開発
論文の要約と引用管理
実験データの分析
特許調査の効率化
10. 教育・トレーニング
個別学習プランの作成
理解度テストの自動生成
学習進捗の可視化
🔒 セキュリティとプライバシー
Anthropicの取り組み
エンドツーエンド暗号化:すべての通信を暗号化
ローカル処理優先:機密データはローカルで処理
権限の細分化:必要最小限のアクセス権限
監査ログ:すべてのアクセスを記録
ベストプラクティス
認証情報の管理
定期的なトークンの更新
強力なパスワードの使用
二要素認証の有効化
アクセス制限
必要なリポジトリのみアクセス許可
機密ファイルの除外設定
時間制限の設定
監視とレビュー
アクセスログの定期確認
異常なアクティビティの検知
定期的な権限見直し
⚠️ トラブルシューティング
よくある問題と解決方法
1. 「Extension not found」エラー
原因: npxのキャッシュ問題
解決策:
npx clear-npx-cache
# または
npm cache clean --force
2. 認証エラー
原因: トークンの権限不足
解決策: 必要な権限をすべて付与したトークンを再生成
3. 接続タイムアウト
原因: ファイアウォールまたはプロキシ設定
解決策:
企業ネットワークの場合は、IT部門に相談
プロキシ設定を確認
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_token",
"HTTP_PROXY": "http://proxy.company.com:8080",
"HTTPS_PROXY": "http://proxy.company.com:8080"
}
}
}
}
4. Extensionが表示されない
原因: Claude Desktopのバージョンが古い
解決策: v0.7.0以降にアップデート
5. 「Permission denied」エラー
原因: ファイルシステムの権限問題
解決策:
# Mac/Linux
chmod 644 ~/Library/Application\ Support/Claude/claude_desktop_config.json
6. JSONパースエラー
原因: 設定ファイルの構文エラー
解決策: JSONバリデーターで確認
# jqコマンドで検証
jq . ~/Library/Application\ Support/Claude/claude_desktop_config.json
7. MCPサーバーが起動しない
原因: Node.jsのバージョン不適合
解決策: Node.js 18以上をインストール
node --version # v18.0.0以上を確認
nvm install 18 # 必要に応じてインストール
🚀 今すぐ始める3ステップ
1. Claude Desktopをアップデート
最新版をダウンロードして、新機能を有効化。
2. 必要なExtensionをインストール
まずは1つから始めて、徐々に拡張。
3. ワークフローを最適化
日常業務で使いながら、最適な使い方を発見。
🎯 まとめ
Claude Desktop Extensionsは、AIアシスタントの可能性を大きく広げる革新的な機能です。MCPによる安全な連携により、これまで手作業だった多くのタスクを自動化できます。
特に注目すべきは:
簡単な設定:GUIで数分で完了
強力な連携:主要ツールに対応
カスタマイズ性:独自Extension作成可能
セキュリティ:企業利用も安心
今こそ、あなたのワークフローをAIで革新する時です!
📊 Extension対応状況(2025年6月現在)
Extension状態主な機能必要な設定GitHub✅ 安定版リポジトリ操作、PR管理、Issue管理Personal Access TokenGoogle Drive✅ 安定版ファイル読み書き、検索OAuth 2.0Slack✅ 安定版メッセージ送受信、チャンネル管理Bot/User TokenPostgreSQL✅ 安定版データベースクエリ実行接続文字列Filesystem✅ 安定版ローカルファイル操作ディレクトリパスBrave Search✅ 安定版Web検索API KeyPuppeteer✅ 安定版スクリーンショット、PDF生成なしGoogle Sheets🚧 ベータ版スプレッドシート操作OAuth 2.0Gmail🔜 開発中メール送受信OAuth 2.0Notion🔜 開発中ページ作成・編集API KeyAWS🔜 計画中AWS リソース操作IAM認証Azure🔜 計画中Azure リソース操作Service Principal
🚀 高度な設定とTips
環境変数の管理
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}" // 環境変数から読み込み
}
}
}
}
デバッグモードの有効化
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github", "--debug"],
"env": {
"DEBUG": "mcp:*",
"GITHUB_PERSONAL_ACCESS_TOKEN": "your_token"
}
}
}
}
複数アカウントの管理
{
"mcpServers": {
"github-personal": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "personal_token"
}
},
"github-work": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "work_token"
}
}
}
}
🔗 参考リンク
📧 お問い合わせ
エンハンスド株式会社では、Claude Desktop Extensionsの導入支援やカスタムExtension開発を承っています。お気軽にお問い合わせください。
今なら初回相談無料!
#ClaudeDesktop #MCP #AI業務効率化 #DesktopExtensions #Anthropic
「生成AI活用」に関わるエンハンスドの事業
AI活用・無料相談
その業務、AIを使えばもっと効率化できます
メール対応や書類作成、データ入力、レポート集計。毎日の定型業務は、AIと自動化の組み合わせで大きく減らせます。エンハンスドが、貴社に合った進め方をご提案します。
- 業務の棚卸しと無料診断
- AI活用と自動化の具体プランのご提案
- 導入から社内定着まで専門チームが伴走
ご相談は何度でも無料です。まずはお気軽にお問い合わせください。
