Agentsearch Mcp

io.github.IsaiahDupreePublished by GitHub account IsaiahDupreev1.0.0Updated Oct 24, 2026

LLM-ready web search + instant answers + URL-to-clean-text fetch for agents and RAG.

VerifiedStreamable HTTPWeb executableWeb Search & ScrapingKnowledge & Memory

Overview

AI-generated overview

Remote MCP connector exposing web search, keyless instant answers, and URL-to-clean-text fetching for agents and RAG pipelines.

What you can do
  • Search the web through a provider-abstracted backend and get normalized results with position, title, URL, snippet and domain.
  • Look up definitions, entities and quick facts via keyless instant answers.
  • Fetch any public URL and receive boilerplate-stripped text or markdown ready for an LLM context window.
When to use it
Useful when an assistant needs live web results, quick factual lookups, or readable page text for retrieval and summarization without building its own scraping stack. It is a thin pass-through to a metered upstream API, so it suits light discovery use rather than heavy production volume.
Requirements
A remote streamable-HTTP endpoint; no account, OAuth or API key is needed on the MCP side. The connector holds its own upstream proxy secret server-side. Outbound network access to the public web is required for fetching.
Before you install
Fetched page content and search results come from third parties and are passed back verbatim, so treat them as untrusted input. Usage is capped per IP by a soft in-memory rate limit, and the operator describes this as a free discovery tier over a paid API; heavy volume is expected to go through the paid listing. All tools are read-only.

Installation

In SourceWeft

  1. Open Agentsearch Mcp in the dashboard and add it to a workspace.
  2. 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.IsaiahDupree%2Fagentsearch-mcp/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.

{
  "mcpServers": {
    "agentsearch": {
      "type": "http",
      "url": "https://agentsearch-mcp.vercel.app/mcp"
    }
  }
}

README

agentsearch-mcp

A remote MCP (Model Context Protocol) connector for AgentSearch API — an LLM/MCP-native web toolkit for agents and RAG pipelines: web search (provider-abstracted SERP), keyless instant answers, and URL → clean text/markdown fetch ready for an LLM context window.

Live: https://agentsearch-mcp.vercel.app/mcp — 3 tools, one per AgentSearch /v1 endpoint. Since the upstream AgentSearch deployment is metered (RapidAPI/Apify) and gates /v1/* behind a RapidAPI proxy-secret guard, this connector authenticates its own outbound calls with that same secret (AGENTSEARCH_MCP_PROXY_SECRET, sent as the X-RapidAPI-Proxy-Secret header) and applies a soft per-IP rate limit (AGENTSEARCH_MCP_RATE_LIMIT, default 30 tool-calls/hour, in-memory) so the free MCP tier stays a discovery channel rather than an unmetered bypass of the paid listing — see lib/ratelimit.js.

What this is, and why it's a separate connector

AgentSearch API is a plain REST API. Any HTTP client can already call it directly. This repo exists because MCP clients (Claude, ChatGPT, and other MCP-aware agents) don't consume arbitrary REST APIs — they consume MCP tools. agentsearch-mcp is a thin adapter layer that:

  • Exposes each AgentSearch endpoint as a discoverable, typed MCP tool (name, description, zod input schema, annotations) that an LLM can reason about and call directly, instead of having to be taught the REST surface out-of-band.
  • Speaks the MCP streamable-HTTP transport at a single /mcp endpoint, so it can be registered as a connector in Claude, ChatGPT, or any other MCP client with one URL.
  • Does nothing else. It has no business logic of its own — every tool call is a pass-through fetch to AgentSearch, and the JSON response AgentSearch returns is handed back verbatim as the tool result.

Free discovery tier over a metered API

This connector is a free discovery/growth tier in front of the metered AgentSearch API. The upstream (agentsearch-api.vercel.app) is sold on RapidAPI/Apify; this MCP wrapper authenticates to it with the shared RapidAPI proxy secret and caps usage per-IP so it stays a taste-test rather than an unmetered path around the paid plans. Heavy/production volume should go through AgentSearch on RapidAPI/Apify.

Authentication: None on the MCP side (deliberate)

AgentSearch's data has no per-user dimension — it's public web data (SERP results, DuckDuckGo instant answers, cleaned page text). There is nothing to gate per-caller, so this connector intentionally ships with:

  • No OAuth, no login, no bearer tokens for the MCP caller
  • No Supabase / database
  • No demo-vs-real account split — every caller gets the same real, live data

api/mcp.js builds a fresh, stateless McpServer per request and serves it with zero MCP-caller auth checks. The only outbound auth is the upstream RapidAPI proxy secret described above, which the connector holds server-side.

Tool list

One tool per AgentSearch /v1 endpoint (from agentsearch-api/openapi.yaml; /api/health is intentionally not wrapped):

ToolAgentSearch endpointDescription
web_searchGET /v1/searchWeb SERP via a provider-abstracted backend (Brave or Serper). Returns normalized results with position/title/url/snippet/domain.
instant_answerGET /v1/answerKeyless DuckDuckGo instant answer — definitions, entities, quick facts.
fetch_urlGET /v1/fetchKeyless, SSRF-guarded URL → clean, boilerplate-free text or markdown for RAG.

All 3 tools are read-only and annotated { readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true } — none of them write anything, and all of them reflect live, externally-changing web data.

How it wraps agentsearch-api

Each tool handler does a plain fetch(\${AGENTSEARCH_MCP_API_BASE_URL}${path}`, ...)` against the real AgentSearch REST API and returns the parsed JSON as MCP tool-result content:

js
{ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] }

The outbound request carries X-RapidAPI-Proxy-Secret: <AGENTSEARCH_MCP_PROXY_SECRET> so it passes the upstream guard on /v1/*. Upstream HTTP errors (4xx/5xx) are caught and surfaced as a typed MCP error result via an asError helper rather than crashing the request.

Environment variables

VarDefaultPurpose
AGENTSEARCH_MCP_API_BASE_URLhttps://agentsearch-api.vercel.appUpstream AgentSearch base URL (override for local/self-hosted testing).
AGENTSEARCH_MCP_PROXY_SECRET(empty)RapidAPI proxy secret, sent as X-RapidAPI-Proxy-Secret to pass the upstream /v1/* guard. Without it, guarded routes return 403.
AGENTSEARCH_MCP_RATE_LIMIT30Soft per-IP tools/call cap per hour (in-memory, per serverless instance).

Project layout

api/mcp.js       MCP endpoint (StreamableHTTPServerTransport, stateless, no MCP-caller auth)api/health.js    GET /api/healthlib/tools.js     All 3 tool definitions (zod schemas + fetch-and-forward handlers, proxy-secret auth)lib/ratelimit.js Soft per-IP tools/call rate limiterlocal-server.js  Plain-Node http server for local dev / smoke testing (not deployed)test/smoke.mjs   Real end-to-end smoke test (initialize, tools/list, tools/call)vercel.json      Routes /mcp -> api/mcp.js, /health -> api/health.jsserver.json      MCP registry manifest

Local development

bash
npm installnpm run dev          # starts local-server.js on :3900npm run smoke        # runs test/smoke.mjs against the local server

To exercise a real end-to-end fetch through the upstream guard, set the proxy secret first:

bash
export AGENTSEARCH_MCP_PROXY_SECRET=<the RapidAPI proxy secret>npm run dev &npm run smoke

Source: README.md at commit c585fcf

Tools

3

instant_answer

Instant answer (keyless)

DuckDuckGo Instant Answer API — definitions, entities, and quick facts. Returns a normalized answer with heading, type (abstract/answer/disambiguation), source, sourceUrl, optional image/definition, and relatedTopics, plus a meta envelope. Not a full web SERP; use web_search for that. Works with no API key.

Parametersqrequired

fetch_url

Fetch a URL as clean text/markdown (RAG-ready)

Fetches any public http(s) URL, strips boilerplate (scripts, nav, footer, ads), and returns clean text or markdown ready for an LLM context window. SSRF-guarded — refuses private/loopback/internal hosts. Returns url, title, format, length, content (and finalUrl when redirected, plus up to 50 extracted links when links=true), with a meta envelope. Works with no API key.

ParametersurlrequiredlinksformatmaxChars

Version history

1
  1. v1.0.0LatestSep 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 listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.