> ## Documentation Index
> Fetch the complete documentation index at: https://docs.koppar.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Drive Koppar from your own agent

> Design PCBs from Claude Code, any MCP client, the CLI or REST: your agent's model writes the schematic, Koppar does place and route, DRC, BOM and Gerbers.

Everything the studio does can be driven from your own agent. Claude Code, any MCP client, a script, or a person at a terminal.

## Connect

Make a key at [app.koppar.ai](https://app.koppar.ai) under **Settings → Design from your own AI agent**, then add the server.

**MCP endpoint:** `https://app.koppar.ai/mcp` (Streamable HTTP, `Authorization: Bearer sc_…`)

<CodeGroup>
  ```bash Claude Code theme={null}
  claude mcp add --transport http koppar https://app.koppar.ai/mcp \
    --header "Authorization: Bearer sc_…"
  ```

  ```json Other MCP clients theme={null}
  {
    "mcpServers": {
      "koppar": {
        "type": "http",
        "url": "https://app.koppar.ai/mcp",
        "headers": { "Authorization": "Bearer sc_…" }
      }
    }
  }
  ```
</CodeGroup>

Then ask your agent for a board, for example: *"Use Koppar to design a USB-C powered ESP32-C3 board with a BME280 sensor."* Listing the tools works without a key; calling them needs it.

On this path the split is explicit:

| Your agent's model | Koppar |
| - | - |
| Researches the parts | KiCad symbol and footprint lookups, the component database |
| Writes the SKiDL circuit | Compiles it, runs ERC, KiCad ERC, the floating-subsystem, footprint and sourcing checks |
| Reviews the circuit | Serves the review packet: brief, dossier, code, connectivity |
| Plans the board | Places, routes, pours, runs KiCad DRC with the plan |
| | Prices the BOM, builds the fab files, hands off to a provider |

Nothing on this path calls a language model on Koppar's side, and it uses none of your account's free generations. Designs made this way appear in the web app like any other, so you can continue them in the studio chat.

## Three transports, one tool set

<CardGroup cols={3}>
  <Card title="MCP" icon="plug" href="/agents/mcp">
    Streamable HTTP at `app.koppar.ai/mcp`. One line to add to Claude Code.
  </Card>

  <Card title="CLI" icon="terminal" href="/agents/cli">
    `koppar` for terminals and for agents that run shell commands. JSON on stdout.
  </Card>

  <Card title="REST" icon="code" href="/agents/rest">
    The same tools as HTTP endpoints with JSON Schemas.
  </Card>
</CardGroup>

## The workflow

The server carries its own instructions. An MCP client reads them on connect, and `get_workflow_guide` serves the prompt for each stage, the same text the studio's own models get. The stages are:

<Steps>
  <Step title="create_design">
    A brief and a title. Returns a design id and a run folder visible in the web app.
  </Step>

  <Step title="Research">
    `search_kicad_symbol`, `get_kicad_symbol`, `search_kicad_footprint` to find real parts. `save_dossier` stores the parts list, rails and topology constraints, and reports any part that does not exist.
  </Step>

  <Step title="submit_circuit">
    The complete SKiDL script. Returns accepted, or the blocking findings to fix. `edit_circuit` applies search-and-replace edits on retries.
  </Step>

  <Step title="get_review_packet">
    Brief, dossier, code and connectivity for your model to review.
  </Step>

  <Step title="get_board_context, then start_board">
    The board context gives the parts, their sizes and the stated facts. `start_board` takes your plan: outline, layers, edge parts, groups, keepouts, net classes. The plan is clamped and returned as applied.
  </Step>

  <Step title="get_board_status, get_bom, get_downloads">
    Follow the run, read the priced BOM, and fetch the files. `get_order_price` totals parts, setup fees and a live PCBWay board quote; `send_order_to_provider` hands the clean board to a manufacturer (see [Manufacturing](/manufacturing)).
  </Step>
</Steps>

## A board you already have

A KiCad project of your own skips the description and the schematic: `import_kicad_project` over MCP, or `koppar import <folder>` on the CLI, opens it as a board workspace, and the board tools place, route, check and export it directly. See [Your own board](/agents/mcp#your-own-board).

## Keys

A key is minted in the studio under **Settings → Design from your own AI agent**. It is shown once and sent as `Authorization: Bearer sc_…` on every transport. A key acts as the account that created it.

<Note>
  Any account can mint a key: sign in at [app.koppar.ai](https://app.koppar.ai) and open Settings.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.