Levirge Search · docs

Docs

How to connect a client to Levirge Search, what each of its nine MCP tools does, and where plans, privacy and support live.

Levirge Search gives AI agents web search and page reading over one remote MCP server. Your agent searches the web, opens pages, APIs and feeds, and gets back readable Markdown or the parts of a JSON or XML body it asked for. Pages that need JavaScript or refuse plain requests open in a full browser automatically.

Endpoint: https://search.levirge.com/mcp · Protocol: MCP over Streamable HTTP · Auth: OAuth 2.0, bearer token as fallback.

Connecting

OAuth (recommended). Add https://search.levirge.com/mcp as a remote MCP server. Sign-in runs through auth.levirge.com with OAuth 2.0; Claude, ChatGPT, Cursor and other OAuth-capable clients open the sign-in page on first use and handle the token for you. No key to copy.

Personal token. For a client without OAuth, create a token in the Search web app under Profile → Your tokens and send it on every request:

Authorization: Bearer <token>

Tokens are per user; revoke one there at any time.

Step-by-step guides:

To confirm a connection works, run stealth_list. It is read-only and returns the list of sources that open in the full browser.

Tools

Nine tools. Each entry gives the tool's name, its title as clients show it, what it does and whether it reads or writes.

Searches the web and returns a list of results, each with title, url and content.

  • query — the search terms.
  • limit — results to return, up to 50.

Read-only.

fetch — Fetch URL

Opens a URL and returns its body. Takes any http(s) URL: web pages, JSON REST APIs, XML APIs and RSS/Atom feeds. Web pages come back as Markdown with a short block naming the route used; JSON and XML come back as the raw body, so they parse directly. YouTube video URLs return the title, channel, description and full timestamped transcript.

Pages that need JavaScript, refuse plain requests or rate-limit are retried in a full browser, and the source is remembered so later requests go straight to the browser. Rate-limited sources are paced to their published cooldown. Bodies are cached, so a follow-up call on the same URL is cheap.

  • url — the page, API or feed to open.
  • select — return only the listed parts of the body, applied on the server. On JSON and XML, jq-lite paths such as commits[].sha or feed.entry[].link.@href, returned in the source's own shape. On Markdown or text, case-insensitive patterns: each heading section that contains one is returned whole.
  • schema — true returns the body's shape instead of the body: keys, types and array lengths for JSON/XML, the heading outline for Markdown.
  • max_bytes — caps the size of the returned body (API bodies can run to several MB).
  • headers — custom request headers, such as Authorization for an API you have access to. A request with headers always opens in the full browser and skips the shared cache.

Read-only.

fetch_async — Queue background fetch

Queues a list of URLs (up to 200) to open in the background and returns straight away. Each job uses the same routing, pacing and caching as fetch. Use it for many pages, or several on one rate-limited source.

  • urls — the URLs to queue.

Write: it adds jobs to your queue. Queuing the same URL again does not duplicate it.

fetch_results — Collect background fetch results

Returns results for URLs queued with fetch_async. Each URL is done (with its content), pending (with the retry attempt and time when backing off), failed (with the error) or unknown (never queued). Failed or unknown URLs can be queued again.

  • urls — the URLs to collect.
  • select, schema, max_bytes — shape each body exactly as in fetch, applied to every result in the batch.

Read-only.

stealth_list — List stealth domains

Lists the sources that need the full browser: pages that need JavaScript or refuse plain requests.

Read-only. Touches only your own workspace settings.

stealth_failures — List stealth failures

Lists sources that were refused even in the full browser. Each entry has the domain, failure count, last URL, decision and time. A registry_hit entry means a source that used to open in the full browser has stopped working.

Read-only. Touches only your own workspace settings.

stealth_add — Register stealth domain

Marks a domain (or URL) as a source that needs the full browser, so later requests to it go straight to the browser.

  • domain — the domain or URL.

Write. Adding the same domain twice leaves the list unchanged.

stealth_remove — Remove stealth domain

Removes a domain (or URL) from the full-browser list, so requests to it are sent directly again. Typical case: a source added after an HTTP 429 rate-limit, which the full browser does not help with.

  • domain — the domain or URL.

Write, and the only destructive tool: it removes an entry from your workspace's list. Clients that ask before destructive calls will ask here.

feedback — Send feedback

Sends a report to the Levirge Search team about a tool that did not work as expected: a wrong or garbled body, bad routing, missing search results or confusing select/schema behaviour.

  • feedback — what was done, what was expected and what happened (10–4000 characters).
  • tool — which tool misbehaved.
  • context — the URL or query involved.

Write: each call adds a new report. Nothing is changed or removed.

Plans, privacy and support

More

  • Examples — worked research runs with the payloads shown.
  • FAQs — what comes up before people connect.
  • search.md — this product as Markdown, for agents.
  • mcp.json — the machine-readable server definition.