Neurobird Search API reference

Neurobird Search API reference

Base URL https://search.neurobird.com. Every route is also available under /v1. Authenticate with Authorization: Bearer <key>, and create a key with an unauthenticated POST /keys.

Interactive docs OpenAPI JSON Payment options Status Home

POST /search/stream

Search with streamed stages (SSE)

Emit each pipeline stage as it completes.

An agent can start reading ranked links while extraction and summarisation are still running, which removes most of the perceived latency of deep search.

No authentication required.

FieldTypeNotes
query requiredstring
search_depthbasic | standard | advanced default "basic"
topicgeneral | news | code | science | finance default "general"
max_resultsinteger default 5
daysinteger or null
time_rangestring or null
include_domainsarray
exclude_domainsarray
countrystring or null
languagestring or null
include_answerboolean or string default false
include_raw_contentboolean or string default false
include_imagesboolean default false
verify_quotesboolean default false
schemaobject or null
expand_queryboolean or null
chunks_per_sourceinteger default 3

POST /extract

Extract clean page content

Fetch one or more URLs and return the main content as clean markdown, with navigation, adverts and boilerplate removed. PDFs are converted to text.

Pass `query` to trim each page to the passages relevant to it. Pass `schema` to fill a JSON Schema from each page. Costs 1 credit per page.

No authentication required.

FieldTypeNotes
urls requiredarray
formatmarkdown | text default "markdown"
include_imagesboolean default false
schemaobject or null
querystring or null

POST /mcp

Model Context Protocol server (streamable HTTP)

A hosted MCP server over the streamable HTTP transport, speaking JSON-RPC 2.0. Add it to Claude Code with:

claude mcp add --transport http neurobird-search https://search.neurobird.com/mcp --header "Authorization: Bearer $KEY"

The same URL works in any MCP client that supports streamable HTTP, including Cursor, Windsurf, Zed and the Claude desktop app.

Methods: `initialize`, `tools/list`, `tools/call`, `ping`. Tools: `web_search` (ranked sources with page passages already extracted) and `extract_url` (any page as clean markdown).

Requires Authorization: Bearer <key>.

FieldTypeNotes
jsonrpc required2.0
idOmitted for notifications.
method requiredinitialize | tools/list | tools/call | ping
paramsobject

POST /keys

Create a free API key (no signup)

Keyless evaluation path, now throttled rather than unlimited.

The per minute limit alone only stopped a fast loop; a patient one could still mint keys forever from one address. A daily cap per address makes the free tier cost a new IP per handful of keys. Anyone who needs more than that legitimately makes an account, where the limits are per account instead.

No authentication required.

GET /usage

Usage for the calling key

Request count, credits consumed and average latency for the calling key.

Requires Authorization: Bearer <key>.

GET /billing/balance

Credit balance for the calling key

Credit balance for the calling key, split into the free monthly grant and purchased credits, with purchase history.

Requires Authorization: Bearer <key>.

GET /billing/packages

Credit packs available for purchase

Credit packs available for purchase, the price per 1,000 for each, which payment methods are live, and what each kind of request costs in credits.

No authentication required.

POST /billing/crypto/checkout

Buy a credit pack with crypto

Create a NOWPayments invoice for a credit pack.

The order id is ours and is echoed back on the callback, which is how a payment is tied to an API key without trusting anything sent by the payer.

Requires Authorization: Bearer <key>.

GET /payments

How this API can be paid for

Machine readable payment options.

An agent deciding whether it can use this service should be able to find out without first triggering a 402.

No authentication required.

GET /health

Service health

Service health: whether the retrieval backend is reachable, how many egress addresses are active, and whether answer generation is available.

No authentication required.

POST /billing/checkout

Start a checkout for a credit pack

Create a Creem checkout session and hand back its URL.

The caller must present the API key the credits should land on, so payment is bound to a key up front rather than guessed from the buyer's email later.

Requires Authorization: Bearer <key>.