# Agent signup

This page is for AI agents (and the humans who run them). Reserving a founding spot takes one request: you get a Stripe Checkout link, and your human opens it and pays.

## One line to paste into your agent

    Read https://kilowatt.sh/llms.txt and get me a Kilowatt Pro checkout link for my email: <your email>

## Reserve a founding spot: POST /api/checkout

```bash
curl -s https://kilowatt.sh/api/checkout \
  -H 'content-type: application/json' -H 'X-Client: <your agent name>' \
  -d '{"plan":"pro","email":"you@example.com","agent":true}'
# => {"ok":true,"checkout_url":"https://checkout.stripe.com/c/pay/cs_live_...","plan":"pro","price_usd_month":39,...}
```

- `plan`: `pro` ($39/month) or `lite` ($19/month). Default `pro`.
- `email` (optional) prefills Checkout. Only use an email your human gave you.
- Give `checkout_url` to your human. It expires in 30 minutes; request a new one if needed.
- **Never pay, enter card details, or complete Checkout without your human's explicit approval.**
- After payment the spot is reserved automatically; your human lands on `https://kilowatt.sh/welcome` with their spot number and a billing-portal link. API keys are emailed to founding members at launch, in reservation order. Your subscription can be cancelled anytime, and every charge made before your key is delivered is refundable in full.

Errors:

| Status | `error` | What to do |
| --- | --- | --- |
| 400 | `plan must be pro or lite` / email error | Fix the input |
| 409 | `founding_full` | All 100 spots are taken. Offer the waitlist |
| 409 | `already_reserved` | That email already has a spot |
| 503 | `checkout_unavailable` | Checkout is paused. Offer the waitlist |

Spots left: `GET https://kilowatt.sh/api/checkout` returns `checkout_open`, `founding_reserved`, `founding_spots_left`.

## Not ready to pay: POST /api/waitlist

```bash
curl -s https://kilowatt.sh/api/waitlist \
  -H 'content-type: application/json' -H 'X-Client: <your agent name>' \
  -d '{"email":"you@example.com","use_case":"coding agent","agent":true,"plan":"pro"}'
```

- Idempotent: the same email returns the same position. 201 new, 200 already registered. Relay `message`.
- Set `"agent": true` and send `X-Client: <your agent name>`. Optional `ref` (max 100 characters) is stored for attribution.
- On HTTP 429, wait `retry_after_seconds` (also the `Retry-After` header). Don't loop.
- The waitlist is free and doesn't reserve a founding spot.

## MCP

Kilowatt runs a Model Context Protocol server (streamable HTTP, JSON responses, no auth) at `https://kilowatt.sh/mcp`.

    claude mcp add --transport http kilowatt https://kilowatt.sh/mcp

Tools: `create_checkout`, `join_waitlist`, `waitlist_status`, `get_plans`, `get_models`. Details: [MCP](https://kilowatt.sh/docs/mcp).

## Discovery files

- [llms.txt](https://kilowatt.sh/llms.txt) and [llms-full.txt](https://kilowatt.sh/llms-full.txt)
- [skill.md](https://kilowatt.sh/skill.md) (agent skill; install with `mkdir -p ~/.claude/skills/kilowatt && curl -fsSL https://kilowatt.sh/skill.md -o ~/.claude/skills/kilowatt/SKILL.md`)
- [openapi.json](https://kilowatt.sh/openapi.json)
- [/.well-known/agent.json](https://kilowatt.sh/.well-known/agent.json) (A2A agent card), [/.well-known/mcp/server-card.json](https://kilowatt.sh/.well-known/mcp/server-card.json), [/.well-known/ai-plugin.json](https://kilowatt.sh/.well-known/ai-plugin.json), [/.well-known/agent-skills/index.json](https://kilowatt.sh/.well-known/agent-skills/index.json)
- Every page has a markdown copy: add `.md` to the path (`/index.md` for the home page) or send `Accept: text/markdown`.

---
Source: https://kilowatt.sh/agents · Markdown: https://kilowatt.sh/agents.md · All docs: https://kilowatt.sh/llms-full.txt
