Skip to main content
Glama
TechDivar

AI Search Operations MCP for Bing Webmaster

by TechDivar

AI Search Operations MCP for Bing Webmaster

An open-source, vendor-neutral MCP server that helps marketers improve pages for human readers and AI search. It combines Bing Webmaster data, GA4 AI-traffic opportunity matching, technical SEO scanning, AI-search content audits, approval-gated WordPress fix preparation, live verification, Bing URL submission, and a separate IndexNow integration.

It uses the standard MCP stdio transport, so the same server can run in Codex, Claude Code, Cursor, VS Code, and other compatible MCP clients. Each user supplies their own credentials.

No API key is stored in this repository.

What marketers can do

  • See the queries and pages already receiving Bing impressions and clicks.

  • Find pages with high Bing impressions but little or no identifiable AI-referral traffic in an aggregated GA4 export.

  • Review rankings, crawl activity, crawl issues, sitemaps, backlinks, keyword research data, URL details, and submission quota.

  • Scan one page or up to 20 pages for common SEO/AEO problems.

  • Find duplicate H1s, missing image alt text, metadata, canonical, robots, language, HTTP, and JSON-LD problems.

  • Audit AI readability, entity coverage, citation readiness, intent coverage, schema fit, internal links, and freshness.

  • Audit a site's proposed llms.txt file and compare it with important hub URLs.

  • Find highly similar article bodies across a catalog before search systems choose the wrong page.

  • Compare Article/FAQPage schema and dateModified freshness across translated pages.

  • Compare heading topics with public competitor pages.

  • Preview the answer that can be extracted using only the page's own words.

  • Find concise passages that are easier to quote or paraphrase accurately.

  • Turn every finding into a clear fix plan and exact before/after diff.

  • Prepare corrected WordPress HTML without publishing it automatically.

  • Recheck the live page after a fix.

  • Submit an approved URL, URL batch, or sitemap to Bing.

  • Validate an IndexNow key file and notify IndexNow about added, updated, or deleted URLs.

Example prompts for any MCP client

List the websites connected to my Bing Webmaster account.

Show my top Bing queries and pages.

Using this GA4 CSV, find pages with at least 1,000 Bing impressions and no more than 5 AI-referral sessions.

Scan these 10 URLs and group the AEO problems by priority.

Audit this page for AI readability, citation readiness, missing entities, intent gaps, schema, and freshness.

Compare this article with these three competitors and show only meaningful topic gaps.

Find internal-link opportunities using this list of published pages. Do not invent URLs.

Scan this WordPress article, prepare the safe fixes, show me the changes, update it after I approve, verify the live page, then submit it to Bing.

How the automated workflow works

  1. aeo_audit_page runs the full technical and AI-search audit.

  2. Your AI client reads the latest post through a separate connected WordPress MCP.

  3. aeo_autofix_page applies only exact proposed replacements in memory and returns a before/after diff.

  4. The tool marks the package approval_required: true and does not publish.

  5. Your AI client shows the changes and requests approval before a WordPress write.

  6. After approval, the connected WordPress MCP updates the post.

  7. seo_recheck_page and the AEO audits verify the public result.

  8. bing_submit_url or bing_submit_url_batch requests a fresh Bing crawl when you ask for it.

The fixer will not invent image descriptions, internal destination URLs, facts, prices, or competitor claims. The calling AI must supply proposed wording from reviewed source material. It also requires confirmation that the WordPress theme already renders the post title as the page H1 before changing content-body H1s to H2s.

Find high-impression, low-AI-traffic pages

Use aeo_find_ai_traffic_opportunities with either an attached GA4 CSV or aggregated rows from a connected GA4 tool. The MCP pulls Bing's top-page statistics itself and matches the pages by URL.

The simplest GA4 CSV contains these three columns:

Page path + query string,Session source / medium,Sessions
/blog/example/,chatgpt.com / referral,3
/blog/another-page/,google / organic,120

Common GA4 page, source/referrer, and traffic column names are detected automatically. If the export is already filtered to AI referrals, a page column plus a traffic column is enough. Only aggregate page-level data should be supplied—never export user-level or event-level identifiers.

The result lists each opportunity URL, Bing impressions and clicks, Bing positions, identifiable GA4 AI traffic, the reason it was selected, and the recommended next audit. Normal search and referral traffic is ignored. You can add extra AI referral domains if your analytics uses a source that is not in the built-in list.

The raw CSV is not returned or sent to Google. The MCP returns only the aggregate comparison. Bing and GA4 may cover different reporting periods, and some AI visits appear as direct, organic, or unknown traffic, so the output is an opportunity list rather than proof of total AI usage.

Choose only the modules you need

All 46 tools remain enabled by default. Set MCP_MODULES to load a smaller toolset:

Module

What it provides

bing

Bing reporting, Bing submissions, and the Bing + GA4 opportunity finder

seo

Live page scanning, rechecking, fix plans, and WordPress-ready HTML preparation

aeo

AI readability, citation, entity, intent, schema, freshness, catalog, and multilingual audits

indexnow

IndexNow key validation and URL notifications

Examples:

# Only Bing reporting and submission tools
MCP_MODULES=bing npm start

# Scanner and AEO audits without Bing credentials
MCP_MODULES=seo,aeo npm start

Use all, or leave MCP_MODULES unset, to enable everything. An unknown module name stops startup with a clear error instead of silently hiding tools.

The 46 MCP tools

Bing Webmaster data

  • bing_list_sites

  • bing_get_query_stats

  • bing_get_page_stats

  • bing_get_rank_and_traffic_stats

  • bing_get_crawl_stats

  • bing_get_crawl_issues

  • bing_get_sitemaps

  • bing_get_fetched_url_details

  • bing_get_url_traffic_info

  • bing_get_page_query_stats

  • bing_get_url_submission_quota

  • bing_get_link_counts

  • bing_get_url_links

  • bing_get_keyword_stats

  • bing_get_related_keywords

  • bing_get_query_page_stats

  • bing_get_query_page_detail_stats

  • bing_get_url_info

  • bing_get_children_url_traffic_info

Live SEO/AEO scanning and fixes

  • seo_scan_page

  • seo_scan_pages

  • seo_recheck_page

  • aeo_plan_page_fixes

  • aeo_prepare_wordpress_fixes

Catalog and multilingual audits

  • aeo_llms_txt_audit — inspect the root-level Markdown file, its heading, links, and supplied canonical pages

  • aeo_internal_duplicate_check — compare 2 to 30 article bodies using transparent text similarity

  • aeo_multilang_schema_parity — compare Article/FAQPage JSON-LD and freshness across translated versions

Bing-to-AI traffic opportunities

  • aeo_find_ai_traffic_opportunities — combine Bing GetPageStats with an aggregated GA4 CSV or rows to find high-impression pages with low identifiable AI-referral traffic

AI-search operations

  • aeo_audit_page — run all AI-search audits together

  • aeo_ai_readability_audit — direct answers, definitions, headings, structure, and marketing language

  • aeo_entity_coverage — check a primary entity and supplied related entities

  • aeo_citation_readiness — score extractable, structured, supported passages

  • aeo_intent_coverage — detect six common intent types and missing expected intents

  • aeo_compare_pages — compare visible heading topics with up to five competitors

  • aeo_ai_overview_preview — create a page-only extractive answer preview

  • aeo_extract_citable_chunks — find concise standalone definitions and facts

  • aeo_internal_link_opportunities — match content to a supplied inventory of real URLs

  • aeo_schema_recommendations — validate JSON-LD and assess schema fit

  • aeo_freshness_audit — flag dates, prices, limits, relative claims, and screenshots for review

  • aeo_autofix_page — prepare an exact diff and require approval; never publish

Bing submissions

  • bing_submit_url

  • bing_submit_url_batch

  • bing_submit_sitemap

IndexNow

  • indexnow_validate_key

  • indexnow_submit_url

  • indexnow_submit_urls

IndexNow remains separate from the Bing Webmaster API client. Its tools support added, updated, and deleted workflow labels. The protocol sends the changed URL, not a separate change-type field, and an accepted submission never guarantees crawling or indexing.

Submission tools are marked as write actions. Audits and fix-preparation tools are read-only because they do not change the website.

Official API mapping

The added Bing tools call these documented methods with their official parameters. Read tools return Bing's normalized response. The batch tool adds clearly labelled local validation, quota, success, failure, and skip results; it does not claim that Bing returned per-URL outcomes.

IndexNow follows the separate official IndexNow protocol, including same-host key validation and the documented 10,000-URL POST limit.

Honest scoring and limitations

The AI-search scores are transparent HTML and language-pattern heuristics. They are useful editorial signals, not secret access to an LLM or a guarantee that ChatGPT, Copilot, Google, or Bing will cite a page.

  • Entity gaps are measured against related entities you supply. Heuristically detected entities are labelled as such.

  • Internal-link suggestions come only from URLs you supply. The MCP does not invent destinations.

  • The answer preview extracts existing page passages. It does not simulate a proprietary AI answer.

  • Competitor gaps compare headings and topics. They are research leads, not instructions to copy text.

  • Freshness findings mean “verify this,” not “this is false.”

  • Schema suggestions must match visible content and current search-platform rules.

  • aeo_autofix_page prepares changes only. A connected WordPress MCP is needed to publish after human approval.

  • llms.txt is a community proposal. Having one does not guarantee discovery, ranking, crawling, or citation by an AI system.

  • Near-duplicate similarity is a review signal, not proof that a search engine will deduplicate pages or a command to delete one.

  • Multilingual parity compares only the URLs supplied. Different locales may legitimately need different visible content or schema.

  • The AI-traffic opportunity tool does not connect to GA4 or require a Google key. It processes the aggregate CSV or rows supplied to the local MCP.

  • GA4 referral data is incomplete because some AI visits appear as direct, organic, or unknown traffic.

  • Bing says GetPageStats is updated weekly. Its period may not exactly match the date range of a GA4 export.

Important Bing limitation

Bing's public Webmaster API does not expose the complete URL Inspection report shown in Bing Webmaster Tools. Dashboard warnings such as multiple H1 headings and missing image alt attributes are not returned by GetCrawlIssues.

The scanner therefore fetches and checks the public HTML independently. It does not claim to reproduce Bing's private dashboard logic, execute JavaScript, or access private/local network addresses.

Install

You need Node.js 20 or newer and any MCP client that supports local stdio servers. A Bing Webmaster API key is needed only for the bing module; the webpage scanner and AEO audits work without it.

git clone https://github.com/TechDivar/bing-webmaster-aeo-mcp.git
cd bing-webmaster-aeo-mcp
npm install
npm run setup-key

The setup hides the key while you type and stores it outside the repository with owner-only permissions:

Platform

Default private folder

macOS

~/Library/Application Support/bing-webmaster-aeo-mcp/secrets/

Linux

~/.config/bing-webmaster-aeo-mcp/secrets/

Windows

%APPDATA%\bing-webmaster-aeo-mcp\secrets\

Existing macOS users do not need to move a key previously saved under the Codex secrets folder; v3 keeps that location as a read-only compatibility fallback.

You can also supply credentials through your MCP client's secret settings or environment:

BING_WEBMASTER_API_KEY=
BING_WEBMASTER_API_KEY_FILE=/absolute/path/to/bing-key
INDEXNOW_KEY=
INDEXNOW_KEY_FILE=/absolute/path/to/indexnow-key
INDEXNOW_KEY_LOCATION=https://example.com/indexnow-key.txt
MCP_MODULES=bing,seo,aeo,indexnow

Prefer the setup scripts or private key files. Never commit a populated .env or client configuration containing a key. BING_WEBMASTER_MCP_CONFIG_DIR can move the private configuration folder when needed.

Optional IndexNow setup

Create an IndexNow key, save it locally, and host a UTF-8 text file named <key>.txt at the root of the exact site host. The file must contain only the matching key.

npm run setup-indexnow-key

The key is stored in the same platform-specific private folder shown above. The default public key-file location is https://your-host/<key>.txt. If you intentionally host it elsewhere on the same host, set INDEXNOW_KEY_LOCATION before starting the MCP server. A custom location limits submissions to URLs under that file's directory, as required by IndexNow.

Connect it to an MCP client

Use an absolute path to src/server.mjs. For Codex:

From the repository folder, run:

codex mcp add bing-webmaster -- node "$PWD/src/server.mjs"

Restart Codex, then ask it to list the Bing sites to confirm the connection.

See Client setup examples for Claude Code, Cursor, VS Code, generic MCP hosts, module selection, and safe credential options.

WordPress is intentionally not built into this server. Connect a separate WordPress MCP if you want an approved fix package to be published. This keeps website-writing credentials and write access separate from scanning and Bing reporting.

Development

npm install
npm test
npm start

Security

Never paste an API key into a prompt, issue, commit, or screenshot. See SECURITY.md for the security model and vulnerability-reporting guidance.

Contributing

Marketers, SEO specialists, content teams, and developers are welcome. See CONTRIBUTING.md.

License

MIT

-
license - not tested
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TechDivar/bing-webmaster-aeo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server