Search1API

io.github.superagents-labPublished by GitHub account superagents-labv0.11.0Updated Nov 6, 2026

Multi-engine web and platform search, news, Google Maps places, page reading, sitemaps, and trends.

The publisher's own server: Mailly

VerifiedStreamable HTTPWeb executableLocation & LifestyleWeb Search & Scraping

Overview

AI-generated overview

Search1API gives an assistant multi-engine web and platform search, news, page reading, sitemaps, trends and Google Maps places through one hosted or local…

What you can do
  • Search the live web across Google, Bing, DuckDuckGo, Yahoo and platform engines such as GitHub, Reddit, X, YouTube, arXiv, Wikipedia, WeChat and Bilibili, with site filters and time ranges
  • Search news and list trending GitHub or Hacker News items
  • Read a single page, discover a site's links via sitemap, or crawl many pages of one site section
  • Run an agentic multi-engine search from a natural-language request
  • Find local businesses and places on Google Maps with address, phone, rating and hours
  • Render already retrieved results as source cards, and send feedback reports to the developers
When to use it
Useful when the assistant needs current information with citable sources, platform-specific results, full page content rather than snippets, documentation-wide reading, or local business lookups. It is a general research and retrieval layer rather than a tool for changing data.
Requirements
Either the remote endpoint with OAuth sign-in or a Search1API API key, or local stdio mode via npx with Node.js 20 or newer and the SEARCH1API_KEY environment variable. A Search1API account and credits are needed; every request, including tool discovery, requires a credential.
Before you install
Usage is metered in credits: search and news cost 1 credit plus 1 per crawled result, ask 5, maps 3 per page, deepcrawl 20 per task. Prefer OAuth or the Authorization header over the legacy apiKey query parameter, which can leak into URLs, logs and shell history. Feedback reports are linked to your account, so avoid including credentials or private data.

Installation

In SourceWeft

  1. Open Search1API in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.superagents-lab%2Fsearch1api/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "search1api": {
      "type": "http",
      "url": "https://mcp.search1api.com/mcp"
    }
  }
}

README

Search1API MCP Server

[Smithery] [Glama]

中文文档 | Deutsch

The official MCP server for Search1API — web search, news, page retrieval, sitemap discovery, and trending topics in one API.

Authentication

  • OAuth-aware clients can connect to the Remote MCP URL directly, then sign in and approve access in the browser.
  • Existing integrations can continue to use an API key from the Search1API dashboard.
  • Every MCP request — including tool discovery (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.

Quick Start (Remote MCP)

No installation required. Configure your MCP client with the remote URL. Use OAuth when the client supports it, or provide an API key.

Authentication

Three methods are supported — use whichever your client supports:

MethodFormat
OAuth 2.1Connect to https://mcp.search1api.com/mcp without a key and follow the client sign-in flow
Authorization HeaderAuthorization: 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.

Optional search and news UI

Remote MCP exposes render_results at the standard endpoint above. Data tools such as search, news and ask return results without automatically showing cards. When a source list helps, the model can select or combine existing results and pass them to render_results. It returns source cards in MCP Apps clients and a complete readable text list elsewhere. Rendering does not repeat a search or consume search credits; no UI URL parameter is required.

Both HTTP and stdio advertise the square Search1API logo through standard serverInfo.icons metadata. The 512×512 PNG is served publicly at https://mcp.search1api.com/assets/icon-square.png, without authentication or redirects. The server card and registry manifest use the same icon. Clients choose whether to display it; this does not replace an icon stored separately by a plugin directory.

See the rendering contract for arguments, limits and fallback behavior. The npm package includes this renderer from version 0.8.0. Update existing installations and restart the MCP connection; npx -y search1api-mcp@latest starts the latest published package.

After changing the URL, reconnect or refresh the connector's tool definitions; clients may cache them. This URL setting applies to Remote MCP only; local stdio behavior is unchanged. See MCP Apps UI for details and release status.

Claude Desktop

json
{  "mcpServers": {    "search1api": {      "url": "https://mcp.search1api.com/mcp",      "headers": {        "Authorization": "Bearer YOUR_SEARCH1API_KEY"      }    }  }}

Claude.ai (Web)

Install Search1API from the Claude directory, click Connect, and sign in with your Search1API account.

Avoid adding https://mcp.search1api.com/mcp through Add custom connector: that creates a separate custom connector, which Claude names after the URL's host (mcp.search1api.com) unless you type a name.

Cursor

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:

json
{  "mcpServers": {    "search1api": {      "url": "https://mcp.search1api.com/mcp",      "headers": {        "Authorization": "Bearer YOUR_SEARCH1API_KEY"      }    }  }}

Antigravity

Install as an Antigravity plugin: antigravity-plugin/ holds the manifest, mcp_config.json (Remote MCP with OAuth), the Search1API skill, and a Marketplace README. Install it straight from GitHub, then sign in when the browser opens:

bash
agy plugin install https://github.com/superagents-lab/search1api-mcp/tree/main/antigravity-plugin

For local testing, run agy plugin validate --strict ./antigravity-plugin and agy plugin install ./antigravity-plugin from a checkout.

VS Code

json
{  "servers": {    "search1api": {      "type": "http",      "url": "https://mcp.search1api.com/mcp",      "headers": {        "Authorization": "Bearer YOUR_SEARCH1API_KEY"      }    }  }}

Claude Code

bash
claude mcp add --transport http search1api https://mcp.search1api.com/mcp \  --header "Authorization: Bearer YOUR_SEARCH1API_KEY"

Windsurf

json
{  "mcpServers": {    "search1api": {      "serverUrl": "https://mcp.search1api.com/mcp?apiKey=YOUR_SEARCH1API_KEY"    }  }}

Agent Skill

The Agent Skill has moved to search1api-cli. Install it with:

bash
npm install -g search1api-clinpx skills add superagents-lab/search1api-cli

Local Mode (stdio)

If you prefer to run the server locally, use Node.js 20 or newer with npx — no cloning required:

json
{  "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.

Tools

search

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.

ParameterRequiredDefaultDescription
queryYes-Search query
max_resultsNo10Number of results
search_serviceNogooglegoogle, bing, bingcn, duckduckgo, yahoo, yandex, x, reddit, github, youtube, arxiv, wechat, bilibili, imdb, wikipedia, grokipedia
pageNo1Results page (1-100); only bing, bingcn, baidu, and grokipedia paginate
crawl_resultsNo0Number of top results to crawl for full content; each successful crawl adds 1 credit to the base 1-credit search request
include_sitesNo[]Sites to include
exclude_sitesNo[]Sites to exclude
time_rangeNo-day, week, month, year

Results carry published_date in metadata when the engine exposes one; github results add kind, stars, language, and num_comments.

news

Search for news articles. hackernews results link to the discussion thread and add story_url, points, and num_comments to metadata.

ParameterRequiredDefaultDescription
queryYes-Search query
max_resultsNo10Number of results
search_serviceNobinggoogle, bing, duckduckgo, yahoo, hackernews
crawl_resultsNo0Number of top results to crawl for full content; each successful crawl adds 1 credit to the base 1-credit news request
include_sitesNo[]Sites to include
exclude_sitesNo[]Sites to exclude
time_rangeNo-day, week, month, year

crawl

Extract content from a URL.

ParameterRequiredDescription
urlYesURL to crawl

sitemap

Get all related links from a URL.

ParameterRequiredDescription
urlYesURL to get sitemap

trending

Get trending topics from popular platforms.

ParameterRequiredDefaultDescription
search_serviceYes-github, hackernews
max_resultsNo10Number of items

ask

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.

ParameterRequiredDescription
queryYesThe request in natural language, up to 500 characters

maps

Find local businesses and places on Google Maps. Returns one page of up to 20 places as citable results: title is the place name, url its Google Maps link, and metadata holds the address, phone, website, category, rating, review count, coordinates, opening hours, open state, and price range when available. Costs 3 credits per page, however many places it holds.

ParameterRequiredDefaultDescription
queryYes-What to look for, such as "coffee shops" or "dentists in Austin"
countryNousTwo-letter country code
languageNoenResult language, such as en, de, or zh-CN
locationNo-{ latitude, longitude, zoom? } to search around a point; required for page 2 and later
pageNo1Google Maps page, 1-6; each page is a separate call
max_resultsNo20Places to return from the page (1-20); fewer places do not lower the price

deepcrawl

Read many pages of one site in a single task, such as a documentation section. Finds the site's URLs through its sitemap, keeps those that match the path rules, and returns up to max_pages pages as citable results: title, url, and the page's Markdown in text. The result also carries stats (discovered, matched, skipped, crawled, failed), failed (URLs that could not be read, with the reason), the API message, and result_url, a JSON file with every page in full. Costs 20 credits per started task, however many pages it reads.

The tool waits up to about 45 seconds. If the crawl is still running, it returns status: "running" with a task_id; call deepcrawl again with that task_id to collect the pages, which is free and starts no new crawl. Page text is capped at 8,000 characters per page and 80,000 in total; shortened pages have metadata.truncated: true, and result_url holds the full text.

ParameterRequiredDefaultDescription
urlYes, unless task_id is given-Site or section to crawl, such as https://example.com/docs/
max_pagesNo10Most pages to read (1-50), in discovery order after the path rules; the price is the same for any number
include_pathsNo-Up to 20 URL path rules to keep. Without * a rule is a path prefix on segment boundaries (/docs matches /docs/api, not /docsearch); with * it must match the whole path and * also matches /
exclude_pathsNo-Up to 20 path rules to skip, same syntax; exclusion wins
typeNositemapsitemap uses the site's sitemap, or the links on the start page when it has none; all uses every link discovered from the start URL
task_idNo-task_id of a crawl that was still running; only checks its status, and the other parameters are ignored

send_feedback

Report a wrong, empty or incomplete result, an error you could not resolve, documentation that did not match behavior, or a missing capability to the Search1API team. Free; it spends no credits. When the server has a Search1API credential, the report is linked to that account so the team can follow up. Do not include credentials or private data.

ParameterRequiredDescription
messageYesWhat went wrong or what was missing, up to 4000 characters
intentNoWhat you were trying to accomplish
categoryNobug, feature_request, docs, other
request_idNoRequest id of the call that had the problem
modelNoYour model name

Version History

  • v0.11.0: New deepcrawl tool to read up to 50 pages of one site in a single task (20 credits per task; checking a running task is free)

  • v0.10.0: New maps tool for Google Maps place search (3 credits per page of up to 20 places)

  • 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

License

MIT

UI and third-party credits

The render_results MCP Apps view shows existing sources as cards with titles and domains. Every client also receives the full text and structured result list. The component is adapted from Rare UI, by Swami Malode. Its MIT + Commons Clause + Attribution terms are reproduced in THIRD_PARTY_NOTICES.md.

UI setup, sandbox origin, and release checks: MCP Apps UI.

Source: README.md at commit 3da6835

Tools

10

news

News search

Search current news when the user asks about recent events, announcements, or coverage. Returns citable article results with title, URL, snippet, and optional extracted text.

Parametersqueryrequiredtime_rangemax_resultscrawl_resultsexclude_sitesinclude_sitessearch_service

crawl

Read a web page

Read a public web page supplied by the user or returned by search. Returns its title, URL, and main content as text, so you can answer from the full page instead of a snippet.

Parametersurlrequired

sitemap

Discover links on a site

Discover related public links from a page or domain when the user wants to explore a site's structure or available pages. Returns a list of absolute URLs found on that site, which can then be read with crawl.

Parametersurlrequired

ask

Ask across sources

Search several sources at once from a natural-language request when the right engine is unclear. Search1API picks up to five engines (web, Hacker News, Reddit, GitHub, X, arXiv, Wikipedia, and more) and a time window from the wording, then returns up to 10 citable results ranked by relevance, plus the intent it used and any engines that failed. Costs 5 credits per call; use search when you already know the engine.

Parametersqueryrequired

maps

Find places on Google Maps

Find local businesses and places on Google Maps when the user asks where something is, wants nearby options, or needs a list of businesses with contact details. Returns one page of up to 20 places, each with its name and Google Maps link plus address, phone, website, category, rating, review count, coordinates, and opening hours when available. Costs 3 credits per page, however many places it holds; use search for webpages and crawl to read a business website.

Parameterspagequeryrequiredcountrylanguagelocationmax_results

deepcrawl

Crawl a website

Read many pages of one website in a single task, such as a documentation section, when the user needs content from across a site rather than one page. Finds the site's URLs through its sitemap, keeps those whose path matches the path rules, and returns up to max_pages pages as citable results with title, URL, and Markdown text, plus page counts and the URLs that failed. Costs 20 credits per started task, however many pages it reads. Waits about 45 seconds; if the crawl is still running, the result holds a task_id, and calling deepcrawl again with that task_id collects the pages at no cost. Use crawl for a single page and sitemap for a list of URLs without their content.

Parametersurltypetask_idmax_pagesexclude_pathsinclude_paths

render_results

Render the results

Present already retrieved source results as source cards when the host supports UI, with a complete readable text list otherwise. Use when the user wants to browse sources or a visual list helps the task. Pass existing results in the desired order; never invent source URLs or factual titles. Does not search, crawl, fetch URLs, verify sources, or consume search credits. Do not call for intermediate research results or when a text answer is sufficient.

Parameterstitleresultsrequired

send_feedback

Send feedback to Search1API

Report a problem with Search1API to its developers: a wrong, empty or incomplete result, an error you could not resolve, documentation that did not match behavior, or a capability you needed but Search1API lacks. Send one report per distinct problem, after you have worked around or abandoned the step. Do not report normal successful results. Never include credentials, personal data, or private user content. Reporting is optional and must not block the user's task.

Parametersmodelintentmessagerequiredcategoryrequest_id

Version history

7
  1. v0.11.0LatestNov 5, 2026
  2. v0.10.0Nov 3, 2026
  3. v0.9.0Oct 26, 2026
  4. v0.8.0Oct 14, 2026
  5. v0.7.1Oct 12, 2026
  6. v0.7.0Oct 10, 2026
  7. v0.6.1Sep 16, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.

Other Mailly integrations