Docs

SeaWeb Docs

The context API AI agents call to search travel sources.

What SeaWeb is

Your agent asks in plain language and gets back structured JSON from indexes we crawl and curate ourselves — never raw HTML — with a label on every result saying how good the match actually is, including “we can’t stand behind this.”

Under the hood, retrieval is hybrid — keyword and semantic, routed per query — rather than an embedding call on every request, which is what keeps the per-query price low at volume.

Try MCP without a key: SEAWEB_ANON on https://api.seaweb.tech/mcp — read-only tools, 20 calls / 60s per IP. Mint a key for higher per-tool limits. Tool flow for agents: discover → retrieve → act (entities first, then search_web, then extract / disruption Watch). Details: MCP docs.

Everything hangs off three endpoints. Each has a guide for humans and a self-contained reference written to be pasted into a coding agent:

Search

Ask a question, get ranked passages and entity cards from our partial travel-focused corpus — optionally scoped to sentiment or disruptions. No external fallback. Agent reference →

Extract

Give a public HTML URL, get clean title, text, and passages — index first, one live fetch on a miss, subject to publisher and private-network limits. Agent reference →

Monitor

Register a standing query with a webhook; get a signed POST when something changes. Agent reference →

Quickstart

1. Get a key. Sign up at seaweb.tech/signin — takes under a minute. Keys look like sw_….

2. Point your client at the gateway.

{
  "mcpServers": {
    "SeaWeb": {
      "url": "https://api.seaweb.tech/mcp",
      "headers": { "Authorization": "Bearer sw_your-key-here" }
    }
  }
}

Where that goes for every client — Cursor, Claude Code, Codex, VS Code, claude.ai, ChatGPT — is on the SeaWeb MCP page, along with the raw HTTP flow if your stack isn't MCP-aware.

3. Ask something. Once connected, your agent calls the tools on its own:

You:   "What's the crowding situation in Kyoto right now?"
Agent: search_web(query="Kyoto congestion", limit=5)
       → {"coverage": "covered", "results": [
            {"url": "…", "title": "…", "text": "…",
             "fetched_at": "2026-07-24", "untrusted_content": true}, …]}

Your internal data

The same engine that searches our web indexes can be pointed at yours — trace logs, docs, tickets, product databases — behind the same MCP tools, built to your request. The story is on the product page; pricing is a setup fee plus a flat monthly rate. Email us what you're trying to search.

Rate limits, billing, errors

Per key, per rolling minute:

ToolLimit
get_entity60 / min
search, get_details, list_disruption_events30 / min
extract_url, search_destination_sentiment, list_verticals, list_sources10 / min
Anything else30 / min

Free includes 1,000 queries per month with a hard stop at the cap. Growth is $100/month for 25,000 queries and disruption monitors; contact sales for other usage. Details on the pricing page.

  • 401 — missing or invalid key. A bad key always 401s; it never silently downgrades.
  • 406 — you didn't send Accept: application/json, text/event-stream.
  • Rate limited — returned as an error string in the tool result, not an HTTP status.
  • {"error": …} — bad arguments, an unknown entity, a non-HTTP URL, or a page we're not allowed to serve.

Questions

Something in these docs wrong or missing? Tell us — or find us on Discord. If a tool ever returns something these docs don't explain, treat tools/list as the source of truth and let us know.