AI Search Operations MCP for Bing Webmaster
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AI Search Operations MCP for Bing WebmasterShow my top Bing queries and pages"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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.txtfile 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
dateModifiedfreshness 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
aeo_audit_pageruns the full technical and AI-search audit.Your AI client reads the latest post through a separate connected WordPress MCP.
aeo_autofix_pageapplies only exact proposed replacements in memory and returns a before/after diff.The tool marks the package
approval_required: trueand does not publish.Your AI client shows the changes and requests approval before a WordPress write.
After approval, the connected WordPress MCP updates the post.
seo_recheck_pageand the AEO audits verify the public result.bing_submit_urlorbing_submit_url_batchrequests 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,120Common 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 reporting, Bing submissions, and the Bing + GA4 opportunity finder |
| Live page scanning, rechecking, fix plans, and WordPress-ready HTML preparation |
| AI readability, citation, entity, intent, schema, freshness, catalog, and multilingual audits |
| 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 startUse 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_sitesbing_get_query_statsbing_get_page_statsbing_get_rank_and_traffic_statsbing_get_crawl_statsbing_get_crawl_issuesbing_get_sitemapsbing_get_fetched_url_detailsbing_get_url_traffic_infobing_get_page_query_statsbing_get_url_submission_quotabing_get_link_countsbing_get_url_linksbing_get_keyword_statsbing_get_related_keywordsbing_get_query_page_statsbing_get_query_page_detail_statsbing_get_url_infobing_get_children_url_traffic_info
Live SEO/AEO scanning and fixes
seo_scan_pageseo_scan_pagesseo_recheck_pageaeo_plan_page_fixesaeo_prepare_wordpress_fixes
Catalog and multilingual audits
aeo_llms_txt_audit— inspect the root-level Markdown file, its heading, links, and supplied canonical pagesaeo_internal_duplicate_check— compare 2 to 30 article bodies using transparent text similarityaeo_multilang_schema_parity— compare Article/FAQPage JSON-LD and freshness across translated versions
Bing-to-AI traffic opportunities
aeo_find_ai_traffic_opportunities— combine BingGetPageStatswith 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 togetheraeo_ai_readability_audit— direct answers, definitions, headings, structure, and marketing languageaeo_entity_coverage— check a primary entity and supplied related entitiesaeo_citation_readiness— score extractable, structured, supported passagesaeo_intent_coverage— detect six common intent types and missing expected intentsaeo_compare_pages— compare visible heading topics with up to five competitorsaeo_ai_overview_preview— create a page-only extractive answer previewaeo_extract_citable_chunks— find concise standalone definitions and factsaeo_internal_link_opportunities— match content to a supplied inventory of real URLsaeo_schema_recommendations— validate JSON-LD and assess schema fitaeo_freshness_audit— flag dates, prices, limits, relative claims, and screenshots for reviewaeo_autofix_page— prepare an exact diff and require approval; never publish
Bing submissions
bing_submit_urlbing_submit_url_batchbing_submit_sitemap
IndexNow
indexnow_validate_keyindexnow_submit_urlindexnow_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.
aeo_find_ai_traffic_opportunities→GetPageStats(siteUrl)plus aggregate GA4 data supplied by the user. The matcher recognizes GA4 page-path and referrer/source columns described in Google's Analytics dimensions and metrics reference; it does not call the GA4 API.bing_get_link_counts→GetLinkCounts(siteUrl, page)bing_get_url_links→GetUrlLinks(siteUrl, link, page)bing_get_keyword_stats→GetKeywordStats(q, country, language)bing_get_related_keywords→GetRelatedKeywords(q, country, language, startDate, endDate)bing_get_query_page_stats→GetQueryPageStats(siteUrl, query)bing_get_query_page_detail_stats→GetQueryPageDetailStats(siteUrl, query, page)bing_get_url_info→GetUrlInfo(siteUrl, url)bing_get_children_url_traffic_info→GetChildrenUrlTrafficInfo(siteUrl, url, page)bing_submit_url_batch→SubmitUrlBatch(siteUrl, urlList)
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_pageprepares changes only. A connected WordPress MCP is needed to publish after human approval.llms.txtis 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
GetPageStatsis 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-keyThe setup hides the key while you type and stores it outside the repository with owner-only permissions:
Platform | Default private folder |
macOS |
|
Linux |
|
Windows |
|
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,indexnowPrefer 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-keyThe 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 startSecurity
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
This server cannot be installed
Maintenance
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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