
Baidu Search MCP Server
Baidu Search MCP Server I A Model Context Protocol (MCP) server that provides web search capabilities through Baidu, with additional features for content fetching and parsing.
What is Baidu Search MCP Server?
Baidu Search MCP Server is a Model Context Protocol (MCP) server that provides web search capabilities through Baidu, along with features for content fetching and parsing.
How to use Baidu Search MCP Server?
To use the server, install it via Smithery or directly from PyPI, and configure it with Claude Desktop to enable web search and content fetching functionalities.
Key features of Baidu Search MCP Server?
- Web Search: Advanced search capabilities with result formatting.
- Content Fetching: Intelligent retrieval and parsing of webpage content.
- Rate Limiting: Protection against exceeding request limits.
- Error Handling: Comprehensive logging and error management.
- LLM-Friendly Output: Results formatted for large language model consumption.
Use cases of Baidu Search MCP Server?
- Performing web searches on Baidu with formatted results.
- Fetching and parsing content from various web pages.
- Integrating with applications that require web search functionalities.
FAQ from Baidu Search MCP Server?
- Can I use this server for any web search?
Yes, it is designed to perform searches specifically on Baidu.
- Is there a limit to the number of requests?
Yes, the server has built-in rate limiting to manage requests effectively.
- How can I contribute to the project?
You can submit issues and pull requests on the GitHub repository.
Baidu Search MCP Server
A Model Context Protocol (MCP) server that provides web search capabilities through Baidu, with additional features for content fetching and parsing.
Features
- Web Search: Search Baidu with advanced rate limiting and result formatting
- Content Fetching: Retrieve and parse webpage content with intelligent text extraction
- Rate Limiting: Built-in protection against rate limits for both search and content fetching
- Error Handling: Comprehensive error handling and logging
- LLM-Friendly Output: Results formatted specifically for large language model consumption
Installation
Installing via Smithery
To install Baidu Search Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @Evilran/baidu-mcp-server --client claude
uv
Installing via Install directly from PyPI using uv
:
uv pip install baidu-mcp-server
Usage
Running with Claude Desktop
- Download Claude Desktop
- Create or edit your Claude Desktop configuration:
- On macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- On Windows:
%APPDATA%\Claude\claude_desktop_config.json
- On macOS:
Add the following configuration:
{
"mcpServers": {
"baidu-search": {
"command": "uvx",
"args": ["baidu-mcp-server"]
}
}
}
- Restart Claude Desktop
Development
For local development, you can use the MCP CLI:
# Run with the MCP Inspector
mcp dev server.py
# Install locally for testing with Claude Desktop
mcp install server.py
Available Tools
1. Search Tool
async def search(query: str, max_results: int = 10) -> str
Performs a web search on Baidu and returns formatted results.
Parameters:
query
: Search query stringmax_results
: Maximum number of results to return (default: 10)
Returns: Formatted string containing search results with titles, URLs, and snippets.
2. Content Fetching Tool
async def fetch_content(url: str) -> str
Fetches and parses content from a webpage.
Parameters:
url
: The webpage URL to fetch content from
Returns: Cleaned and formatted text content from the webpage.
Features in Detail
Rate Limiting
- Search: Limited to 30 requests per minute
- Content Fetching: Limited to 20 requests per minute
- Automatic queue management and wait times
Result Processing
- Removes ads and irrelevant content
- Cleans up Baidu redirect URLs
- Formats results for optimal LLM consumption
- Truncates long content appropriately
Error Handling
- Comprehensive error catching and reporting
- Detailed logging through MCP context
- Graceful degradation on rate limits or timeouts
Contributing
Issues and pull requests are welcome! Some areas for potential improvement:
- Additional search parameters (region, language, etc.)
- Enhanced content parsing options
- Caching layer for frequently accessed content
- Additional rate limiting strategies
License
This project is licensed under the MIT License.
Acknowledgments
The code in this project references the following repositories:
Thanks to the authors and contributors of these repositories for their efforts and contributions to the open-source community.