bing-webmaster-mcp · 7 data tools · read-only except URL submission

Bing Webmaster Tools,
as an MCP server.

The neglected half of most sites' search data. Claude gets query and page stats, crawl diagnostics, and quota-checked URL submission against your own Bing Webmaster account — with responses cleaned up enough to actually reason over.

https://bing-mcp.bloggerclinic.com/mcp · $9/mo or $79/yr per property provisional

Why the normalization matters

Bing's raw API speaks WCF JSON: every row carries a __type marker, dates arrive as /Date(1745564400000-0700)/, and stats come per-day, per-query. One modest site's raw GetQueryStats measured 68 KB — enough to drown an LLM context for no analytical gain. This server strips the markers, converts dates to YYYY-MM-DD, aggregates per query/page with impression-weighted positions, and returns the top 200 rows with an explicit note about what was truncated.

Bing returns
{
  "__type": "QueryStats:#Microsoft.
      Bing.Webmaster.Api",
  "AvgImpressionPosition": 2,
  "Clicks": 0,
  "Date": "/Date(1745564400000-0700)/",
  "Impressions": 1,
  "Query": "jolie v4.1"
}
// × one row per query per day…
Claude receives
{
  "note": "Aggregated over Bing's full
    window; showing top 200 of 2405
    by impressions.",
  "queries": [
    { "query": "…", "clicks": 3,
      "impressions": 40,
      "avgPosition": 7, "ctr": 0.075 }
  ]
}

Authentication model

Bing Webmaster Tools → Settings → API access → generate an API key, then hand it to the bing_setup tool. The key is validated against your account before it is stored — stored AES-256-GCM encrypted, never logged, and shown again only as a masked last-4 suffix via bing_auth_status. Upstream error text is redacted against the key before any message is produced. Rotate the key in Bing at any time; run bing_setup again with the new one.

Tool reference

bing_setup

not metered

Connect your own Bing Webmaster API key. Validated against your account before storage; stored encrypted; shown again only as ••••-last-4.

api_keystring32-hex key from Bing Webmaster Tools → Settings → API access.

bing_auth_status

not metered

Connection state plus the masked key suffix.

no arguments

check_quota

not metered

Plan, metered calls used this month, cap, reset date.

no arguments

bing_list_sites

metered

Every site verified in the Bing Webmaster account.

no arguments

bing_traffic_stats

metered

Daily clicks, impressions, average position. Dates normalized from Bing's /Date(…)/ epoch format to YYYY-MM-DD.

siteUrlstringExact verified site URL including protocol, e.g. 'https://www.example.com'.

bing_query_stats

metered

Top queries with clicks, impressions, weighted average position, CTR. Aggregated per query over Bing's full window and capped at the top 200 by impressions — the raw API returns per-day rows that measured 68 KB for one modest site.

siteUrlstringExact verified site URL including protocol, e.g. 'https://www.example.com'.

bing_page_stats

metered

Per-page clicks and impressions, aggregated, top 200 by impressions.

siteUrlstringExact verified site URL including protocol, e.g. 'https://www.example.com'.

bing_crawl_stats

metered

Last 30 days of crawl data: pages crawled, in index, HTTP status counts, robots.txt blocks, connection/DNS failures.

siteUrlstringExact verified site URL including protocol, e.g. 'https://www.example.com'.

bing_submission_quota

metered

URLs the site may still submit today and this month. Check before bulk submits.

siteUrlstringExact verified site URL including protocol, e.g. 'https://www.example.com'.

bing_submit_urls

metered

Submit 1–500 URLs for crawling and indexing.

siteUrlstringExact verified site URL including protocol, e.g. 'https://www.example.com'.
urlListstring[]Full page URLs including protocol.

Rate limits and quotas

  • Our metering: 5,000 metered tool calls per month per property on paid plans, 200 on free provisional. Setup, status and check_quota are never metered.
  • Bing's URL-submission quota is your account's, not ours — bing_submission_quota reads it live, and the tool description tells Claude to check it before bulk submits.
  • Batches are capped at 500 URLs per call (Bing's batch limit).

What it does not do

  • No Google data — this connector is Bing Webmaster only.
  • No keyword research endpoints in v1 (Bing offers GetRelatedKeywords; it is on the changelog when it ships, not before).
  • No competitor data: only sites verified in your own Bing Webmaster account.
  • No writes except URL submission (bing_submit_urls, quota-checked).
  • No uncapped dumps: query/page stats return the top 200 aggregated rows, stated in the response.
  • No caching of your data: live API calls only; encrypted credentials and a usage counter are the only stored state.

Install

Claude Code
claude mcp add --transport http bing https://bing-mcp.bloggerclinic.com/mcp \
  --header "Authorization: Bearer smcp_your_key"

Claude web, Claude Desktop, and generic clients →