{
  "x402Version": 2,
  "serviceName": "Numetal launch router",
  "tags": [
    "launchpad",
    "clanker",
    "bankr",
    "poolsfun",
    "token",
    "mcp",
    "agent"
  ],
  "resources": [
    {
      "resource": "https://launch.numetal.xyz/mcp",
      "type": "http",
      "x402Version": 2,
      "description": "MCP JSON-RPC. x402 amount 0 — agents pay $0 and call. Bare POST → 402.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json"
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/list_pads",
      "type": "http",
      "x402Version": 2,
      "description": "List every pad in the matrix (wired + unproven) with chains, notes, and howToSign. Same matrix the Mini App uses. Call this first. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/list_networks",
      "type": "http",
      "x402Version": 2,
      "description": "Union of chain IDs the pads actually list. We do not invent networks. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/get_capabilities",
      "type": "http",
      "x402Version": 2,
      "description": "Knobs, forbidden fields, chains, status, and howToSign for one pad. Same as the Mini App. Stock pairing is Pons only. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {
                  "pad": {
                    "type": "string",
                    "description": "Pad id from list_pads (clanker, bankr, poolsfun, …)"
                  }
                },
                "required": [
                  "pad"
                ],
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/draft_intent",
      "type": "http",
      "x402Version": 2,
      "description": "Validate a LaunchIntent against the matrix. Returns warnings for ignored knobs; errors for unproven pads / forbidden stock pairs. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {
                  "intent": {
                    "type": "object",
                    "description": "LaunchIntent: name, symbol, chainId, pad, creator (0x). Optional knobs per get_capabilities. Never salt. Never RH_STOCK except pad=pons."
                  }
                },
                "required": [
                  "intent"
                ],
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/simulate_launch",
      "type": "http",
      "x402Version": 2,
      "description": "Build the pad-sign payload (same object as Mini App Simulate and get_sign_payload). Does not broadcast. No keys. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {
                  "intent": {
                    "type": "object",
                    "description": "LaunchIntent: name, symbol, chainId, pad, creator (0x). Optional knobs per get_capabilities. Never salt. Never RH_STOCK except pad=pons."
                  }
                },
                "required": [
                  "intent"
                ],
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/get_sign_payload",
      "type": "http",
      "x402Version": 2,
      "description": "Same pad-sign payload the Mini App Sign uses. Clanker = SDK deploy() config. Bankr = POST body + liveBody + howToSign (user's bk_usr_ key on their machine; this origin never sees it). pools.fun = PartyFactory.launch tx. Never a REST argument this origin posts with a hot key. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {
                  "intent": {
                    "type": "object",
                    "description": "LaunchIntent: name, symbol, chainId, pad, creator (0x). Optional knobs per get_capabilities. Never salt. Never RH_STOCK except pad=pons."
                  }
                },
                "required": [
                  "intent"
                ],
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    },
    {
      "resource": "https://launch.numetal.xyz/api/v1/check_bankr_split",
      "type": "http",
      "x402Version": 2,
      "description": "Same 57% split check the Mini App runs before a Bankr live POST. Pass feeDistribution from a simulate response. Refuses partner shares. No keys. x402 amount 0.",
      "mimeType": "application/json",
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:8453",
          "amount": "0",
          "maxTimeoutSeconds": 60,
          "payTo": "0x000000000000000000000000000000000000dEaD",
          "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
          "extra": {
            "name": "USDC",
            "version": "2"
          }
        }
      ],
      "extensions": {
        "bazaar": {
          "discoverable": true,
          "category": "crypto",
          "tags": [
            "launchpad",
            "clanker",
            "bankr",
            "poolsfun",
            "token",
            "mcp",
            "agent"
          ],
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json",
              "body": {
                "type": "object",
                "properties": {
                  "feeDistribution": {
                    "type": "object",
                    "description": "Bankr feeDistribution (flat bps or nested { bps }). Expected 5700/3610/190/500."
                  }
                },
                "required": [
                  "feeDistribution"
                ],
                "additionalProperties": false
              }
            },
            "output": {
              "type": "json"
            }
          }
        }
      }
    }
  ]
}