Bing Search
About
Search the web using Bing services.
Details
- Author
- microsoft
- Repository
- microsoft/semanticworkbench
- GitHub stars
- 248
- License
- MIT License
- Categories
- Search
- Tags
- #web
Jump to
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Bing SearchCommand (node, npx, python, etc.)uvArguments-
Argument 1
run -
Argument 2
-m -
Argument 3
mcp_server_bing_search.start
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Simply run:
make
To create the virtual environment and install dependencies.
Create a .env file based on .env.sample and populate it with:
- BING_SEARCH_API_KEY
- ASSISTANT__AZURE_OPENAI_ENDPOINT - This is necessary if you want to post process web content.
Use the VSCode launch configuration, or run manually:
Defaults to stdio transport:
uv run mcp-server-bing-search
For SSE transport:
uv run mcp-server-bing-search --transport sse --port 6030
The SSE URL is:
```bash
search
Calls the Bing Search API with the provided query. Returns the processed content and links as a LLM-friendly string.
click
Takes a list of hashes from the search tool, retrieves corresponding URLs from the local cache, processes each URL, and returns a similar LLM-friendly string.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"bing search": {
"cwd": "",
"env": {},
"args": [
"run",
"-m",
"mcp_server_bing_search.start"
],
"shell": false,
"command": "uv"
}
}
}
Linux
{
"cwd": "",
"env": [],
"args": [
"run",
"-m",
"mcp_server_bing_search.start"
],
"shell": false,
"command": "uv"
}
Macos
{
"cwd": "",
"env": [],
"args": [
"run",
"-m",
"mcp_server_bing_search.start"
],
"shell": false,
"command": "uv"
}
Windows
{
"cwd": "",
"env": [],
"args": [
"run",
"-m",
"mcp_server_bing_search.start"
],
"shell": false,
"command": "uv"
}
Bing Search MCP Server
Searches the web and reads links
This is a Model Context Protocol (MCP) server project.
Tools
search(query: str) -> str
- Calls the Bing Search API with the provided query.
- Processes each URL from the search results:
- Gets the content of the page
- Converts it to Markdown using Markitdown
- Parses out links separately. Caches a unique hash to associate with each link.
- (Optional, on by default) Uses sampling to select the most important links to return.
- (Optional, on by default) Filters out the Markdown content to the most important parts.
- Returns the processed content and links as a LLM-friendly string.
click(hashes: list[str]) -> str
- Takes a list of hashes (which originate from the search tool).
- For each hash gets the corresponding URL from the local cache.
- Then does the same processing as search for each URL and returns a similar LLM-friendly string.
Setup and Installation
Simply run:
make
To create the virtual environment and install dependencies.
Setup Environment Variables
Create a .env file based on .env.sample and populate it with:
- BING_SEARCH_API_KEY
- ASSISTANT__AZURE_OPENAI_ENDPOINT - This is necessary if you want to post process web content.
Running the Server
Use the VSCode launch configuration, or run manually:
Defaults to stdio transport:
uv run mcp-server-bing-search
For SSE transport:
uv run mcp-server-bing-search --transport sse --port 6030
The SSE URL is:
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.
