# SKTH developer portal

The public integration surface is read-only. Use it to discover houses, sales and lots. Do not use it to bid or pay.

This is the SKTH platform. Every auction house lives under `/t/{house}`.

## Documents

- OpenAPI: https://play.skth.art/openapi.json
- API catalog: https://play.skth.art/.well-known/api-catalog
- MCP server card: https://play.skth.art/.well-known/mcp/server-card.json
- MCP endpoint: https://play.skth.art/mcp
- Agent guide: https://play.skth.art/agents.md
- Authentication: https://play.skth.art/auth.md
- Resource catalog: https://play.skth.art/.well-known/ard.json

## Search example

Amounts in this API are integer pence.

```http
GET https://play.skth.art/api/search?q=silver&limit=5 HTTP/1.1
Accept: application/json
```

A Gallery result includes the inclusive buyer total when the item has a public price. An auction result includes estimates and the current bid, never a reserve.

## MCP example

The server speaks stateless streamable HTTP. `POST` JSON-RPC to `/mcp`. `GET /mcp` returns the server card. There is no session to resume.

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "skth_search_lots",
    "arguments": {
      "query": "silver",
      "max_estimate": "£500",
      "limit": 5
    }
  }
}
```

`max_estimate` of `"£500"` is 50000 pence. The number `500` would be £5, not £500.

## Errors

Unknown API paths return JSON: `error`, `code` and `message`. An unknown MCP tool returns a tool error whose structured content also has `code` and `message`.

## Not in this portal

House administration, settlement, wallet and bidding routes are outside this public contract. See `auth.md` before asking a person to connect an agent to their account.
