Skip to content

MCP server

analog-mcp exposes Analog to MCP-compatible agents. It reads the credential the analog CLI stores, so install both tools and sign in once:

Terminal window
uv tool install analog-sdk # the `analog` CLI
analog signup # new account: creates it and connects this terminal
analog login # …or this, for an existing account
uv tool install analog-mcp # the MCP server — or: pipx/pip install analog-mcp

The credential lands in the local store and the MCP server reads it from there; no key ever lands in a config file.

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
"mcpServers": {
"analog": { "command": "analog-mcp" }
}
}

Restart the client. Cursor and other stdio MCP clients configure the same way: the server command is analog-mcp.

  • analog(url, pages=N) — extract a page; returns structured JSON plus a handle. Pass pages=N (max 50) to follow the page’s own next-page links and merge up to N pages into one result — each page costs one extraction, disclosed on the response.
  • assess(url, probe_feed) — the fit check: measured markdown size, task guidance, verified platform feeds, pagination facts. No sign-in required.
  • analog_history(limit=N) — list saved results, newest first, as cheap metadata (handle, url, when saved, size) to recover a handle you no longer have in context.
  • analog_open(handle) — re-open a previous result, no re-fetch.
  • analog_export(handle, fmt) — re-emit as json / csv / yaml / md.
  • analog_section(handle, index) — one section’s records.
  • analog_find(handle, pattern, field) — search a result across sections; field scopes the search to one field.
  • analog_navigation(handle) — a saved result’s navigation map: the page’s nav, header, footer, and sidebar link structure as labeled trees, mega-menu content included.
  • analog_describe(handle) — a token-cheap preview of a saved result (section shapes plus sample records) for orienting without the full JSON.
  • analog_feedback(...) — report a poor extraction (reason labels are enumerated in the schema) or send a feature request.

Every result is saved locally, so the analog_* tools re-slice without re-fetching or re-rendering.