# Drive Bird from Cursor

Email, SMS, WhatsApp, voice and verifications, written into the file you already have open. Cursor loads the skills for every session, so it knows the shape of a call before it writes one.

## The CLI, the skills, then the server

Cursor installs the skills as a plugin and reaches the tools over a remote server you add once. The sign-in sits in the same settings panel, and it is the step people miss.

**terminal**

```bash
$ curl -fsSL https://cli.bird.com/install.sh | sh
$ bird auth login
  Opening your browser to authorize Bird CLI…
  { "workspace_id": "ws_01k…", "region": "eu1",
    "credentials_path": "~/.config/bird/credentials.json" }
```

**Cursor Settings**

Settings → Plugins → Add marketplace

- Marketplace: messagebird/bird-ai
- Plugin: bird
- Setup prompt writes: .agents/skills/<skill>/SKILL.md

The same plugin is on cursor.directory, where Add to Cursor registers the MCP server too. Cursor also loads any skill folder under .agents/skills, which is where the setup prompt puts them.

**~/.cursor/mcp.json**

```json
{
  "mcpServers": {
    "bird": { "url": "https://mcp.bird.com" }
  }
}
```

## What Cursor already knows. Three operations, carried in the skills, so they are in context from the first prompt of a session.

- Send a message. Send it, then read it back, because accepted is not the same as arrived.
- Set up a sender. Create the domain, add the DNS records it hands you, then verify. Not immediately: DNS takes its time.
- Get notified of events. Tell Bird where to send them, then test that they land. Keep the signing secret from the create call, because it is never shown again.

### What to ask for

- Add SMS verification to the signup route, then check a code against it.
- Is this number reachable before I send? Tell me the carrier.
- Send this over WhatsApp, and fall back to SMS when it fails.
- Find my email with whoami, send me a test, and tell me when it lands.
- Point a webhook at my staging URL and send a test delivery to prove it.
- What failed in the last hour? Group it by reason.