Skip to main content
Glama

Bing Webmaster Tools MCP Server

by zizzfizzix
README.md7.52 kB
# mcp-server-bwt > MCP server for Bing Webmaster Tools This MCP ([Model Context Protocol](https://modelcontextprotocol.io/introduction)) server provides a bridge between [supported AI assistants](https://modelcontextprotocol.io/clients) like Claude or Cursor and the Bing Webmaster Tools API. It exposes all Bing Webmaster Tools functionality available via [`bing-webmaster-tools`](https://github.com/merj/bing-webmaster-tools) as MCP tools that can be used by AI assistants to interact with your Bing Webmaster Tools account. ## Example Usage with Claude Once configured, you can use the MCP server with Claude to interact with your Bing Webmaster Tools account. Here are some example prompts: - "List all my verified sites in Bing Webmaster Tools" - "Submit my homepage for indexing" - "Get traffic statistics for my website" - "Check for any crawling issues on my site" - "Get keyword statistics for 'my product'" Claude will use the appropriate MCP tools to fulfill your requests. ## Requirements - [Python](https://www.python.org) >= 3.13 - [Nodejs](https://nodejs.org) - [Bing Webmaster Tools API Key](https://learn.microsoft.com/en-us/bingwebmaster/getting-access#using-api-key) ## Installation ### Using uvx (recommended) When using [`uvx`](https://docs.astral.sh/uv/guides/tools/) no specific installation is needed. We will use it to directly run *mcp_server_bwt* from the client app. #### Add to Claude desktop with uvx [In your Claude config](https://modelcontextprotocol.io/quickstart/user#2-add-the-filesystem-mcp-server) specify: ```json "mcpServers": { "mcp_server_bwt": { "command": "uvx", "args": [ "--from", "git+https://github.com/zizzfizzix/mcp-server-bwt", "mcp_server_bwt" ] } } ``` #### Add to Zed with uvx In your Zed settings.json add: ```json "context_servers": [ "bwtServer": { "command": "uvx", "args": [ "--from", "git+https://github.com/zizzfizzix/mcp-server-bwt", "mcp_server_bwt" ] } ] ``` ### Using make Alternatively you can install `mcp_server_bwt` using make: ```bash make install ``` #### Add to Claude desktop with make [In your Claude config](https://modelcontextprotocol.io/quickstart/user#2-add-the-filesystem-mcp-server) specify: ```json "mcpServers": { "bwtServer": { "command": "/PATH/TO/mcp-server-bwt/.venv/bin/python", "args": ["/PATH/TO/mcp-server-bwt/mcp_server_bwt/main.py"], "env": { "BING_WEBMASTER_API_KEY": "YOUR_API_KEY_HERE" } } } ``` #### Add to Zed with make In your Zed settings.json add: ```json "context_servers": { "bwtServer": { "command": "/PATH/TO/mcp-server-bwt/.venv/bin/python", "args": ["/PATH/TO/mcp-server-bwt/mcp_server_bwt/main.py"], "env": { "BING_WEBMASTER_API_KEY": "YOUR_API_KEY_HERE" } } } ``` ## Available Tools The server provides the following Bing Webmaster Tools API functionality (more info in the [API docs](https://learn.microsoft.com/en-us/dotnet/api/microsoft.bing.webmaster.api.interfaces?view=bing-webmaster-dotnet)): ### Site Management - `get_sites`: List all verified sites in your Bing Webmaster Tools account - `add_site`: Add a new site to your account - `verify_site`: Verify ownership of a site - `remove_site`: Remove a site from your account - `get_site_roles`: Get roles for a specific site - `add_site_roles`: Add roles to a site - `remove_site_role`: Remove a role from a site - `get_site_moves`: Get information about site moves - `submit_site_move`: Submit a site move request ### URL Submission - `submit_url`: Submit a single URL for indexing - `submit_url_batch`: Submit multiple URLs for indexing in a batch - `submit_content`: Submit content for indexing - `submit_feed`: Submit a feed for indexing - `get_feeds`: Get all submitted feeds - `get_feed_details`: Get details about a specific feed - `remove_feed`: Remove a feed from your account - `get_url_submission_quota`: Check your URL submission quota - `get_content_submission_quota`: Check your content submission quota - `fetch_url`: Fetch a URL for indexing - `get_fetched_urls`: Get all fetched URLs - `get_fetched_url_details`: Get details about a specific fetched URL ### Traffic Analysis - `get_query_stats`: Get statistics for search queries - `get_query_traffic_stats`: Get traffic statistics for search queries - `get_query_page_stats`: Get page statistics for search queries - `get_query_page_detail_stats`: Get detailed page statistics for search queries - `get_page_stats`: Get statistics for pages - `get_page_query_stats`: Get query statistics for pages - `get_rank_and_traffic_stats`: Get rank and traffic statistics ### Crawling - `get_crawl_stats`: Get crawling statistics - `get_crawl_settings`: Get crawling settings - `save_crawl_settings`: Save crawling settings - `get_crawl_issues`: Get crawling issues ### Keyword Analysis - `get_keyword`: Get information about a keyword - `get_keyword_stats`: Get statistics for a keyword - `get_related_keywords`: Get related keywords ### Link Analysis - `get_link_counts`: Get link counts - `get_url_links`: Get links for a URL - `get_deep_link`: Get deep link information - `get_deep_link_blocks`: Get deep link blocks - `add_deep_link_block`: Add a deep link block - `remove_deep_link_block`: Remove a deep link block - `update_deep_link`: Update a deep link - `get_deep_link_algo_urls`: Get deep link algorithm URLs - `get_connected_pages`: Get connected pages - `add_connected_page`: Add a connected page ### Content Management - `get_url_info`: Get information about a URL - `get_url_traffic_info`: Get traffic information for a URL - `get_children_url_info`: Get information about child URLs - `get_children_url_traffic_info`: Get traffic information for child URLs ### Content Blocking - `get_blocked_urls`: Get blocked URLs - `add_blocked_url`: Add a URL to the blocked list - `remove_blocked_url`: Remove a URL from the blocked list - `get_active_page_preview_blocks`: Get active page preview blocks - `add_page_preview_block`: Add a page preview block - `remove_page_preview_block`: Remove a page preview block ### Regional Settings - `get_country_region_settings`: Get country/region settings - `add_country_region_settings`: Add country/region settings - `remove_country_region_settings`: Remove country/region settings ### URL Management - `get_query_parameters`: Get query parameters - `add_query_parameter`: Add a query parameter - `remove_query_parameter`: Remove a query parameter - `enable_disable_query_parameter`: Enable or disable a query parameter ## Development To run all tests: ```bash make test ``` To build the app: ```bash make build ``` To lint the project: ```bash make lint ``` To format the project: ```bash make format ``` ### Environment Variables The following environment variables are required: - `BING_WEBMASTER_API_KEY`: Your Bing Webmaster Tools API key ### Starting the Server To start the MCP server: ```bash make start ``` ### MCP Inspector You can use the MCP inspector to test the server: ```bash make mcp_inspector ``` ### Creating from Template This MCP server was created from a cookiecutter template. To create a similar one, run: ```bash uvx cookiecutter gh:zizzfizzix/python-base-mcp-server ``` ## License mcp-server-bwt is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

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/zizzfizzix/mcp-server-bwt'

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