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

# Cursor IDE

> Connect the Cursor desktop app to Control Plane to manage your infrastructure directly from your editor.

## Prerequisites

<CardGroup cols={2}>
  <Card title="Cursor IDE" icon="https://mintcdn.com/controlplanecorporation/rFQpIcXts1y-5L7u/icons/cursor.svg?fit=max&auto=format&n=rFQpIcXts1y-5L7u&q=85&s=074f2c93b5c6063ae950a872e7821eb3" width="24" height="24" data-path="icons/cursor.svg">
    Download [Cursor](https://cursor.com)
  </Card>

  <Card title="Control Plane account" icon="user">
    Sign up at [console.cpln.io](https://console.cpln.io) if you don't have an account yet
  </Card>
</CardGroup>

## Add the MCP server

<Steps>
  <Step title="Open MCP settings">
    In Cursor, go to **Settings → Tools & MCPs**, then click **New MCP Server** under **Home MCP Servers**. Cursor opens your global `mcp.json`:

    | OS            | Path                             |
    | ------------- | -------------------------------- |
    | macOS / Linux | `~/.cursor/mcp.json`             |
    | Windows       | `%USERPROFILE%\.cursor\mcp.json` |
  </Step>

  <Step title="Add the Control Plane server">
    ```json theme={null}
    {
      "mcpServers": {
        "cpln": {
          "type": "http",
          "url": "https://mcp.cpln.io/mcp"
        }
      }
    }
    ```

    <Note>
      Connecting to the bare URL uses the default **`core`** toolset profile — a focused set that already covers the whole build-and-operate workflow (it can read and delete any resource kind generically, and reach anything else through the raw-API tool), which is the right fit for this client. Append `?toolsets=mk8s` to add BYOK Kubernetes tools, or `?toolsets=full` for everything. See [toolset profiles](/ai/mcp#toolset-profiles).
    </Note>

    Save and close the file.
  </Step>

  <Step title="Connect">
    Back in Cursor's MCP settings, the `cpln` server now shows a **Connect** button. Click it.

    1. Sign in to Control Plane (Google, GitHub, Microsoft, or SAML).
    2. Select the orgs you want Cursor to access.
    3. Click **Authorize**.

    Your browser shows a success page — close the tab and return to Cursor.
  </Step>

  <Step title="Use it">
    Open Cursor's AI chat and ask "list GVCs in org `<your-org>`" (using one of the orgs you authorized) to confirm.
  </Step>
</Steps>

<Note>
  For the latest UI changes, see Cursor's [MCP documentation](https://cursor.com/docs/context/mcp).
</Note>

## Example conversation

<Steps>
  <Step title="Set Context">
    ```
    Use org "my-org" and gvc "my-gvc" for context.
    ```
  </Step>

  <Step title="Deploy a Workload">
    ```
    Create a publicly accessible workload called "my-api" using nginx:latest on port 80.
    ```
  </Step>

  <Step title="Get the Endpoint">
    ```
    Monitor the readiness of my-api and give me the public endpoint once it's ready.
    ```
  </Step>
</Steps>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Need to change which orgs are authorized">
    In Cursor's MCP settings, expand the `cpln` server, click **Logout**, then **Connect** again. Sign in again and adjust your org selections on the consent screen.
  </Accordion>

  <Accordion title="MCP server not appearing">
    Verify the JSON syntax in `mcp.json` and reload Cursor.
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Usage Examples" icon="lightbulb" href="/ai/examples">
    Practical prompts for common Control Plane workflows
  </Card>

  <Card title="Template Catalog" icon="grid" href="/template-catalog/overview">
    30+ production-ready templates your AI can deploy on request
  </Card>
</CardGroup>
