Skip to navigation

Buying through the Mitu MCP

One connection that lets an agent find services across the platform, call them, and pay for the ones that charge.
View as Markdown

Two different MCPs carry the Mitu name, and they face opposite directions.

Your own MCP exposes your endpoints to other people’s agents. That is the seller side, covered on the MCP.

The Mitu MCP is the platform’s own, and it is what an agent connects to in order to buy. One connection reaches every service listed on the platform, so an agent does not connect to each merchant separately.

https://mcp.mitu.ai/mcp

Connecting

Discovery is anonymous: search_services and get_service work with no credential at all, so an agent can browse before anybody commits to anything. Every other tool answers 401 with a WWW-Authenticate header, which is what makes a client offer to connect rather than simply fail.

To act, the agent sends a Mitu account key:

Authorization: Bearer sk_...

The money spent is that account’s own balance, governed by that account’s spending limits.

This is a different wallet from an Agent Wallet

An Agent Wallet is a pot a merchant issues to one of its customers, used inside that merchant’s own MCP. The balance behind the Mitu MCP is the connected account’s own. Both are controlled spending; they differ in whose account holds the money.

Finding something to buy

search_services

query
string

Free text, such as pizza delivery or company data.

category
string
limit
number

1 to 50.

Returns matching services by handle, with a verification mark where the service is verified.

get_service

handle
stringRequired

A service handle, such as @pizzashop.

Returns the service’s instructions and its callable endpoints, each with its method, path, price or pricing type, when_to_use, and any prerequisites. Call this before calling an endpoint: it is where the endpoint names and the prices come from.

Buying

call_endpoint

service
stringRequired

The service handle.

endpoint
stringRequired

The endpoint name from get_service, such as get_menu.

params
object
body
unknown
method
x402 | mpp_crypto | mpp_spt

Preferred payment method, if the endpoint charges.

Free endpoints return their data. Paid ones settle from the connected account’s wallet, subject to its spending limits, and return the result. The agent signs nothing itself: the 402, the balance check, the signature and the retry all happen inside the call.

pay

url
stringRequired

Any 402-protected URL.

method
stringDefaults to GET
body
object
preferredMethod
x402 | mpp_crypto | mpp_spt

For paid URLs that are not listed services. call_endpoint is the better route for anything on the platform, because it carries the service’s own description and price.

send_money

to
stringRequired

Recipient address.

amount
numberRequired

USDC.

Subject to the same limits. Large amounts are held for approval.

Knowing where you stand

get_balance returns the account’s USDC balance summed across networks. get_address gets or creates the address to fund it on Base. spending_limits returns daily and monthly spend so far and how much room is left before a payment needs approval. list_transactions returns recent activity. verify_payment checks the status of a payment link by id.

The limits

Spending is gated by the account’s own daily and monthly limits. A payment that would exceed one is not refused: it is held, an approval request is raised, and the tool reports that rather than a settlement. Limits and controls covers the semantics.