> For the complete documentation index, see [llms.txt](https://docs.flora.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flora.ai/mcp/install/vscode.md).

# Install FLORA MCP in VS Code

Add FLORA MCP to VS Code for GitHub Copilot agent mode with code --add-mcp or a .mcp.json file, then sign in with your FLORA account.

VS Code connects to [FLORA MCP](https://flora.ai/mcp) as an HTTP server, and GitHub Copilot's agent mode can then call FLORA's tools. Add it with one command, an install link, or a few lines of JSON.

|             |                                                                                                                                                                                                                                                                                                                                          |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Fastest** | `code --add-mcp '{"name":"flora","type":"http","url":"https://agents.flora.ai/mcp"}'`                                                                                                                                                                                                                                                    |
| **Or**      | The [install link](#install-link), or `.mcp.json` at the root of your repo                                                                                                                                                                                                                                                               |
| **Needs**   | VS Code with GitHub Copilot. On Copilot Business or Enterprise, your admin must enable the **MCP servers in Copilot** policy. Plus a FLORA plan: Starter or above for ongoing use, or Free on the $2.50 of usage every new workspace gets ([pricing](/plans-and-billing/pricing.md), [details](/mcp/authentication.md#who-can-connect)). |
| **Sign in** | VS Code asks you to trust and sign in when `flora` first starts                                                                                                                                                                                                                                                                          |
| **Verify**  | "List my FLORA workspaces. Don't generate anything."                                                                                                                                                                                                                                                                                     |
| **Remove**  | **MCP: List Servers**, select `flora`, then uninstall                                                                                                                                                                                                                                                                                    |

## Install with one command

```bash
code --add-mcp '{"name":"flora","type":"http","url":"https://agents.flora.ai/mcp"}'
```

This adds `flora` to your user-level MCP configuration, so it's available in every workspace. In Windows PowerShell, escape the inner quotes:

```powershell
code --add-mcp '{\"name\":\"flora\",\"type\":\"http\",\"url\":\"https://agents.flora.ai/mcp\"}'
```

## Install link

<a href="vscode:mcp/install?%7B%22name%22%3A%22flora%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fagents.flora.ai%2Fmcp%22%7D" class="button primary">Install in VS Code</a>

If the button doesn't open VS Code, paste this into your browser's address bar:

```
vscode:mcp/install?%7B%22name%22%3A%22flora%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fagents.flora.ai%2Fmcp%22%7D
```

You can also run **MCP: Add Server** from the Command Palette, choose **HTTP**, enter `https://agents.flora.ai/mcp`, and name it `flora`.

## Or add it to a workspace

To share FLORA with everyone who opens a repo, create `.mcp.json` at its root and commit it. This portable format also works in Claude Code and other tools that read `.mcp.json`:

```json
{
  "mcpServers": {
    "flora": {
      "type": "http",
      "url": "https://agents.flora.ai/mcp"
    }
  }
}
```

For yourself across every workspace, put the same JSON in `~/.copilot/mcp-config.json` (or `$COPILOT_HOME/mcp-config.json`).

VS Code still reads its older locations, `.vscode/mcp.json` and the user-profile file that **MCP: Open User Configuration** opens, but now lists them as deprecated. Those files use a `servers` object instead of `mcpServers`:

```json
{
  "servers": {
    "flora": {
      "type": "http",
      "url": "https://agents.flora.ai/mcp"
    }
  }
}
```

## Sign in

1. The first time `flora` starts, VS Code asks whether you trust it. Review it and allow it.
2. VS Code asks to sign in to FLORA. Allow it, and your browser opens FLORA's sign-in page.
3. Sign in with the account you use at [app.flora.ai](https://app.flora.ai), then return to VS Code.

VS Code registers itself with FLORA automatically (dynamic client registration), stores the token and refreshes it. See [Authentication](/mcp/authentication.md).

## Check it works

Open Copilot Chat, switch to **Agent** mode, and open the tools picker: `flora` should be listed with its tools. Then ask:

> List my FLORA workspaces. Don't generate anything.

Copilot asks permission to call `flora_list_workspaces`, then lists your workspaces.

## Use an API key instead (headless)

To use a FLORA API key, have VS Code prompt for it once and keep it out of the file. This example uses the `.vscode/mcp.json` format, which supports `inputs`. See [API keys](/mcp/authentication.md#api-keys-for-headless-setups).

```json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "flora-api-key",
      "description": "FLORA API key",
      "password": true
    }
  ],
  "servers": {
    "flora": {
      "type": "http",
      "url": "https://agents.flora.ai/mcp",
      "headers": {
        "Authorization": "Bearer ${input:flora-api-key}"
      }
    }
  }
}
```

## Gotchas

| Symptom                                               | Cause                                                                                                                                                                 | Fix                                                                                                              |
| ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| FLORA tools don't show in chat                        | Copilot Chat is in **Ask** mode                                                                                                                                       | Switch to **Agent** mode.                                                                                        |
| MCP is unavailable in Copilot Chat                    | On Copilot Business or Enterprise, the **MCP servers in Copilot** policy is off (the default)                                                                         | Ask your GitHub organization or enterprise admin to enable it.                                                   |
| `flora` shows as stopped or errored                   | The server didn't start, or the URL has a trailing slash (`/mcp/` returns 404)                                                                                        | Run **MCP: List Servers**, select `flora`, and start it. Check the URL is exactly `https://agents.flora.ai/mcp`. |
| The config is ignored                                 | The keys don't match the file: `.mcp.json` and `~/.copilot/mcp-config.json` use `mcpServers`, while `.vscode/mcp.json` uses `servers`. Or `"type": "http"` is missing | Use the JSON above for the file you chose.                                                                       |
| Copilot calls a retired tool such as `flora_generate` | Old instructions or a cached tool list                                                                                                                                | Those tools are retired. Restart the server. See [Retired tools](/mcp/retired-tools.md).                         |

## Remove

Run **MCP: List Servers** from the Command Palette, select `flora`, and choose to uninstall it. You can also right-click it under **MCP SERVERS - INSTALLED** in the Extensions view. For a workspace install, delete the `flora` entry from `.mcp.json` (or `.vscode/mcp.json`). To clear FLORA's sign-in, run **Authentication: Remove Dynamic Authentication Providers**. If you used an API key, revoke it in FLORA; see [Disconnect and revoke](/mcp/authentication.md#disconnect-and-revoke).

## Next

* [Quickstart](/mcp/quickstart.md): your first image, with a cost quote first.
* [Batch-generate 20 to 500 assets](/mcp/recipes/batch.md).
* [Tools reference](/mcp/tools.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.flora.ai/mcp/install/vscode.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
