_ registry / mcp http-sse · checked 8h ago

submo

https://api.submoapp.com

Registry code: 97cf656cbcbd38f6

api record

Submo finds, tracks, and explains how to cancel subscriptions. Public tools work without a key. Paid tools need Authorization: Bearer submo_live_… from checkout or OAuth PKCE. Never cancel a subscription at the provider yourself: return the steps, or send the user to https://submoapp.com/cancel-subscription for the paid done-for-you notice.

endpoint
https://api.submoapp.com/mcp
protocol
http-sse ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is submo live?
Yes — it answered the hub's last check (checked 8h ago). It answered 50% of checks over the last 30 days.
Is submo free to use?
Partly — some of its tools are open, others need a key or payment.
What tools does submo have?
24 tools: get_price_index, create_checkout, get_cancel_guide, upsert_subscription, upload_statement, start_email_scan, get_cancel_steps, start_email_connect, ….
Is submo safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
50%

90 days 50%· all time 50%

latency
115ms

last good check

priced tools
0

of 24 tools

_ answered our checks, 90 days 2 checks · signed record
  • degraded → live
  • unknown → degraded· timeout after 20000ms
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 24 tools
4 open5 auth-required 15 never probed 9 of 24 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • list_price_indexes open 25d ago

    List sourced US price-index studies.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • get_submo_skill open 8h ago

    Check the Submo skill version and return the current workflow contract.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "installed_version": {
          "type": "string",
          "description": "Version from the installed SKILL.md"
        }
      },
      "additionalProperties": false
    }
    arguments 11 lines
  • search_catalog open 25d ago

    Browse popular services a user can add manually.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "query": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 10 lines
  • list_plans open 25d ago

    List Submo membership plans and intro/standard prices.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • review_scan auth-required 25d ago

    Read the latest scan, or one scan by id.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "scan_id": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 10 lines
  • get_account auth-required 8h ago

    The authenticated account, membership, and connection status.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • list_connections auth-required 25d ago

    Email and bank connection status. Never returns provider tokens.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • list_subscriptions auth-required 25d ago

    List the user's tracked subscriptions.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "status": {
          "enum": [
            "active",
            "pending_cancellation",
            "cancelled"
          ],
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 15 lines
  • get_upcoming_charges auth-required 8h ago

    Upcoming renewals in the next N days.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "days": {
          "type": "integer",
          "maximum": 366,
          "minimum": 1
        }
      },
      "additionalProperties": false
    }
    arguments 12 lines
  • get_price_index unknown 25d ago

    Current prices and CSV/page URLs for one price index.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 12 lines
  • create_checkout unknown never probed

    Start hosted Stripe checkout for a new Submo member. Returns a URL the user must open, plus a poll token.

    mcp-tool

    {
      "type": "object",
      "required": [
        "email",
        "plan_id"
      ],
      "properties": {
        "email": {
          "type": "string",
          "description": "Buyer email"
        },
        "plan_id": {
          "enum": [
            "weekly"
          ],
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 20 lines
  • get_cancel_guide unknown never probed

    Get the full cancellation steps for one service slug.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 12 lines
  • upsert_subscription unknown never probed

    Create or update a tracked subscription by name.

    mcp-tool

    {
      "type": "object",
      "required": [
        "service_name",
        "price",
        "currency",
        "billing_cycle"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "price": {
          "type": [
            "number",
            "null"
          ]
        },
        "source": {
          "enum": [
            "email",
            "statement",
            "bank",
            "manual",
            "browse-list"
          ],
          "type": "string"
        },
        "currency": {
          "type": [
            "string",
            "null"
          ]
        },
        "website_url": {
          "type": "string"
        },
        "service_name": {
          "type": "string"
        },
        "billing_cycle": {
          "enum": [
            "weekly",
            "monthly",
            "yearly"
          ],
          "type": "string"
        },
        "next_payment_date": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 54 lines
  • upload_statement unknown never probed

    Parse a bank/card statement PDF (base64). The file is never stored.

    mcp-tool

    {
      "type": "object",
      "required": [
        "pdf_base64"
      ],
      "properties": {
        "filename": {
          "type": "string"
        },
        "pdf_base64": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 15 lines
  • start_email_scan unknown never probed

    Scan the already-connected Gmail inbox for receipts.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • get_cancel_steps unknown never probed

    Cancellation steps for a saved subscription, or a public guide by slug.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "slug": {
          "type": "string"
        },
        "service_name": {
          "type": "string"
        },
        "subscription_id": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 16 lines
  • start_email_connect unknown never probed

    Return a URL for the user to connect Gmail. Poll list_connections afterwards.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • search_cancel_guides unknown never probed

    Search public how-to-cancel guides. This tool returns steps; it does not cancel at the provider.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {
        "query": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 10 lines
  • mark_cancelled unknown never probed

    Record that the user cancelled with the provider themselves (instructions_only).

    mcp-tool

    {
      "type": "object",
      "required": [
        "subscription_id"
      ],
      "properties": {
        "subscription_id": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 12 lines
  • ask_advisor unknown 25d ago

    Ask the entitlement-gated subscription advisor a question.

    mcp-tool

    {
      "type": "object",
      "required": [
        "question"
      ],
      "properties": {
        "question": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 12 lines
  • get_checkout_status unknown 25d ago

    Poll an agent checkout session. When paid, the API key is returned once.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id",
        "poll_token"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "poll_token": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 16 lines
  • export_subscriptions unknown never probed

    Export the user's subscriptions as CSV text.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • start_bank_connect unknown never probed

    Return a bank-connect URL when Plaid is live; otherwise tell the agent to upload a statement.

    mcp-tool

    {
      "type": "object",
      "required": [],
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • import_found_subscriptions unknown never probed

    Import selected findings from a completed scan into the subscription list.

    mcp-tool

    {
      "type": "object",
      "required": [
        "scan_id",
        "items"
      ],
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        "scan_id": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
    arguments 19 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 97cf656cbcbd38f6.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/97cf656cbcbd38f6/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/97cf656cbcbd38f6/badge.svg)](https://brick.blue/agent/97cf656cbcbd38f6?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.

_ also on submoapp.com 1 entry

Served from the same domain, which is what was measured. Not a claim that one owner runs them: ownership is what a passport proves, and each of these says for itself.