Claude DesktopでBrave Searchが動かない(MCP)
ClaudeのModel Context Protocol (MCP)機能により、NotionやBrave Searchなどの外部サービスとの連携が可能になりました。この記事では特に、Brave Search APIの連携でハマったポイントとその解決方法について解説します。
環境
- Mac Book Air(M2)
- Node.js v22.12.0
- Claude Desktop 0.7.5
設定
MCPの設定をするにはClaude Desktopの設定ファイル(claude_desktop_config.json)を編集します。
% cd "/Users/knziiy/Library/Application Support/Claude"
% code claude_desktop_config.json
そして内容は公式の以下のReadmeを元に設定します。
Notionは設定済みのためnotionの設定も記しています。
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-brave-search"
],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE"
}
},
"notion": {
"command": "/Users/knziiy/.local/share/mise/installs/node/22/bin/node",
"args": [
"/Users/knziiy/dev/git/mcp-notion-server/notion/build/index.js"
],
"env": {
"NOTION_API_TOKEN": "xxxxxxxx"
}
}
}
}
YOUR_API_KEY_HERE
の箇所に自分のBrave Search APIのAPI Keyを指定しておきます。
自分の環境でnpxは実行可能であることは確認済みです。
これで、Claude Desktopを再起動すると設定が反映されます。
エラー
Claude Desktopを起動すると以下のエラーが発生し、Brave Searchが利用できない状態となります:
Could not connect to MCP server brave-search
このエラーは、MCPサーバーとの接続が確立できないことを示しています。
トンカチのアイコンにMCPで利用できる機能(Tool)が表示されますが、Braveは表示されていません。
対応
1. リポジトリのクローンとビルド
原因まで特定していませんが、とりあえず私の環境ではClaude Desktopから相対パスでnpxで@modelcontextprotocol/server-brave-search
を指定するのはうまく動かないようです。
そこで、Notionと同様に予めtsをjsにトランスパイルしておき、直接nodeで起動する形にしてみます。
% git clone https://github.com/modelcontextprotocol/servers.git
% cd servers/src/brave-search
% npm i
% npm run build
% npm link
% ls dist
index.js
できました。
フルパスを確認します。
% cd dist
% pwd
/Users/knziiy/dev/git/servers/src/brave-search/dist
%
つまり上記の場合は /Users/knziiy/dev/git/servers/src/brave-search/dist/index.js
となります。
自身のnodeのパスを確認しておきます。
% which node
/Users/knziiy/.local/share/mise/installs/node/22/bin/node
2. 設定ファイルの更新
% cd "/Users/knziiy/Library/Application Support/Claude"
% code claude_desktop_config.json
{
"mcpServers": {
"brave-search": {
"command": "/Users/knziiy/.local/share/mise/installs/node/22/bin/node",
"args": [
"/Users/knziiy/dev/git/servers/src/brave-search/dist/index.js"
],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE"
}
},
"notion": {
"command": "/Users/knziiy/.local/share/mise/installs/node/22/bin/node",
"args": [
"/Users/knziiy/dev/git/mcp-notion-server/notion/build/index.js"
],
"env": {
"NOTION_API_TOKEN": "xxxxxxxx"
}
}
}
}
3. 動作確認
Claude Desktopを再起動すると、以下の機能が利用可能になります:
- brave_local_search
- brave_web_search
無事Brave Searchが利用可能となりました。
これでやっとBrave検索&NotionでのLLM無双が捗りますね!
Discussion