The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Undertow — market liquidity map listing page.
Endpoint: https://api.seiche.info/undertow/mcp (streamable HTTP, no install)
Start with a question: Compare BTC exit estimates in your browser. Choose a dollar size and click to read the current published venue estimates, snapshot date and method. No account, key, wallet or client installation is needed for this example. The result is a depth-based estimate, not an executable quote. The same page provides Codex, Claude Code, Cursor and VS Code setup.
Try it live: liquilens-undertow.com/developers · API catalog: api.seiche.info/undertow
Undertow exposes estimated exit cost by position size and venue, the concentration of
quoted depth, realized depth-collapse episodes, and liquidity tiers across market segments.
This MCP 1.10.0 endpoint exposes 18 read-only tools, split into 10 public and 8 subscriber
tools, plus 3 guided prompts. Its capability inventory is pinned to liquilens-undertow
commit 9d1fedc28dca133fe6f9e018af1e381e247b8c9b, the hosted implementation at
deploy/hetzner/undertow-mcp. The stdio discovery server in
undertow_mm/mcp_server.py is a separate discovery surface; it is neither
this registry listing nor the public stdio adapter provided here.
Claude Code:
Claude.ai / ChatGPT / Cursor: add a custom connector or MCP server with the URL above. No key and no wallet for the free surface.
This repository contains the discovery manifest, documentation and an optional
anonymous stdio adapter for the hosted service. The official registry serves
io.github.beepboop2025/undertow version 1.10.0.
The direct hosted URL above remains the simplest connection. For clients that require stdio, clone this repository at a reviewed commit and use Python 3.12+ and uv:
A Claude Desktop configuration can use uv as its command and
["run", "--directory", "/absolute/path/to/undertow-mcp", "--locked", "undertow-mcp"]
as its arguments. The stdio adapter exposes only the 10 anonymous tools and
three prompts; subscriber access uses the direct hosted URL instead.
For Docker and Glama's container build:
The root Dockerfile runs as an unprivileged user and starts stdio directly.
No API key, bearer token, wallet, port, volume or environment setting is needed.
Outbound HTTPS access to the fixed api.seiche.info endpoint is required.
Redirects, environment proxies and arbitrary upstream URLs are disabled.
Requests are capped at 64 KiB, responses at 2 MiB, and each upstream operation
at 10 seconds including queue wait. No automatic retries or response cache can
hide outages or spend a quota twice. Upstream version/catalog drift fails closed.
Tool results, native isError values and rights refusals are preserved.
A Glama maintainer can configure the root Dockerfile, complete its build test, and publish a Glama release from the listing's admin page. A GitHub commit or release does not create a Glama release. This repository does not claim a grade until Glama has actually rescanned and inspected it. See Glama's release guide.
2026-07-28: stateless requests use server/discover, per-request _meta,
MCP-Protocol-Version, and mirrored Mcp-Method / Mcp-Name routing headers.2025-11-25, 2025-06-18, and 2025-03-26: retained legacy initialization,
tools, prompts, notifications, batching, and ping behavior.tools/list returns only the public inventory; entitlement is checked fresh on every
subscriber request.resources/list and resources/templates/list return explicit empty catalogs.
resources/read returns a not-found error and never invents a resource.In the snapshot generated at 2026-08-08T15:01:22Z, selling $1,000,000 of BTC at the selected $1,000,000 published size rung cost 2.386 bp on Binance and 13.623 bp on Bitfinex: about $238.60 against $1,362.30. Gemini was the dearest observed venue in that same snapshot at 25.852 bp, or about $2,585.20.
Venue rankings can change during the day, and those differences are not visible in a single consolidated price. Undertow publishes the observation time and venue inputs with the estimate.
| Tool | What it serves | Surface |
|---|---|---|
agent_access_status | Your current tier, daily meter, grants, and the exact route to Agent or Desk access | free |
board_full | Every measure with its stress percentile or ACCRUING label, limits and analyst note | subscriber |
corporate_transmission | Whether funding stress is reaching nonfinancial firms | subscriber |
depth_episodes | Realized depth-collapse episodes with onset, trough, drawdown and recovery, against thresholds declared before any episode accrued | free |
divergence_status | Compact comparison of corporate and household transmission regimes | subscriber |
exit_cost | Per-venue sell cost in basis points at the nearest published size rung, cheapest and dearest venue with approximate dollar cost, and the venue spread | free |
exit_desk_full | BTC and ETH at every published rung, plus the venue-failure withdrawal scenario | subscriber |
exit_schedule | Position-sized hour-by-hour liquidation schedule beside immediate and TWAP baselines | subscriber |
household_credit | Whether funding stress is reaching household balance sheets | subscriber |
latest_article | The exact reviewed daily market-liquidity editorial with its evidence clock and publication authority | free |
liquidity_tiers | A liquidity tier per market segment (UST, IG, HY, equities, ETF, FX, China basin, crypto) with the funding-stress overlay | free |
sealed_record | The sealed forward-calls record, hash-chained and signed before outcomes, misses kept | free |
tide_clock | Clock-phase liquidity map and exit-cost-by-phase for BTC or ETH perpetuals | subscriber |
trade_safety_exit_context | Exact-rung BTC/USD sell context with request, PIT, rights, clock and depth checks; unavailable inputs remain unavailable, never order clearance | free |
unwind_stress | Full institutional unwind and forced-sale stress pack | subscriber |
unwind_watch | Banded public watch over institutional unwind time and forced-sale pressure, with exact sensitive quantities withheld | free |
venue_concentration | The BTC depth backbone: top venue share of aggregate depth, HHI, effective venue count, per-venue depth in USD | free |
venue_price_reconciliation | A consensus mark weighted by resting depth over squared half-spread, plus the gap between the deepest venue and consensus | free |
| Prompt | Guided playbook |
|---|---|
can_this_book_exit | Compare watched-book door width, unwind horizon, margin clock, venue concentration, and realized depth collapses |
exit_cost_check | Price a position-sized exit across venues and identify the observed depth limitations |
market_liquidity_briefing | Read the market-level liquidity board, funding overlay, concentration, and current exit-cost evidence together |
Commodity futures are intentionally absent from that table. Undertow has no
licensed point-in-time depth by contract month, venue and session, so
executable commodity exit cost is CANNOT_ASSESS_EXECUTABLE_EXIT_COST; open
interest or daily volume is never substituted. For aggregate WTI/Henry Hub
cash pressure, Cushing and benchmark structure, call Seiche's public
oil_funding_context or use /oil in
@seiche_desk_bot.
Research and market data, not investment advice.
The Agent and Desk tiers unlock the eight subscriber tools. Send /agent to the
Telegram bot to mint a bearer token:
The token proves identity only. Entitlement is re-read from live membership on
every call, so access stops when the subscription does rather than when the token
expires. Subscriber tools are invisible to an anonymous tools/list, and
agent_access_status tells you where you stand.
Only tools/call is metered, reported on X-MCP-Usage-Used, X-MCP-Usage-Limit
and X-MCP-Usage-Remaining. GET /undertow/mcp/usage is the self-meter. Hitting a
quota returns a normal JSON-RPC result carrying isError and an upgrade pointer,
never a dropped connection.
This repo is the listing: a README and the two manifests that let directories
describe the server accurately. The server itself is hosted at the endpoint above;
its source is deploy/hetzner/undertow-mcp in the
Undertow product repository
and the registry target remains hosted 1.10.0. The adapter forwards the native public schemas and results without computing
market values or granting subscriber access. Its own version is 0.1.0; the
upstream contract is 1.10.0.
The verification workflow validates the exact 40-character releaseCommit in
contract.json against the immutable source receipt in source-receipt.json. The
receipt binds that commit and contract to SHA-256 digests of the hosted implementation
and registry manifest without granting this public repository access to the private
product repository. A maintainer creates or updates the receipt only after running the
local pinned-core verifier against a clean checkout; that verifier derives the
public/subscriber split, prompt inventory, protocol versions, server identity and
registry manifest directly from the source and checks both artifact digests. A branch
name or current product-repository HEAD is never accepted as release provenance.
A separate scheduled and manually dispatchable smoke makes anonymous, read-only calls
to the listed endpoint. It initializes the legacy protocol, exercises modern discovery,
checks the public tools, subscriber advertisement, prompts and explicit empty resource
catalogs, then calls agent_access_status. It does not use a bearer token or exercise a
subscriber tool. Run the same checks locally with:
The source pin is a reviewed contract boundary, not an HTTP deployment receipt. Undertow's release controller records the deployed SHA and append-only receipts on the host, while the public MCP response currently reports its semantic version and capability catalog but no exact Git commit. Therefore a green live smoke proves the published behavior, not that the host runs this exact SHA. Do not repin this listing from a matching version or catalog alone; require the host's exact successful deployment receipt (or an equivalent authenticated SHA attestation) first.
Human front door: liquilens-undertow.com and the Telegram desk.
The original public integration code and documentation in this repository are MIT licensed. See NOTICE.md for scope: this grant does not cover the private Undertow service or third-party market data. Native access controls, evidence limitations and source-rights holds still apply.