SE

Search1API MCP Server — Web Search, News, Crawling

Access the MCP server for Search1API to integrate web search, news, and crawling with a single powerful API.

Quick Install
npx -y @fatwang2/search1api-mcp

Overview

Search1API’s MCP server exposes a single, unified MCP (Model Context Protocol) endpoint that brings web search, news discovery, crawling, and site sitemap extraction into a plug-and-play service for LLM assistants and developer tools. Instead of integrating multiple search providers and scraping logic yourself, you configure an MCP client to forward user queries to this server and receive structured, enriched results (including optional full-page crawl content).

This is useful for building assistants that need up-to-date web facts, news monitoring, content ingestion, or lightweight web crawling without managing infrastructure. The server supports both remote HTTP-hosted mode (Streamable HTTP MCP) and a local stdio mode (via npx), and accepts per-session API keys so you can scope access by user or workspace.

Features

  • Unified web search across many services (Google, Bing, DuckDuckGo, X/Twitter, Reddit, GitHub, YouTube, ArXiv, Wikipedia, and more)
  • News-oriented search tuned to recent articles
  • On-demand crawling: fetch full page content for selected results
  • Sitemap / link discovery for a given site
  • Reasoning tool endpoint (DeepSeek R1) for longer-form problem solving
  • Trending endpoints for GitHub and Hacker News
  • Remote (HTTP) and local (stdio via npx) deployment options
  • Simple API key authentication: Authorization header or query param
  • Easy integration with MCP-enabled clients (Claude Desktop, VS Code extensions, Cursor, etc.)

Installation / Configuration

Remote (no local install)

  • Use the hosted MCP URL and send your API key either as an Authorization header or as a query parameter.

Example: Authorization header (preferred)

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

Example: Query parameter authentication

https://mcp.search1api.com/mcp?apiKey=YOUR_SEARCH1API_KEY

Client-specific examples

  • Claude Desktop / Cursor / VS Code MCP config (JSON snippets above apply).
  • Claude.ai (web): add a custom connector using the URL including ?apiKey=…
  • Windsurf: set serverUrl to “https://mcp.search1api.com/mcp?apiKey=YOUR_SEARCH1API_KEY”
  • Claude Code (CLI): add an HTTP MCP transport with an Authorization header:
claude mcp add --transport http search1api https://mcp.search1api.com/mcp \
  --header "Authorization: Bearer YOUR_SEARCH1API_KEY"

Local (stdio) mode

  • Run the MCP server locally via npx; useful if you want to keep traffic on-device or avoid remote calls.
{
  "mcpServers": {
    "search1api": {
      "command": "npx",
      "args": ["-y", "search1api-mcp"],
      "env": {
        "SEARCH1API_KEY": "YOUR_SEARCH1API_KEY"
      }
    }
  }
}

Agent / CLI skill

  • Agent-style skill and CLI helpers are available through the search1api-cli package:
npm install -g search1api-cli
npx skills add fatwang2/search1api-cli

Available Tools

The MCP server exposes a set of tools (actions) you can invoke from your agent. Core tools are described below.

search

  • Purpose: general web search across multiple providers
  • Key parameters:
ParameterRequiredDefaultNotes
queryYesSearch query text
max_resultsNo10Number of results to return
search_serviceNogoogleOptions: google, bing, duckduckgo, yahoo, x, reddit, github, youtube, arxiv, wechat, bilibili, imdb, wikipedia
crawl_resultsNo0Number of top results to fetch full HTML/text
include_sitesNo[]Whitelist domains
exclude_sitesNo[]Blacklist domains
time_rangeNoday, month, year

news

  • Purpose: news-focused article search
  • Key parameters: query (required), max_results (default 10), search_service (default bing; options include google, bing, duckduckgo, yahoo, hackernews), crawl_results, include/exclude sites, time_range

crawl

  • Purpose: fetch and extract content from a specific URL
  • Parameters: url (required)

sitemap

  • Purpose: enumerate links related to a URL / site
  • Parameters: url (required)

reasoning

  • Purpose: run longer-form reasoning using DeepSeek R1
  • Parameters: content (required) — the question or task to process

trending

  • Purpose: fetch trending items
  • Parameters: search_service (github, hackernews), max_results (default 10)

Use Cases

  1. Enrich an LLM answer with live web citations
  • Flow: Agent issues a search tool call with query=“latest GPU releases 2026”, max_results=5, crawl_results=2. The MCP server returns structured search hits plus full text for the top 2 pages to extract quotes and cite URLs.
  1. News monitoring for a topic
  • Example: call the news tool with query=“banking fraud detection”, time_range=day, max_results=20 to surface recent articles from Bing/Hacker News. Optionally set include_sites to preferred outlets.
  1. Extract article text for ingestion
  • Example: use the crawl tool to fetch a URL and return the cleaned article body, metadata (title, author, published date), and main images for downstream indexing.
  1. Site map and link discovery for scraping
  • Example: call sitemap with url=“https://example.com” to retrieve discovered links, filter by path prefix, and schedule deeper crawls for selected pages.

Example JSON payload for a search tool call (for MCP-capable clients):

{
  "tool": "search",
  "params": {
    "query": "quantum computing news",
    "max_results": 8,
    "search_service": "google",
    "crawl_results": 2,
    "time_range": "month"
  }
}

Notes and Licensing

  • Authentication: prefer the Authorization: Bearer header for per-request scoping; query parameter is supported for convenience.
  • The repository and server are MIT licensed. For agent integration, see the separate search1api-cli package for skill tooling and examples.

If you are new to MCP-based connectors, start with the hosted URL + Authorization header configuration in your MCP client, test simple search calls, then enable crawl_results incrementally to fetch page content.