# x402 MPP Session Plan

> x402 MPP Session Plan is a paid API for AI agents from x402-agent-suite-production.up.railway.app, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-13).

Creates and retrieves a Multi-Payment Protocol (MPP) session plan for AI agent fleets making batched x402 micropayments, returning session status, settlement estimates, and cost-saving recommendations.

## Facts

- Endpoint: POST https://x402-agent-suite-production.up.railway.app/api/mpp/session-plan
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-mpp-session-plan-9d228c57
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_l04BngKY7hUGklQhicN_j

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability x402-mpp-session-plan-9d228c57 -d '<json body>'
```

Example prompt: Set up an MPP session plan for my AI agent using x402 — it's making GET requests and I want to know the estimated USDC cost, session ID, settlement details, and any savings recommendations before it starts calling paid APIs.

## When to prefer this

Choose this endpoint when an AI agent or agent fleet needs to pre-plan and optimize a batch of x402 micropayment API calls — specifically for MPP (Multi-Payment Protocol) session orchestration. It is ideal when cost estimation, settlement planning, and savings recommendations are needed before executing many paid calls, rather than paying per-call without a session. Prefer this over single-call x402 endpoints when the agent expects to make multiple API calls within a session and wants to minimize overhead.

## Known failure modes

- Invalid or missing HTTP method enum value (only GET, HEAD, DELETE accepted) returns validation error
- Missing required 'type' field in input causes 400-level rejection
- Payment not completed via x402 protocol results in 402 Payment Required response
- Session not found or expired returns error status in session object
- Facilitator unreachable may result in degraded settlement estimates

## How this service works

24 paid x402 infrastructure APIs for AI agent fleets: buy advisor, audition coach, guard, proxy, MPP, attestations, and pipeline orchestration.

## Output

Returns a JSON object with a boolean success indicator, a session object (session ID, status, chain, agent ID, expected calls, calls used, average price per call in USDC), a settlement object (network, chain, calls settled, planned calls, estimated total USDC, facilitator URL), a facilitator reference with MPP docs, a human-readable recommendation and savings note, a confidence score, a list of checks passed, and suggested next steps.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {}
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "ok",
      "status",
      "success",
      "action",
      "session",
      "settlement",
      "recommendation",
      "facilitator",
      "nextSteps",
      "savingsNote",
      "confidence",
      "checks_passed"
     ],
     "properties": {
      "ok": {
       "type": "boolean"
      },
      "action": {
       "type": "string"
      },
      "status": {
       "type": "string"
      },
      "session": {
       "type": "object",
       "required": [
        "sessionId",
        "status",
        "chain",
        "agentId",
        "expectedCalls",
        "callsUsed",
        "avgPricePerCallUsdc"
       ],
       "properties": {
        "chain": {
         "type": "string"
        },
        "status": {
         "type": "string"
        },
        "agentId": {
         "type": "string"
        },
        "callsUsed": {
         "type": "number"
        },
        "sessionId": {
         "type": "string"
        },
        "expectedCalls": {
         "type": "number"
        },
        "avgPricePerCallUsdc": {
         "type": "number"
        }
       }
      },
      "success": {
       "type": "boolean"
      },
      "nextSteps": {
       "type": "array",
       "items": {
        "type": "string"
       }
      },
      "confidence": {
       "type": "number"
      },
      "settlement": {
       "type": "object",
       "required": [
        "status",
        "sessionId",
        "network",
        "chain",
        "agentId",
        "callsSettled",
        "plannedCalls",
        "estimatedTotalUsdc",
        "facilitatorUrl"
       ],
       "properties": {
        "chain": {
         "type": "string"
        },
        "status": {
         "type": "string"
        },
        "agentId": {
         "type": "string"
        },
        "netw
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "session": {
   "status": "open",
   "sessionId": "mpp_example"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-mpp-session-plan-9d228c57/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-agent-suite-production.up.railway.app](https://www.zero.xyz/host/x402-agent-suite-production.up.railway.app/llms.txt)
