mcpField
B
bingdata

bingdata

ローカル
github.com/CloudCorpRecords検索02 日前に更新

bingdata について

bingdataは、HasDataのホスト型Bing MCPサーバーにつなぐローカルブリッジで、検索結果をJSONで返します。地域と言語などを指定した検索に対応し、オーガニック検索結果、関連検索、上流から返された広告枠やCopilotの回答を扱います。

主な機能

  1. 01Bing検索結果をJSONで取得
  2. 02場所や座標で検索を地域化
  3. 03市場、言語、安全検索の設定
  4. 04日付、端末、ページ位置による絞り込み

活用シーン

  1. 01検索語に対応するBing結果の取得
  2. 02地域と市場を指定した検索
  3. 03日付や端末による結果の制限
  4. 04関連検索や返された広告・Copilotコンテンツの確認

MCP 対応

取得済みの読み取り専用Bing検索ツールをMCPクライアントに公開し、HasDataのホスト型MCPサーバーへ呼び出しを転送して結果をそのまま返します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-bingdata": {
"command": "npx",
"args": [
"-y",
"@reneturcios/bingdata"
]
}
}
}
起動コマンドnpx -y @reneturcios/bingdata

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/bingdata0.1.0
ocighcr.io/cloudcorprecords/bingdata:0.1.0

ツール

1

掲載時のツール一覧 · 2 日前に更新

パラメーター型必須説明
qstringはいSERP をスクレイピングする検索語句を指定します。
ccenumいいえ検索対象の国を示す 2 文字の国コード。ar | au | at | be | br | ca | cl | dk | fi | fr | de | hk | in | id | it | jp | kr | my | mx | nl | nz | no | cn | pl | pt | ph | ru | sa | za | es | se | ch | tw | tr | gb | us
latstringいいえ検索起点の GPS 緯度。
lonstringいいえ検索起点の GPS 経度。
mktenumいいえ検索対象の国を示す 2 文字の国コード。es-ar | en-au | de-at | nl-be | fr-be | pt-br | en-ca | fr-ca | es-cl | da-dk | fi-fi | fr-fr | de-de | zh-hk | en-in | en-id | it-it | ja-jp | ko-kr | en-my | es-mx | nl-nl | en-nz | no-no | zh-cn | pl-pl | en-ph | ru-ru | en-za | es-es | sv-se | fr-ch | de-ch | zh-tw | tr-tr | en-gb | en-us | es-us
firstnumberいいえこのパラメーターは、スキップする検索結果の件数を指定し、ページネーションに使用します。たとえば、値が 1(デフォルト)の場合は結果の 1 ページ目、11 は 2 ページ目、21 は 3 ページ目を示します。
filtersstringいいえ日付に基づくオプションなど、さまざまなフィルターを適用して検索結果を絞り込めます。 - `ex1:"ez1"` – 過去 24 時間 - `ex1:"ez2"` – 過去 1 週間 - `ex1:"ez3"` – 過去 1 か月 複雑なフィルターを使用するには、Bing 検索を実行し、URL から filters パラメーターをコピーしてください。
setLangenumいいえユーザーインターフェースの言語と優先する検索結果の言語です。2 文字の言語コード(例:`en`、`de`)または地域/スクリプトのバリアント(例:`en-gb`、`zh-hans`、`pt-br`)を指定します。ar | bg | ca | zh-hans | zh-hant | hr | cs | da | nl | en | en-gb | et | fi | fr | de | he | hi | hu | it | jp | ko | lv | lt | ms | nb | pl | pt-br | pt-pt | ro | ru | sr | sk | sl | es | sv | th | tr | uk | vi
locationstringいいえ検索の起点となる位置を自由テキストで指定します(例:`Austin, Texas`)。結果を地域に合わせるため、位置情報は座標に変換されます。実際に近い結果を得るには、都市レベルで位置を指定してください。`lat` と `lon` の両方を指定した場合は、そちらが優先され、`location` は無視されます。省略した場合は、プロキシの位置が使用されることがあります。
deviceTypeenumいいえ検索に使用するデバイスの種類を指定します。desktop | mobile | tablet
safeSearchenumいいえ成人向けコンテンツのフィルタリングオプションです。off | moderate | strict

詳細

bingdata

bingdata は、ホスト型の HasData Bing MCP サーバーへの小さなローカルブリッジです。Bing の検索結果を JSON として返します。クエリを渡すと、そのクエリの Bing SERP を取得します。SERP には、タイトル、リンク、 スニペット、順位を含むオーガニック検索結果、関連検索、そして — 上流から返されるままの — 広告ブロックと Copilot の回答が含まれます。検索は、自由形式の場所または緯度/経度でローカライズでき、市場、 国、インターフェース言語、セーフサーチレベル、期間 フィルター、デバイスの種類、ページオフセットで調整できます。

このブリッジは検索結果を保存しません。ライブエンドポイントから取得したとおりに、上流 サーバーのツール一覧をローカルで提供し、各 ツール呼び出しを上流に転送して、結果を変更せずに返します。 取得した範囲は、読み取り専用の単一の取得処理です。 書き込み、メッセージング、支払いのツールは含まれていません。

ツール

  • hasdata_bing_serp_getSearchResults — Bing SERP を 1 件 取得します。必須:q(検索語)。任意: location(自由形式の検索元。座標に変換されます。 lat と lon の両方が指定された場合は無視され、 lat と lon が優先されます)、mkt(市場)、cc(国)、 setLang(インターフェース言語)、safeSearch (off/moderate/strict)、filters(Bing のフィルター式。過去 1 日/1 週間/1 か月の 期間フィルターを含みます)、deviceType(desktop/mobile/ tablet)、first(ページ送り用の結果オフセット: 1 は 1 ページ目、11 は 2 ページ目、21 は 3 ページ目)。 オーガニック検索結果(タイトル、url、スニペット、 表示 URL、順位)と関連検索を返します。

設定

  • HASDATA_BING_MCP_URL(任意)— 上流エンドポイントを 上書きします。デフォルトは https://mcp.hasdata.com/mcp?apis=bing です。(この 上書き用フックは、この再構築独自のラベル付き 再現です。)
  • HASDATA_API_KEY(任意)— 設定すると、すべての上流リクエストに 呼び出し元自身の HasData API キーを含む x-api-key: <key> ヘッダーを付与します。設定されていない場合、キーのヘッダーは送信されません。(ヘッダー名と環境変数名は、元の レジストリレコードで固定されています。この環境変数からキーを 転送する動作はラベル付きの再現です — 元の サーフェスはキーなしで取得されました。)
転送の仕組み

最初のツール呼び出し時に、クライアントは上流とのストリーミング可能な HTTP セッションを開きます。JSON-RPC の initialize リクエスト(protocolVersion 2025-03-26、 clientInfo name bingdata)を送信し、続いて notifications/initialized 通知、さらに呼び出し元の引数を 変更せずに含めた tools/call リクエストを送信します。上流が initialize に Mcp-Session-Id ヘッダーを付けて応答した場合、その値は セッションの後続リクエストすべてに引き継がれ、プロセスの 存続中は同じセッションが再利用されます。応答は通常の JSON または サーバー送信イベントとして届くことがあり、どちらも読み取ります。

上流からの成功結果は、上流が設定した isError フラグも含めて、 そのまま渡されます。失敗 — JSON-RPC エラー、2xx 以外の ステータス、読み取り不能な応答、または完了できないリクエスト — は、テキストが bingdata error: で始まる isError 結果として 返されます(この表示形式は、この再構築独自のラベル付き再現です)。

CLI

このツールは、1 つの JSON 引数文字列を取るサブコマンドとしても使用できます。

npx @reneturcios/bingdata hasdata_bing_serp_getSearchResults '{"q":"best coffee in san francisco","location":"San Francisco, California","mkt":"en-us","safeSearch":"moderate"}'
npx @reneturcios/bingdata --version

終了コード:成功時は 0、isError の 結果の場合は 1、使用方法のエラーの場合は 2 です。

MCP サーバー

npx -y @reneturcios/bingdata mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "bingdata": {
      "command": "npx",
      "args": ["-y", "@reneturcios/bingdata", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/bingdata
docker run --rm ghcr.io/cloudcorprecords/bingdata --version

コンテナのデフォルトコマンドは mcp なので、最初の形式は stdio MCP サーバーです。それ以外の引数は 通常どおり CLI に渡されます。

開発

npm install
npm run build
npm test
npm run dev

テストスイートは、スタブ化された JSON-RPC 上流に対してのみ実行されます — ライブネットワークへの呼び出しはありません。

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。