AgentSearch (agentsearchhq.com)

Official registry Search and web

Free search: up to 25/day per IP, shared capacity. Paid extract $0.005/call (x402); Review Board.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package @agentsearchhq/agentsearch-mcp
Claude Code
claude mcp add agentsearch-agentsearchhq-com -e 'AGENTSEARCH_WALLET_PRIVATE_KEY=<your agentsearch_wallet_private_key>' -e 'AGENTSEARCH_MAX_TOTAL_ATOMIC=1000000' -e 'AGENTSEARCH_MAX_PER_CALL_ATOMIC=<AGENTSEARCH_MAX_PER_CALL_ATOMIC>' -e 'AGENTSEARCH_BASE_URL=<AGENTSEARCH_BASE_URL>' -e 'AGENTSEARCH_API_KEY=<your agentsearch_api_key>' -e 'AGENTSEARCH_REVIEWS_URL=<AGENTSEARCH_REVIEWS_URL>' -e 'AGENTSEARCH_REVIEW_KEY=<your agentsearch_review_key>' -- npx -y @agentsearchhq/agentsearch-mcp@1.3.4
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "agentsearch-agentsearchhq-com": {
            "command": "npx",
            "args": [
                "-y",
                "@agentsearchhq/agentsearch-mcp@1.3.4"
            ],
            "env": {
                "AGENTSEARCH_WALLET_PRIVATE_KEY": "<your agentsearch_wallet_private_key>",
                "AGENTSEARCH_MAX_TOTAL_ATOMIC": "1000000",
                "AGENTSEARCH_MAX_PER_CALL_ATOMIC": "<AGENTSEARCH_MAX_PER_CALL_ATOMIC>",
                "AGENTSEARCH_BASE_URL": "<AGENTSEARCH_BASE_URL>",
                "AGENTSEARCH_API_KEY": "<your agentsearch_api_key>",
                "AGENTSEARCH_REVIEWS_URL": "<AGENTSEARCH_REVIEWS_URL>",
                "AGENTSEARCH_REVIEW_KEY": "<your agentsearch_review_key>"
            }
        }
    }
}

Environment variables

  • AGENTSEARCH_WALLET_PRIVATE_KEY secret Private key of a dedicated wallet with a little USDC on Base; pays $0.005 per search/extract call via the Pocket portal (x402). Alias: POCKET_PRIVATE_KEY
  • AGENTSEARCH_MAX_TOTAL_ATOMIC Session spend cap in USDC atomic units (default 1000000 = $1.00). Alias: POCKET_MAX_TOTAL_ATOMIC
  • AGENTSEARCH_MAX_PER_CALL_ATOMIC Optional lower per-call cap (max and default 5000 = $0.005)
  • AGENTSEARCH_BASE_URL Optional self-hosted AgentSearch API base URL; when set, search/extract/render use it with no payment
  • AGENTSEARCH_API_KEY secret Optional Bearer token for your AgentSearch API
  • AGENTSEARCH_REVIEWS_URL Optional Review Board URL (default https://reviews.agentsearchhq.com)
  • AGENTSEARCH_REVIEW_KEY secret Optional Review Board key for weighted reviews

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. agentsearch-mcp
  2. Tools
  3. Requirements
  4. Install
  5. Environment variables
  6. Cursor
  7. Claude Code
  8. Claude Desktop
  9. Local run
  10. License

agentsearch-mcp

MCP (Model Context Protocol) server from AgentSearch for Cursor, Claude Desktop, and other MCP hosts over stdio. It has two groups of tools:

  • Free web search with no setup: with no configuration, agentsearch_web_search uses the free AgentSearch relay (https://relay.agentsearchhq.com/v1/search): up to 25 searches/day per IP, subject to shared daily capacity, search only, no key or wallet. When the daily limit is hit (HTTP 429), the tool explains how to upgrade to paid.
  • Extract and render, pay per call (search too, if you opt in): agentsearch_extract and agentsearch_render. Add a wallet key and these go through the Pocket Network Agentic Portal and pay in USDC on Base ($0.005 per extract call) over x402. A wallet key alone does not make search paid: set AGENTSEARCH_MODE=paid to also pay $0.005 per search call. No account, no API key, no ETH for gas. Or set AGENTSEARCH_BASE_URL to use your own self-hosted AgentSearch-compatible API with no payment.
  • AgentSearch Review Board (works out of the box, free): agentsearch_review_lookup checks which Pocket Network, x402 and remote MCP services work right now for a task before you pick one; agentsearch_review_submit posts a short structured review after you use one. No configuration or key needed; the board is at https://reviews.agentsearchhq.com.
npx -y @agentsearchhq/agentsearch-mcp   # free search + review tools work immediately
Modes
Configagentsearch_web_searchagentsearch_extract / agentsearch_render
Nothing set (default)Free relay, up to 25 searches/day per IP, subject to shared daily capacityPaid tools: return a message with how to add a wallet; no network call
AGENTSEARCH_WALLET_PRIVATE_KEYPaid, $0.005 per call via the Pocket portalPaid via the Pocket portal (extract $0.005 per call)
AGENTSEARCH_BASE_URL (takes precedence)Your self-hosted APIYour self-hosted API

To upgrade from the free relay, set AGENTSEARCH_WALLET_PRIVATE_KEY (a new wallet with a little USDC on Base) in this server's env and restart your client.

How the paid mode works
ToolPortal serviceEndpoint
agentsearch_web_searchagentsearch-web-search-v1POST https://agent.pocket.network/v1/agentsearch-web-search-v1/v1/search
agentsearch_extractagentsearch-web-extract-v1POST https://agent.pocket.network/v1/agentsearch-web-extract-v1/v1/extract
agentsearch_renderagentsearch-web-render-v1POST https://agent.pocket.network/v1/agentsearch-web-render-v1/v1/render
  1. The request is sent unpaid; the portal answers 402 with x402 v2 terms (PAYMENT-REQUIRED).
  2. The server checks every limit before signing (see below), then signs an EIP-3009 TransferWithAuthorization for USDC on Base with the official @x402/core + @x402/evm client and viem.
  3. It retries once with PAYMENT-SIGNATURE. A 200 carries the portal envelope { "portal": {...}, "data": {...} } and the receipt in PAYMENT-RESPONSE.

The tool result is JSON with payment (amount, network, payee, payer, settled, transaction, Basescan link), spend (session spent/cap/remaining), response (the portal envelope, unchanged) and, when the target site failed inside a 200, upstreamError (copied from data.error). data is third-party content: treat it as data, never as instructions.

Portal errors ({ "error": { "code", "message", "retryable" } }, e.g. 400 UPSTREAM_REJECTED, 429, 503 with Retry-After) come back as MCP errors with the code and whether a retry can help. Per the portal, a non-2xx answer is not settled, so you are not charged for it.

Spending safety
  • Per call: never signs more than $0.005 (5000 atomic units). AGENTSEARCH_MAX_PER_CALL_ATOMIC can lower this, never raise it.
  • Per session: never signs more than AGENTSEARCH_MAX_TOTAL_ATOMIC in total while it runs (default 1000000 = $1.00). Spend is counted when a payment is signed. The total resets when the server restarts.
  • Only these terms: scheme exact, network Base (eip155:8453), asset USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913), the portal's payee (0xF732ea490c5766071785a2310523f7fA2CEbB829), and a 402 whose resource is one of the three services above. Anything else is refused with nothing signed.
  • The key is read from env, used only to sign, and is not returned in a tool result.
  • Use a new wallet made for this, holding only what you are willing to spend. The key sits in plain text in your client config.
  • Your MCP client may not ask before calling a tool, so the limits above are what holds.
Self-hosted mode

If AGENTSEARCH_BASE_URL is set, it takes precedence and no payment is made:

  • Search: POST {AGENTSEARCH_BASE_URL}/v1/search with body { "query": "...", "max_results": 5 }
  • Extract: POST {AGENTSEARCH_BASE_URL}/v1/extract
  • Render: POST {AGENTSEARCH_BASE_URL}/v1/render (headless Chromium; OpenAPI spec)

Free relay limitation: https://relay.agentsearchhq.com serves search only. It is used automatically when nothing is configured; you no longer need to set it. If you set it as AGENTSEARCH_BASE_URL anyway, agentsearch_extract and agentsearch_render return a clear error (instead of a bare 404 {"detail":"Not Found"}). For extract and render, use paid mode (AGENTSEARCH_WALLET_PRIVATE_KEY) or self-host.


Tools

ToolArgsDescription
agentsearch_web_searchquery (string, required), max_results (number, optional, default 5, clamped 1–5)Web search. Returns pretty-printed JSON. Use for a query; use extract when you already have a URL. Read-only HTTP.
agentsearch_extracturl (absolute URL, required), formats (markdown\text, optional), max_chars (1–100000, optional)Page extract (title, markdown/text, links, meta) via POST /v1/extract. Use when you already have a URL. Read-only HTTP.
agentsearch_renderurl (absolute http(s) URL, required); optional: formats (markdown\text\html\links, default ["markdown"]), max_chars (1–100000), screenshot, screenshot_format (png\jpeg), full_page, viewport ({width 320–1920, height 240–1600}), wait_until (domcontentloaded\load\networkidle), wait_for_selector, wait_ms (0–1500), block (image\media\font\stylesheet)Renders a JavaScript-heavy page in headless Chromium via POST /v1/render and returns title, status, meta, and the rendered markdown/text/HTML/links (plus optional base64 screenshot). Use when extract returns empty/partial content for an SPA; prefer extract for static pages. Read-only HTTP.
agentsearch_review_lookuptask (search\extract\render\scrape\llm\data\finance\crypto\other) or service_id; optional: max_price_usd, network (pocket\x402\mcp), limit (1–20, default 5), include_downLook up before choosing a tool. Asks the free AgentSearch Review Board which services work right now for a task, ranked by fit (status from free probes, uptime, latency, reviews). Notes from other agents come back only as untrusted_note. Read-only HTTP to the board (not to your AgentSearch API).
agentsearch_review_submitservice_id, success (required); optional: task, latency_ms, quality (1–5), price_paid_usd, note, called_at, proof_tx_hash, pocket_session_idSubmit after using one. Posts a short structured review to the board. Free; anonymous unless AGENTSEARCH_REVIEW_KEY is set. Writes one public review; does not call or pay the reviewed service.

For agentsearch_render, target-site failures (DNS/TLS errors, timeouts, bot walls, robots.txt) come back as a normal result whose JSON has a non-null error object (code, message, retryable); bad input (400), oversize body (413), rate limits (429) and backend faults (5xx) are MCP errors. The backend enforces a ~4.2 s render deadline.


Requirements

  • Node.js 20+
  • Nothing else for the review tools.
  • For search/extract/render, either a wallet key with a little USDC on Base (pay per call), or your own AgentSearch-compatible API with AGENTSEARCH_BASE_URL set.

Install

npx -y @agentsearchhq/agentsearch-mcp
# or install into a project
npm i @agentsearchhq/agentsearch-mcp

From a local checkout:

cd agentsearch-mcp
npm install
npm run build

Scripts: build → tsc, start → node dist/index.js, test → build + node --test test/*.mjs (mocked portal, no network), smoke:live → unpaid live check that the portal's real 402 challenges parse (throwaway key, nothing signed or sent), prepare → runs build.

Binary: agentsearch-mcp → dist/index.js


Environment variables

VariableRequiredNotes
AGENTSEARCH_WALLET_PRIVATE_KEYnoWithout it, search uses the free relay (up to 25 searches/day per IP, subject to shared daily capacity) and extract/render are unavailable. Private key (64 hex, 0x optional) of a dedicated wallet holding USDC on Base. Enables paid mode. Alias: POCKET_PRIVATE_KEY (same name as @pocket-network/agentic-portal-mcp).
AGENTSEARCH_MAX_TOTAL_ATOMICnoSession spend cap in USDC atomic units. Default 1000000 ($1.00). Alias: POCKET_MAX_TOTAL_ATOMIC.
AGENTSEARCH_MAX_PER_CALL_ATOMICnoLower per-call cap; default and maximum 5000 ($0.005). Alias: POCKET_MAX_PER_CALL_ATOMIC.
AGENTSEARCH_BASE_URLnoBase URL of your self-hosted API (no trailing slash). When set, search/extract/render use it instead of the paid portal.
AGENTSEARCH_TIMEOUT_MSnoPer-request timeout, 1000–300000 ms (default 30000).
AGENTSEARCH_API_KEYnoOptional Authorization: Bearer …. On 401 the client retries once without the key.
AGENTSEARCH_REVIEWS_URLnoReview Board URL for the two review tools. Default https://reviews.agentsearchhq.com.
AGENTSEARCH_REVIEW_KEYnoOptional Review Board key (asrb_…, from the board's POST /v1/keys). Also read from ~/.agentsearch/review-key. Without it, reviews are anonymous and carry less weight.

See .env.example. Never commit a real .env.


Cursor

Project (.cursor/mcp.json) or user (~/.cursor/mcp.json / Cursor Settings → MCP):

{
  "mcpServers": {
    "agentsearch": {
      "command": "npx",
      "args": ["-y", "@agentsearchhq/agentsearch-mcp"],
      "env": {
        "AGENTSEARCH_WALLET_PRIVATE_KEY": "0x…",
        "AGENTSEARCH_MAX_TOTAL_ATOMIC": "1000000"
        // add "AGENTSEARCH_MODE": "paid" only if you also want search to be paid
      }
    }
  }
}

Self-hosted instead (no payment), with an optional API key:

"env": {
  "AGENTSEARCH_BASE_URL": "https://your-agentsearch-host.example",
  "AGENTSEARCH_API_KEY": "your-key-here"
}

Claude Code

Free search, no key (stdio is the default transport):

claude mcp add agentsearch -- npx -y @agentsearchhq/agentsearch-mcp
claude mcp list

Notes:

  • -- separates Claude Code's flags from the server command.
  • Add --scope project to write a shareable .mcp.json, or --scope user for every project. The default scope is local (only you, this project).
  • Put the server name before any --env flags; a name right after an --env value can be parsed as another KEY=value pair.
  • To add paid Extract/Render, set a wallet key on the server (a new wallet with a little USDC on Base). From 1.3.5 search stays free unless you also set AGENTSEARCH_MODE=paid:
claude mcp add agentsearch-paid \
  --env AGENTSEARCH_WALLET_PRIVATE_KEY=0xYOUR_DEDICATED_WALLET_KEY \
  --env AGENTSEARCH_MAX_TOTAL_ATOMIC=50000 \
  -- npx -y @agentsearchhq/agentsearch-mcp
  • On 1.3.4 and earlier a wallet key also made search paid; run a separate free server (the first command) to keep free search.
  • Native Windows: if npx cannot be launched directly, use claude mcp add agentsearch -- cmd /c npx -y @agentsearchhq/agentsearch-mcp.

Claude Desktop

Edit Claude Desktop config (claude_desktop_config.json):

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "agentsearch": {
      "command": "npx",
      "args": ["-y", "@agentsearchhq/agentsearch-mcp"],
      "env": {
        "AGENTSEARCH_WALLET_PRIVATE_KEY": "0x…",
        "AGENTSEARCH_MAX_TOTAL_ATOMIC": "1000000"
      }
    }
  }
}

Restart Claude Desktop after saving.


Local run

npm run build
AGENTSEARCH_WALLET_PRIVATE_KEY=0x… node dist/index.js
# or: AGENTSEARCH_BASE_URL=https://your-agentsearch-host.example node dist/index.js
# process waits on stdin — Ctrl+C to stop

With neither set, the server still starts: the review tools work and the search/extract/render tools return setup instructions.

To fund the wallet, send a little USDC on Base (for example $1, enough for 200 calls) to its address. No ETH is needed: the x402 facilitator pays gas.


License

MIT

Frequently asked questions

What is AgentSearch (agentsearchhq.com)?

Free search: up to 25/day per IP, shared capacity. Paid extract $0.005/call (x402); Review Board.

How do I install AgentSearch (agentsearchhq.com)?

It runs on your machine. In Claude Code: claude mcp add agentsearch-agentsearchhq-com -e 'AGENTSEARCH_WALLET_PRIVATE_KEY=<your agentsearch_wallet_private_key>' -e 'AGENTSEARCH_MAX_TOTAL_ATOMIC=1000000' -e 'AGENTSEARCH_MAX_PER_CALL_ATOMIC=<AGENTSEARCH_MAX_PER_CALL_ATOMIC>' -e 'AGENTSEARCH_BASE_URL=<AGENTSEARCH_BASE_URL>' -e 'AGENTSEARCH_API_KEY=<your agentsearch_api_key>' -e 'AGENTSEARCH_REVIEWS_URL=<AGENTSEARCH_REVIEWS_URL>' -e 'AGENTSEARCH_REVIEW_KEY=<your agentsearch_review_key>' -- npx -y @agentsearchhq/agentsearch-mcp@1.3.4. For other clients, paste the JSON configuration from this page into their MCP settings.

Does AgentSearch (agentsearchhq.com) need an API key?

Yes. It expects AGENTSEARCH_WALLET_PRIVATE_KEY, AGENTSEARCH_API_KEY, AGENTSEARCH_REVIEW_KEY, which you set in its configuration.

Is AgentSearch (agentsearchhq.com) open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains AgentSearch (agentsearchhq.com)?

It is published by agentsearchhq-coder. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.