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

# Quickstart

> Connect your AI coding agent to Chiplab and run your first firmware simulation.

This guide walks you from a brand-new Chiplab account to a completed firmware simulation.
By the end, your AI coding agent will be connected to Chiplab and you'll have seen real UART output from a virtual chip instance, no physical hardware required.

**1. Sign in to Chiplab**

Go to [chiplab.veecle.ai](https://chiplab.veecle.ai) and sign in with your account.
It's self-serve: no credit card needed, and there's a free tier to get you started.

**2. Connect your agent**

In the [Chiplab dashboard](https://chiplab.veecle.ai), open **API keys** and choose **Connect agent**.
Pick your client (Cursor, OpenCode, Claude Code, and others). The dashboard shows the exact command or config snippet to copy.

Every client registers the same MCP server, `https://chiplab.veecle.ai/mcp`, so a client that isn't listed connects the same way.
On first use your agent opens a browser to sign in.

> [!TIP]
>
> Working from a clone of the [Chiplab repo](https://github.com/veecle/chiplab)? Claude Code picks up [`.mcp.json`](https://github.com/veecle/chiplab/blob/main/.mcp.json) automatically and only asks you to trust it.

Step-by-step guides for each client are on [Connect an agent](/agents/overview).

**3. Build and run an example**

With your agent connected, verify the connection by asking Chiplab what it can do right now. It should come back with the current list of tools.

Then try a real simulation. Clone this repo:

```sh theme={null}
git clone https://github.com/veecle/chiplab && cd chiplab
```

Then just tell your agent:

```text theme={null}
Build and run examples/bare-metal/stm32f4-discovery on Chiplab.
```

Your agent installs what's needed, builds the binary, uploads the ELF, and runs it on a virtual STM32F4 Discovery board.
The run is bounded to 5 seconds of virtual CPU time. Your agent waits for it to finish, then reads the captured UART. You'll see `Hello world!` when the agent asks for `usart2`, the peripheral that example writes to.

This same produce-an-ELF → upload → run → read-output flow works for every board and framework this repo ships examples for; only the ELF path and board change.
See [supported-boards.md](https://github.com/veecle/chiplab/blob/main/supported-boards.md) for the full board list.

**4. Ask questions about Chiplab**

Your agent can also query Chiplab directly; you don't need to prompt this explicitly.
It happens automatically whenever your agent needs context, most commonly the first time it uses Chiplab in a session.

## Connect your agent

> **[Connect Cursor](/agents/cursor)**
>
> Configure Chiplab in Cursor's MCP settings and authenticate.

> **[Connect OpenCode](/agents/opencode)**
>
> Register Chiplab in your OpenCode config and run the auth command.

> **[Connect Claude Code](/agents/claude-code)**
>
> Add Chiplab via the Claude CLI and authenticate with `/mcp`.

> **[Other agents](/agents/overview)**
>
> Claude Desktop, VS Code, Codex, and clients that can add a remote HTTP MCP server.


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