Brave Search MCPサーバーの設定ガイド — Claude Desktopでの使い方
Brave Search MCPサーバーをClaude Desktopに設定する手順です。APIキーの取得、config.jsonの書き方、8種類の検索ツール、旧パッケージからの移行点まで扱います。
Brave Search MCPサーバーは、BraveのWeb検索・画像検索・動画検索・ニュース検索・ローカル検索などをClaude Desktopから呼び出せるようにするMCPサーバーです。Anthropicが公開していた参照実装@modelcontextprotocol/server-brave-searchは、npm上で非推奨(deprecated)です。新規の設定には向きません。本稿ではBrave公式の現行パッケージ@brave/brave-search-mcp-serverを使います。APIキーの取得から設定ファイルへの追記、ツールの既定値、旧パッケージからの移行、つまずきやすい点まで順に進めます。
Brave Search MCPサーバーとは
Brave Search MCPサーバーとは、Brave Search APIの検索機能をMCP経由でAIエージェントに提供する、Brave Software公式のnpmパッケージです。GitHubのbrave/brave-search-mcp-serverリポジトリで開発が続いています。npmの最新バージョンは2.1.4です。
提供するツールは8種類です。Web検索・ローカル検索・動画検索・画像検索・ニュース検索・地点検索(Place)の6種類に加えて、検索結果をAIが要約するSummarizerと、RAG向けにWebコンテンツを整形して返すLLM Contextがあります。検索結果そのものを返すツールと、AI向けに加工して返すツールが分かれている点が特徴です。
旧パッケージのnpmページには「Package no longer supported」と表示されています。npmの最新タグは0.6.2です。
設定の流れ
Claude Desktopに追加するまで
- 1
APIキーを発行する
Brave Search APIでアカウントを登録し、開発者ダッシュボードでプランを選んでキーを発行します。
- 2
設定ファイルを開く
Claude Desktopの「Settings」→「Developer」→「Edit Config」から
claude_desktop_config.jsonを開きます。 - 3
mcpServersに追記する
次節のJSONを追記し、
YOUR_API_KEY_HEREをキーに置き換えます。 - 4
完全に終了して再起動する
設定を読み込ませるため、Claude Desktopを完全に終了してから起動し直します。
- 5
Web検索が必要な質問を送る
「最近のAI関連ニュースを検索して」と送ると、外部ツールの使用を許可するか尋ねられます。許可するとBrave Search APIへのリクエストが飛びます。
設定ファイルの場所はOSごとに決まっています。ファイル自体の構造やmcpServersキーの基本はClaude Desktop MCP設定ガイドと共通です。
| OS | パス |
|---|---|
| macOS | パス~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | パス%APPDATA%\Claude\claude_desktop_config.json |
設定ファイルの書き方
追記する内容は次のとおりです。通信方式には標準入出力(stdio)を明示します。
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": ["-y", "@brave/brave-search-mcp-server", "--transport", "stdio"],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}Node.jsを入れたくない場合は、Dockerでも同じサーバーを起動できます。
{
"mcpServers": {
"brave-search": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "BRAVE_API_KEY", "docker.io/mcp/brave-search"],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}GitHubの設定例と--transportが違う理由
リポジトリのREADMEは、同じ@brave/brave-search-mcp-serverのnpx設定を利用先ごとに載せています。Claude Desktop向けの例は--transport http、VS Codeとfx向けの例は--transport stdioです。2.x系の既定はstdioで、HTTPにするには--transport httpか環境変数BRAVE_MCP_TRANSPORT=httpを指定する必要があります。
READMEの説明によると、1.xから2.xへの変更点の一つが「既定の通信方式をstdioにした」ことです。HTTPで起動したサーバーは既定で127.0.0.1の8080番ポートで待ち受けます。本稿の設定は、VS Codeやfxの例と同じstdioに揃えています。
HTTPを選ぶなら、BRAVE_MCP_PORTでポートを変えられます。待ち受けのホストは既定で127.0.0.1に限られ、BRAVE_MCP_HOSTで広げると認証のないエンドポイントが公開されます。READMEは信頼できるネットワークでのみ使うよう注意しています。
APIキーをファイルに分ける
設定ファイルにキーを直接書きたくない場合は、BRAVE_API_KEY_FILEにキーを書いたファイルのパスを指定する方法があります。READMEによると、この変数が設定されていればBRAVE_API_KEYより優先されます。
"env": {
"BRAVE_API_KEY_FILE": "/path/to/brave-api-key.txt"
}キーの取り扱い全般はMCPセキュリティガイドでも扱っています。
料金と無料枠
料金プランは2種類です。どちらにも毎月$5分のクレジットが付きます。
| プラン | 料金 | 上限 | 内容 |
|---|---|---|---|
| Search | 料金$5 / 1,000リクエスト | 上限50クエリ/秒 | 内容検索結果とLLM向けコンテキスト |
| Answers | 料金$4 / 1,000リクエスト + $5 / 100万トークン | 上限2クエリ/秒 | 内容引用付きの要約回答 |
Searchなら$5のクレジットは1,000リクエスト相当です。Claude Desktopで対話的に使う限り、50クエリ/秒の上限に届く場面はほとんどありません。
Braveの2つのページで、無料枠の説明が食い違っています。料金ページは「毎月$5分のクレジット」と書きますが、Claude Desktop向けガイドは「無料プランは個人利用に十分(2,000 free queries)」とあります。ガイドの公開日は2025年5月6日です。月間の無料枠は、料金ページの$5分のクレジットを基準に見積もるのが安全です。
使えるツールと既定値
登録されるツールは8種類です。READMEに載っているパラメーターの既定値を合わせて示します。
| ツール名 | 検索対象 | 既定値・制限 |
|---|---|---|
brave_web_search | 検索対象Web全般 | 既定値・制限400文字・50語まで。1ページ10件(最大20)、offsetは最大9 |
brave_local_search | 検索対象店舗・施設 | 既定値・制限READMEはProプランが前提と記し、それ以外はWeb検索にフォールバック |
brave_video_search | 検索対象動画 | 既定値・制限1ページ20件(最大50) |
brave_image_search | 検索対象画像 | 既定値・制限50件(最大200)、safesearchはstrictが既定。base64は返さない |
brave_news_search | 検索対象ニュース | 既定値・制限freshnessの既定はpd(直近24時間)、20件(最大50) |
brave_place_search | 検索対象地点情報 | 既定値・制限座標かlocationで指定。件数は20(最大50)、半径はメートル |
brave_summarizer | 検索対象要約 | 既定値・制限brave_web_searchをsummary: trueで実行して得たキーを渡す |
brave_llm_context | 検索対象RAG向け抽出 | 既定値・制限URL数1〜50、トークン数1024〜32768で上限を指定 |
brave_web_searchのcountryとsearch_langは、既定がUSとenです。日本語の結果が欲しい場合は、チャットで「日本向けに、日本語で検索して」と伝えて、Claudeがこれらの値を指定できるようにします。
Web検索の絞り込みパラメーター
brave_web_searchには、結果を絞る引数がいくつかあります。freshnessはpd(24時間)・pw(1週間)・pm(1か月)・py(1年)か、日付範囲で指定します。result_filterの既定はwebとqueryで、結果の種類を限定します。
gogglesはBraveの検索結果を独自のルールで並べ替える仕組みです。extra_snippetsによる追加の抜粋はProプラン限定とされています。summary: trueを付けると、Summarizerに渡すキーが結果に含まれます。
Summarizer側の引数はentity_infoとinline_referencesで、どちらも既定はfalseです。出典のURLを要約に差し込みたいときはinline_referencesを有効にします。
LLM Contextは、検索結果をAIが読みやすい形に抽出して返すツールです。maximum_number_of_urlsとmaximum_number_of_tokensで、文脈に入れる量の上限を決められます。コンテキストを使いすぎたくない場合は、トークン数を小さめに指定します。
ログの詳しさはBRAVE_MCP_LOG_LEVELで変えられ、既定はinfoです。接続の失敗を調べるときはdebugに上げます。
旧パッケージからの移行
パッケージの違い
旧パッケージ
@modelcontextprotocol/server-brave-search(Anthropic参照実装)。ツールはWeb検索とローカル検索の2種類のみ。
現行パッケージ
@brave/brave-search-mcp-server。8種類のツール。2.xの既定はstdioで、画像検索はbase64を返さずURLベースの応答に軽量化(1.xはbase64データを含んでいた)。
envのBRAVE_API_KEYは共通なので、キーを取り直す必要はありません。argsのパッケージ名を差し替えるだけで移行できます。
Braveの公開ガイドは旧パッケージを載せたままです。Claude Desktop向けガイドは公開日が2025年5月6日で、argsに@modelcontextprotocol/server-brave-searchを載せたままです。接続後の画面の説明も「金づち(hammer)アイコン」を前提にしています。
よくあるつまずき
APIキーのエラーが返る。無料クレジットを使い切っていないか、キーが想定したプランに紐づいているかをダッシュボードで確認します。コピー時に前後へ空白が混ざるミスも典型です。
ツールが表示されない。設定の保存後にClaude Desktopを完全終了していないか、JSONの構文エラーがないかを確認します。GitHubの設定例をそのまま貼って--transport httpが入っている場合は、本稿の設定のようにstdioへ揃えて試します。
Node.jsのインストール方法で失敗する。Braveのガイドによると、Windowsでnode installerを使ったユーザーに、MCPの起動で問題が出た報告があります。
Summarizerが動かない。brave_summarizerは単体では使えません。先にbrave_web_searchをsummary: true付きで実行し、返ってきたsummary keyを渡す2段階の呼び出しです。
無料枠を超える。月$5分のクレジットを超えた利用は、料金ページの単価($5 / 1,000リクエスト等)が基準になります。テスト中はダッシュボードで使用量を確かめておきます。
HTTPで起動してポートが衝突する。--transport httpで起動した場合、既定の8080番が別プロセスに使われていると失敗します。BRAVE_MCP_PORTで番号を変えます。stdioなら発生しない問題です。
まとめ
Claude Desktopで使うなら、@brave/brave-search-mcp-serverをstdioで起動する設定が出発点になります。READMEとBraveのガイドは更新時期がずれているので、迷ったらリポジトリのREADMEと料金ページの記述を優先します。Claude Codeで同じサーバーを使うなら、Claude Code MCP設定ガイドの手順で追加できます。