Serpex MCP
You can perform Serpex web searches from an MCP client, choosing the search engine and time filter.
Run
serpex_searchwith a required query string (max 500 characters).Select an engine:
auto,google,bing,duckduckgo,brave,yahoo, oryandex(defaultauto).Filter results by time range:
all,day,week,month, oryear.The provided schema does not expose page extraction or inline page-content fetching.
Provides web search capabilities through Brave's search engine, accessible via the Serpex API with support for time-based filtering and structured JSON results
Enables web search functionality through DuckDuckGo's search engine, accessible via the Serpex API with support for time-based filtering and structured JSON results
Provides web search capabilities through Google's search engine, accessible via the Serpex API with support for time-based filtering and structured JSON results
Click on "Deploy 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., "@Serpex MCPfind recent articles about quantum computing breakthroughs"
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.
Serpex MCP
A Model Context Protocol (MCP) server that gives AI agents web search and page extraction through Serpex. Serpex is a web search API and extract API for AI agents. Search returns ranked web results, optionally with page content as markdown; Extract turns known URLs into clean markdown. Every search is routed automatically: there is no engine to choose.
Features
✅ Web Search: Ranked web results, nothing to configure
✅ Page Content: Optionally fetch the top results' pages as markdown in the same call
✅ Structured Results: Clean, consistent JSON responses
✅ Easy Integration: Works with Claude Desktop, Jan AI, and any MCP-compatible client
Related MCP server: SerpApi MCP Server
Installation
Quick Start (npx - Recommended)
No installation needed! Use npx to run directly:
npx serpex-mcpGlobal Installation
npm install -g serpex-mcpLocal Installation
npm install serpex-mcpUsage
With Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"serpex": {
"command": "npx",
"args": ["-y", "serpex-mcp"],
"env": {
"SERPEX_API_KEY": "your-api-key-here"
}
}
}
}With Other MCP Clients
Any MCP-compatible client can use this server. Configure it with:
Command:
npxArguments:
-y serpex-mcpEnvironment:
SERPEX_API_KEY=your-key
Standalone
export SERPEX_API_KEY="your-api-key-here"
serpex-mcpEnvironment
Variable | Required | Meaning |
| yes | Your Serpex API key |
| no | API base URL. Default |
The server calls the API through the official serpex
SDK (^2.12.0), so request parameters, timeouts and error parsing follow the SDK.
Available Tools
serpex_search
Search the web with Serpex. Optionally fetches full page content
(markdown) for the top results inline with the search — best-effort, so check each
result for content vs content_error.
Parameters:
q(required): Search query string (max 500 characters). Operators such assite:,-site:,after:YYYY-MM-DDandbefore:YYYY-MM-DDgo inside the query.include_content(optional, boolean): Also fetch full page content (markdown) for the top results. Best-effort — pages that can't be extracted returncontent_errorinstead. Default:false.content_results(optional,5 | 10): Number of top results to fetch content for, wheninclude_contentistrue. Must be exactly5or10. Default:5.
Example:
{
"q": "artificial intelligence trends 2025",
"include_content": true,
"content_results": 5
}Response (JSON, as tool output text) includes status (success or no_results),
total_results, credits_used, a message when nothing was found, content_requested /
content_delivered counts and, per result, content on success or content_error
on failure — both keys are omitted when content wasn't requested.
Credits: 1 per search; with include_content, 1 when no page came back, 3 for 1-5 pages,
6 for 6-10 pages. An empty result is charged only when it was confirmed as genuinely empty.
serpex_extract
Extract the content of known web pages as clean markdown (or HTML).
Parameters:
urls(required): 1 to 10 absolute http(s) URLs.format(optional,markdown | html): Output format. Default:markdown.
Example:
{
"urls": ["https://example.com/pricing"],
"format": "markdown"
}Response (JSON, as tool output text) includes successful, failed, credits_used
and, per URL, success plus markdown / html, or error and error_type (for example
http, robots_disallowed, timeout, unsupported_content_type) when the page could not be
extracted. Failed URLs are not charged. Extract calls can take up to about a minute, so the
server waits up to 100 s.
Stealth mode is not exposed: it ends on 2026-11-01.
Errors
A failed call returns isError: true with one sentence the agent can act on: what happened,
whether it was charged and whether to retry. By status: 400 (fix the arguments), 401 (check
SERPEX_API_KEY), 402 (out of credits, with the balance), 429 (rate limit — 5, 25 or 50
requests per second by plan — with the wait in ms), 5xx (temporary, not charged, retry).
Invalid arguments (empty q, content_results other than 5 or 10, more than 10 URLs) are
rejected before any request is sent.
Getting Your API Key
Visit serpex.dev
Sign up for a free account
Get your API key from the dashboard
Use it in the
SERPEX_API_KEYenvironment variable
API Information
Base URL:
https://api.serpex.devDocumentation: https://serpex.dev/docs
Development
Build from Source
git clone https://github.com/divyeshradadiya/serpex-mcp.git
cd serpex-mcp
pnpm install
pnpm buildRun Tests
Offline, no API key or network. Build first: npm test runs the built server. It starts a
local mock of the Serpex API serving the recorded responses in test/fixtures/ and checks every
tool output and error message.
npm run build
npm testLicense
MIT
Links
Available Tools
1 toolserpex_searchB
Search the web using Serpex API. Returns structured search results from multiple engines (Google, Bing, DuckDuckGo, Brave, Yahoo, Yandex).
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query (max 500 characters) | |
| engine | No | Search engine (default: auto) | |
| time_range | No | Filter by time range |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the API and return type (structured results from multiple engines), but fails to disclose critical traits such as rate limits, authentication needs, error handling, or pagination. For a search tool with no annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Search the web using Serpex API') and adds necessary detail ('Returns structured search results from multiple engines'). Every word earns its place with no redundancy or waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a search API tool with no annotations and no output schema, the description is incomplete. It lacks information on response format, error cases, rate limits, and authentication requirements. While the input schema is well-covered, the overall context for effective tool use is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with all parameters well-documented in the input schema (e.g., query max length, engine options, time range enums). The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline of 3 for high schema coverage without compensating value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search the web') and resource ('using Serpex API'), specifying it returns structured results from multiple engines. It's specific about the verb and resource, but since there are no sibling tools, it doesn't need to distinguish from alternatives, making it clear but not requiring sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for web searching with structured results from multiple engines, but provides no explicit guidance on when to use this tool versus alternatives (e.g., other search methods or APIs). Since there are no sibling tools, it doesn't need to differentiate, but it lacks context on optimal use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
serpex_search
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool has a clear and distinct purpose: searching the web using the Serpex API.
Since there is only one tool, naming consistency is inherently perfect. The tool name 'serpex_search' follows a clear and logical pattern, combining the server name with the action.
A single tool is too few for a web search server, as it lacks essential operations like filtering results, handling pagination, or accessing specific search engines individually. This minimal set limits functionality and may cause agent failures in complex tasks.
The tool surface is severely incomplete for a web search domain. While the search tool exists, there are significant gaps such as no ability to refine searches, manage result formats, or perform advanced queries, which are common in search APIs.
Maintenance
Related MCP Connectors
Google, Bing, DuckDuckGo and Google Maps search results, free without an API key.
Provides AI assistants with access to Seltz's powerful Web Search capabilities.
Multi-engine web and platform search, news, Google Maps places, page reading, sitemaps, and trends.
LLM-ready web search + instant answers + URL-to-clean-text fetch for agents and RAG.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables advanced web search across multiple search engines (Brave, DuckDuckGo, Google, Bing, Yandex) with intelligent backend selection, full content extraction, and advanced filtering by time, language, geography, and content type.3MIT
- FlicenseNot gradedqualityNot gradedmaintenanceEnables searching across multiple search engines (Google, Bing, YouTube, DuckDuckGo, etc.) and retrieving parsed search results via SerpApi integration.-
- AlicenseNot gradedqualityBmaintenanceEnables web searches across multiple engines (DuckDuckGo, Bing, Google, SerpAPI, Google CSE, Tavily) with no API key required for the free engines, plus automatic fallback, caching, and webpage content fetching.MIT
- FlicenseNot gradedqualityAmaintenanceEnables querying multiple search engines such as Google, Bing, Yahoo, DuckDuckGo, YouTube, and eBay to retrieve real-time results, including answer boxes, organic results, news, images, shopping, weather, and stock data. Responses can be returned as structured JSON or token-efficient Markdown, with optional interactive table and dashboard views.-