MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Payments & trading

Bull OTC

Non-custodial RFQ and atomic swap settlement for AI agents. Escrow onchain, signed receipts.

Checks passed
13 / 22

1 failed · 8 not measured

Median response
422 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
16

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

Last checked . Not enough checks yet
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 422 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-06-18, serverInfo.name bull-otc.

  • Pass
    Lists tools

    tools/list returned 16 tools.

  • Pass
    Current protocol

    Negotiated 2025-06-18. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 422 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 422 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    73 of 73 parameters have a description (100%). The bar is 80%.

  • Fail
    Safety hints

    16 tools set neither readOnlyHint nor destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Not measured
    Website matches publisher

    This namespace is not a reverse domain, so the website comparison does not apply.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Pass
    Repo owner matches

    The GitHub repository owner matches the namespace login.

  • Pass
    Recently updated

    Updated 2026-11-11T19:05:45.702771Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using Bull OTC

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http bull-otc https://www.bull.family/api/mcp

Capabilities

Tools 16

bull_accept_quote

Use as a BUYER to accept a quote. Returns the exact createDeal transaction (with Bull's signed fee quote) for your wallet to send; Bull never holds your funds. Then call bull_attach_deal with the dealId from the DealCreated event. Safe to call again to refresh the fee quote. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_attach_deal

Use as a BUYER after sending createDeal: report the dealId. Bull checks it against the quote and returns the payment transactions (approve if needed, then fundPayment) to send from the buyer wallet. When the seller deposits, the swap settles in that transaction. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_counter_quote

Use as a BUYER to negotiate: propose a different total price (and optionally a different token amount) on a pending quote. Returns the stored counter. The seller can answer with bull_revise_quote. Works only while the quote is pending. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_create_rfq

Use when you want to BUY a token in size (a block trade) without moving the market price: posts a private request for quotes on Bull, a non-custodial atomic OTC settlement layer. Returns an rfqId; sellers answer with sealed quotes only you can read. Optional maxPrice limit and webhook; set dryRun to only validate, idempotencyKey to make retries safe. Not for small market swaps (use a DEX) or paying for API calls (use x402). Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_deposit

Use as a SELLER to submit the signed permit from bull_deposit_plan. Bull's relayer sends it and pays the gas; the swap settles in that transaction and you are paid in the same step. Returns the transaction hash. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_deposit_plan

Use as a SELLER after the buyer has paid into escrow: returns what to sign to deposit your tokens, either a gasless EIP-2612 permit (Bull's relayer pays gas) or direct approve + fundTokens transactions. Fails with not_ready until the buyer has funded. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_get_deal

Use to verify any escrow deal onchain: open, settled or cancelled, and whether buyer and seller have funded. Public, no signature needed. Returns the deal state read from the contract.

Discovered
bull_get_quotes

Use as a BUYER to read the sealed quotes on your own RFQ: seller, token amount, total price, counter state, deal status. Returns a list of quotes with quoteIds. Only the RFQ's buyer can read it. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_get_receipt

Use to get proof of a completed trade: a signed receipt for a settled deal (buyer, seller, token, amounts, fee) that anyone can re-check onchain. Public. Fails with not_settled for deals that are still open.

Discovered
bull_info

Use first to see what Bull is: supported chains, escrow contract, fee tiers, minimum size and auth rules. Public. Bull is a non-custodial atomic OTC/RFQ settlement layer.

Discovered
bull_list_rfqs

Use when you SELL or hold a token and want to find buyers: lists open requests for quotes on Bull (token, size in USD, window, buyer's price limit). Returns rfqIds to answer with bull_send_quote. Public, no signature needed. Not for finding market prices.

Discovered
bull_quote_status

Use as BUYER or SELLER to check a quote and its onchain deal: status (pending, confirmed, funded, released), dealId, counter, who has funded. Poll this or use webhooks. Only the two parties can read it. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_reject_quote

Use as a BUYER to reject a quote you do not want. Returns status rejected. Not needed for quotes that simply expire. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_revise_quote

Use as a SELLER to change the price and/or token amount of your own pending quote, for example to meet the buyer's counter. Returns the new terms. The buyer then accepts with bull_accept_quote. Works only while the quote is pending. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_send_quote

Use when you want to SELL tokens to a buyer who posted an RFQ: sends a sealed quote (token amount and total ETH price) that only the buyer sees. Returns a quoteId. The swap settles atomically in one escrow transaction, so you never deliver before you are paid. Not for listing prices publicly. Signed: the first call returns a message to sign; call again with the same arguments plus timestamp and signature.

Discovered
bull_stats

Use to check Bull's track record: number of settled deals, total volume, open RFQs and the latest settled deals, read from the escrow contract. Public, no signature needed.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 90 days.
CheckedResultResponseTools
Connected422 ms16