Web search, agentic search, news, page retrieval, sitemaps, and trending topics through Search1API.
One address for any MCP client. You sign in at clerk.s1.dev once, after adding it.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Odel could not list its tools without signing in.
The official MCP server for Search1API — web search, news, page retrieval, sitemap discovery, and trending topics in one API.
initialize, tools/list) — requires a credential. Unauthenticated requests draw the OAuth challenge, which is how clients trigger sign-in; pre-connect inspection is served by the static server card instead.No installation required. Configure your MCP client with the remote URL. Use OAuth when the client supports it, or provide an API key.
Three methods are supported — use whichever your client supports:
| Method | Format |
|---|---|
| OAuth 2.1 | Connect to https://mcp.search1api.com/mcp without a key and follow the client sign-in flow |
| Authorization Header | Authorization: Bearer YOUR_SEARCH1API_KEY |
| URL Query Parameter (legacy) | https://mcp.search1api.com/mcp?apiKey=YOUR_SEARCH1API_KEY |
Prefer OAuth or the Authorization header. Query-parameter credentials can be exposed in URLs, logs, and shell history.
{
"mcpServers": {
"search1api": {
"url": "https://mcp.search1api.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_SEARCH1API_KEY"
}
}
}
}
Settings > Connectors > Add custom connector:
https://mcp.search1api.com/mcp?apiKey=YOUR_SEARCH1API_KEY
Install as a Cursor plugin (recommended): this repo includes Agent Plugins plugin.json + mcp.json (portable) and .cursor-plugin/plugin.json (Cursor Marketplace metadata / logo) for Remote MCP with OAuth. Submit or install from cursor.directory / the Cursor Marketplace, then sign in when prompted.
For local testing, copy the plugin files into ~/.cursor/plugins/local/search1api (plugin.json, .cursor-plugin/, mcp.json, assets/). Do not symlink from outside that directory — Cursor rejects external symlink targets.
Or configure manually:
{
"mcpServers": {
"search1api": {
"url": "https://mcp.search1api.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_SEARCH1API_KEY"
}
}
}
}
{
"servers": {
"search1api": {
"type": "http",
"url": "https://mcp.search1api.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_SEARCH1API_KEY"
}
}
}
}
claude mcp add --transport http search1api https://mcp.search1api.com/mcp \
--header "Authorization: Bearer YOUR_SEARCH1API_KEY"
{
"mcpServers": {
"search1api": {
"serverUrl": "https://mcp.search1api.com/mcp?apiKey=YOUR_SEARCH1API_KEY"
}
}
}
The Agent Skill has moved to search1api-cli. Install it with:
npm install -g search1api-cli
npx skills add superagents-lab/search1api-cli
If you prefer to run the server locally, use Node.js 20 or newer with npx — no cloning required:
{
"mcpServers": {
"search1api": {
"command": "npx",
"args": ["-y", "search1api-mcp"],
"env": {
"SEARCH1API_KEY": "YOUR_SEARCH1API_KEY"
}
}
}
}
For self-hosted HTTP deployments behind a proxy, add any internal hostnames
that reach the Node.js process to the comma-separated MCP_ALLOWED_HOSTS
environment variable. mcp.search1api.com and localhost addresses are allowed
by default. Browser-based clients that send an Origin header must also have
their trusted origin hostnames added to the comma-separated
MCP_ALLOWED_ORIGINS variable. Requests from server-side MCP clients normally
omit Origin and do not require an entry.
Search the web using Search1API. Results include a citable id/title/url structure. Pass a result URL to crawl when you need the full page.
| Parameter | Required | Default | Description |
|---|---|---|---|
query | Yes | - | Search query |
max_results | No | 10 | Number of results |
search_service | No | google, bing, bingcn, duckduckgo, yahoo, yandex, x, reddit, github, youtube, arxiv, wechat, bilibili, imdb, wikipedia, grokipedia | |
page | No | 1 | Results page (1-100); only bing, bingcn, baidu, and grokipedia paginate |
crawl_results | No | 0 | Number of top results to crawl for full content; each successful crawl adds 1 credit to the base 1-credit search request |
include_sites | No | [] | Sites to include |
exclude_sites | No | [] | Sites to exclude |
time_range | No | - | day, week, month, year |
Results carry published_date in metadata when the engine exposes one; github results add kind, stars, language, and num_comments.
Search for news articles. hackernews results link to the discussion thread and add story_url, points, and num_comments to metadata.
| Parameter | Required | Default | Description |
|---|---|---|---|
query | Yes | - | Search query |
max_results | No | 10 | Number of results |
search_service | No | bing | google, bing, duckduckgo, yahoo, hackernews |
crawl_results | No | 0 | Number of top results to crawl for full content; each successful crawl adds 1 credit to the base 1-credit news request |
include_sites | No | [] | Sites to include |
exclude_sites | No | [] | Sites to exclude |
time_range | No | - | day, week, month, year |
Extract content from a URL.
| Parameter | Required | Description |
|---|---|---|
url | Yes | URL to crawl |
Get all related links from a URL.
| Parameter | Required | Description |
|---|---|---|
url | Yes | URL to get sitemap |
Get trending topics from popular platforms.
| Parameter | Required | Default | Description |
|---|---|---|---|
search_service | Yes | - | github, hackernews |
max_results | No | 10 | Number of items |
Agentic search: describe the need in natural language and Search1API picks up to five engines and a time window, drops off-topic results, and returns at most 10 citable results ranked by relevance. The result also carries intent (keywords, engines, and window used) and errors (engines that failed while others completed). Costs 5 credits per completed request; use search when you already know the engine.
| Parameter | Required | Description |
|---|---|---|
query | Yes | The request in natural language, up to 500 characters |
v0.7.0: New ask tool for agentic search. search adds the bingcn, yandex, and grokipedia engines and a page parameter; search and news accept time_range: "week" and pass published_date, GitHub, and Hacker News fields through in result metadata
v0.6.1: Bug fix — MCP discovery (initialize, tools/list, resources/*, prompts/list, server/discover) requires a credential again. Serving it anonymously made clients that equate "tools listed" with "signed in" show a connected state with no way to trigger the OAuth flow; the 401 challenge now answers every unauthenticated request, restoring OAuth sign-in at connect time. Directory visibility is unchanged via the static server card and registry metadata
v0.6.0: MCP discovery (initialize, tools/list, resources/*, prompts/list, server/discover) is served without a credential so clients and directories can enumerate tools before signing in; tool calls still require OAuth or an API key. Stdio mode starts without SEARCH1API_KEY and serves tool metadata, refusing only at call time. Malformed requests answer as JSON-RPC instead of an HTML error page
v0.5.4: OAuth issuer moved to clerk.s1.dev and is configurable with OAUTH_AUTHORIZATION_SERVER; MCP server card published at /.well-known/mcp/server-card.json; OAuth discovery documents now send cache headers
v0.5.3: OAuth resource and tool metadata no longer require OIDC session scopes; Smithery and Glama registry badges added
v0.5.2: MCP Origin validation now runs before request parsing and authentication; self-hosted HTTP deployments can configure trusted browser origins with MCP_ALLOWED_ORIGINS
v0.5.1: Documentation, LobeHub manifest, and MCP Registry metadata synchronized; robots.txt served on the transport host
v0.5.0: MCP 2026-07-28 support with automatic protocol negotiation; stateless compatibility for 2025-era HTTP clients; request-level authentication
v0.4.0: Structured output schemas, OAuth security schemes, safety annotations, and Official MCP Registry metadata
v0.3.1: OAuth 2.1 support for Remote MCP; retired reasoning tool removed
v0.3.0: Remote MCP support via Streamable HTTP; per-session API key authentication
v0.2.0: Fallback .env support for LibreChat integration
v0.1.8: X (Twitter) and Reddit search services
v0.1.7: Trending tool for GitHub and Hacker News
v0.1.6: Wikipedia search service
v0.1.5: New search parameters and services (arxiv, wechat, bilibili, imdb)
v0.1.3: News search
v0.1.2: Sitemap
v0.1.1: Web crawling
v0.1.0: Initial release
MIT