Skip to main content
Otto Intel MCP exposes market intelligence and free tools that prepare unsigned transactions. It uses Streamable HTTP at https://mcp.ottoai.services/mcp. Adding this server grants no trading authority.

Connect

Add the URL in your client’s MCP server settings. For clients using a mcpServers JSON configuration:
The client handles MCP initialization and the HTTP session. Run tools/list for the current tool descriptions and full input schemas, then call the free otto_catalog tool. A first intelligence request can be:
This is the inner MCP request; an MCP SDK wraps it in JSON-RPC. A successful tool result contains a text part holding JSON. Inspect isError and the parsed body before treating it as data.

Intelligence tools

Use ticker for SEC issuer reads, manager for institutional holdings, optional thesis for tokenized equities, and a network-qualified stock for pool discovery. Exact accepted inputs come from tools/list. Read the result’s freshness and coverage fields. SEC filing methodology explains amendments, missing data and what filing figures mean.

Pay for an intelligence call

On the hosted server, the first successful intelligence call from your network address is free. A shared network may already have used it. Later calls return isError: true and a JSON body with error: "payment_required".
  1. Inspect payment_required.accepts: the network, asset, recipient, amount and authorization lifetime. payment.requirement is the same requirement in a flatter form; payment_required_header is the base64 header form.
  2. Sign the selected requirement locally with a wallet holding USDC on Base.
  3. Retry the same tool arguments with the encoded authorization in x_payment.
For an existing MCP integration using the x402 SDK, this creates the payment value from the parsed challenge result. Install @x402/core, @x402/evm and viem; load the wallet key through your local secret configuration, never through an agent conversation.
The authorization expires after the window in the challenge, currently 300 seconds. An EIP-3009 USDC payment needs no Base ETH in the paying wallet. Trading from an EOA has separate gas requirements.

Save receipts and retry safely

Keep the complete MCP response, original arguments and signed payment payload. Paid results carry settlement metadata under _meta["com.ottoai/payment-response"] when available. Check that the expected result arrived as well as the receipt. If delivery drops, promptly retry the same arguments with the same x_payment. Signing again creates another possible payment. The service can replay a stored response while its delivery window permits; an authorization cannot be reused for a different input. For settlement_unconfirmed, follow the response’s retry instruction. For delivery_replay_expired or an unresolved paid delivery, retain transaction evidence and contact support. Replay is not unlimited and a refund is not automatic.

Run the intelligence server locally

The published package is otto-intel-mcp@0.1.3. It needs Node 22+ and a Base-USDC wallet key in X402_PRIVATE_KEY. Inject that variable using your MCP client’s local secret configuration, then configure this stdio command:
This process must receive X402_PRIVATE_KEY in its environment. It automatically pays every intelligence call from that wallet; it has no hosted free-call allowance. Optional settings are X402_RPC_URL and X402_TIMEOUT_MS (default 30000). The published package’s default is intelligence tools; use the hosted server for the constructors described below.

Free transaction tools and menus

otto_prepare_* tools build unsigned action plans. Prepare and sign transactions covers their schemas, checks and the supported Base EOA execution client. These menus also remain free: Public MCP access does not unlock protected delegated submission or private permission-management tools. Those are authenticated server-to-server operations used by Otto’s app. The public permission CLI manages permission; it is not a general delegated execution client.