# Coding tools

Editors, terminals and coding agents that can call our MCP server. Add it once, then ask for a screenshot in plain words.

Every setup below sends the same two things: the address of our server, and your key in the `Authorization` header.

**MCP server**

```text
Address    https://api.localscreenshot.com/mcp
Transport  HTTP
Header     Authorization: Bearer $LOCALSCREENSHOT_API_KEY
```

Where the tool can read an environment variable, the setup reads your key from `LOCALSCREENSHOT_API_KEY`, so the key is not written into a file you might share. Set it first:

```bash
export LOCALSCREENSHOT_API_KEY="your key"
```

Where the tool cannot, write your key in place of `$LOCALSCREENSHOT_API_KEY`, and keep that file out of git. The [dashboard](https://localscreenshot.com/dashboard) shows the same setups with your own key already in place, ready to copy.

Under each tool, one line says how far we checked it: **Tested** means we took a screenshot through that tool, **Connected** means the tool added our server and listed its tools, and the rest come from the tool's own documentation.

### Claude Code

One command in your terminal.

```bash
claude mcp add --transport http localscreenshot https://api.localscreenshot.com/mcp \
  --header "Authorization: Bearer $LOCALSCREENSHOT_API_KEY"
```

Tested: we took a screenshot through it. Source: [code.claude.com](https://code.claude.com/docs/en/mcp).

### Cursor

Paste into .cursor/mcp.json. Cursor reads the key from your environment.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer ${env:LOCALSCREENSHOT_API_KEY}" }
    }
  }
}
```

> A .cursor/mcp.json inside a project can end up in git. Prefer ~/.cursor/mcp.json for a file that holds your key.

From its documentation, not tried by us yet. Source: [cursor.com](https://cursor.com/docs/context/mcp).

### Codex

One command in your terminal. Codex reads the key from your environment.

```bash
# Codex sends it as "Authorization: Bearer $LOCALSCREENSHOT_API_KEY"
codex mcp add localscreenshot --url https://api.localscreenshot.com/mcp \
  --bearer-token-env-var LOCALSCREENSHOT_API_KEY
```

Tested: we took a screenshot through it. Source: [learn.chatgpt.com](https://learn.chatgpt.com/docs/extend/mcp?surface=cli).

### Gemini CLI

One command in your terminal.

```bash
gemini mcp add --scope user --transport http \
  --header "Authorization: Bearer $LOCALSCREENSHOT_API_KEY" \
  localscreenshot https://api.localscreenshot.com/mcp
```

Connected: we added our server to it and it listed our tools. Source: [geminicli.com](https://geminicli.com/docs/tools/mcp-server/).

### VS Code

Paste into .vscode/mcp.json. VS Code asks for your key once and keeps it. Works for GitHub Copilot in VS Code.

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

> This file holds your key. Do not commit it: prefer the user configuration, or the variant with a prompt shown on our site.

From its documentation, not tried by us yet. Source: [code.visualstudio.com](https://code.visualstudio.com/docs/agents/reference/mcp-configuration).

### Windsurf

Paste into ~/.config/devin/mcp_config.json (Windsurf is now Devin Desktop). It reads the key from your environment.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "serverUrl": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer ${env:LOCALSCREENSHOT_API_KEY}" }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [docs.devin.ai](https://docs.devin.ai/desktop/cascade/mcp).

### Cline

Paste into cline_mcp_settings.json, with your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "type": "streamableHttp",
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [docs.cline.bot](https://docs.cline.bot/mcp/connecting-to-a-remote-server).

### Zed

Paste into your Zed settings, with your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "context_servers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [zed.dev](https://zed.dev/docs/ai/mcp).

### Copilot CLI

Paste into ~/.copilot/mcp-config.json, with your key in place of the variable. Or run /mcp add. This tool does not read environment variables in its settings.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "type": "http",
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" },
      "tools": ["*"]
    }
  }
}
```

From its documentation, not tried by us yet. Source: [docs.github.com](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers).

### Hermes Agent

Add this to ~/.hermes/config.yaml, with your key in place of the variable. Then run hermes mcp test localscreenshot. This tool does not read environment variables in its settings.

```yaml
mcp_servers:
  localscreenshot:
    url: "https://api.localscreenshot.com/mcp"
    headers:
      Authorization: "Bearer $LOCALSCREENSHOT_API_KEY"
```

> This file then holds your key: keep it out of any shared or versioned folder.

Connected: we added our server to it and it listed our tools. Source: [hermes-agent.nousresearch.com](https://hermes-agent.nousresearch.com/docs/user-guide/features/mcp).

### Copilot in JetBrains

In Copilot Chat (Agent mode): tools icon, Add MCP Tools, then paste into mcp.json. Same format in Xcode and Eclipse. This tool does not read environment variables in its settings.

```json
{
  "servers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "requestInit": {
        "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
      }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [docs.github.com](https://docs.github.com/en/copilot/how-tos/provide-context/use-mcp/extend-copilot-chat-with-mcp).

### Copilot coding agent

In your repository: Settings, Copilot, MCP servers. Store your key as the secret COPILOT_MCP_LOCALSCREENSHOT_API_KEY.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "type": "http",
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $COPILOT_MCP_LOCALSCREENSHOT_API_KEY" },
      "tools": ["*"]
    }
  }
}
```

From its documentation, not tried by us yet. Source: [docs.github.com](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/extend-coding-agent-with-mcp).

### Junie

Paste into ~/.junie/mcp/mcp.json, with your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
    }
  }
}
```

> A .junie/mcp/mcp.json inside a project can end up in git. Prefer the file in your home folder.

From its documentation, not tried by us yet. Source: [junie.jetbrains.com](https://junie.jetbrains.com/docs/junie-cli-mcp-configuration.html).

### Roo Code

In Roo Code: MCP settings, Edit Global MCP, then paste, with your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "type": "streamable-http",
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [roocodeinc.github.io](https://roocodeinc.github.io/Roo-Code/features/mcp/using-mcp-in-roo).

### Kilo Code

Paste into ~/.config/kilo/kilo.jsonc, with your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "mcp": {
    "localscreenshot": {
      "type": "remote",
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" },
      "enabled": true
    }
  }
}
```

From its documentation, not tried by us yet. Source: [kilo.ai](https://kilo.ai/docs/features/mcp/using-mcp-in-kilo-code).

### Continue

Save as .continue/mcpServers/localscreenshot.yaml, with your key in place of the variable. This tool does not read environment variables in its settings.

```yaml
name: localscreenshot
version: 0.0.1
schema: v1
mcpServers:
  - name: localscreenshot
    type: streamable-http
    url: https://api.localscreenshot.com/mcp
    requestOptions:
      headers:
        Authorization: Bearer $LOCALSCREENSHOT_API_KEY
```

> A .continue folder inside a project can end up in git. Keep this file out of your repository.

From its documentation, not tried by us yet. Source: [docs.continue.dev](https://docs.continue.dev/customize/deep-dives/mcp).

### OpenCode

Paste into opencode.json. OpenCode reads the key from your environment.

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "localscreenshot": {
      "type": "remote",
      "url": "https://api.localscreenshot.com/mcp",
      "enabled": true,
      "oauth": false,
      "headers": { "Authorization": "Bearer {env:LOCALSCREENSHOT_API_KEY}" }
    }
  }
}
```

> An opencode.json inside a project can end up in git. Prefer the variant that reads the key from your environment, shown on our site.

Connected: we added our server to it and it listed our tools. Source: [opencode.ai](https://opencode.ai/docs/mcp-servers/).

### Amp

Add to ~/.config/amp/settings.json. Amp reads the key from your environment.

```json
{
  "amp.mcpServers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer ${LOCALSCREENSHOT_API_KEY}" }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [ampcode.com](https://ampcode.com/docs/customize/mcp).

### Warp

In Warp: Settings, Agents, MCP servers, Add, Streamable HTTP or SSE Server (URL). Write your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "localscreenshot": {
    "url": "https://api.localscreenshot.com/mcp",
    "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
  }
}
```

From its documentation, not tried by us yet. Source: [docs.warp.dev](https://docs.warp.dev/agents/capabilities/mcp/).

### Kiro

Paste into ~/.kiro/settings/mcp.json. Kiro reads the key from your environment.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer ${LOCALSCREENSHOT_API_KEY}" },
      "disabled": false
    }
  }
}
```

From its documentation, not tried by us yet. Source: [kiro.dev](https://kiro.dev/docs/mcp/configuration/).

### Antigravity

In Antigravity: MCP Servers, Manage MCP Servers, View raw config. Write your key in place of the variable. This tool does not read environment variables in its settings.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "serverUrl": "https://api.localscreenshot.com/mcp",
      "headers": { "Authorization": "Bearer $LOCALSCREENSHOT_API_KEY" }
    }
  }
}
```

From its documentation, not tried by us yet. Source: [antigravity.google](https://antigravity.google/docs/mcp).

### Qwen Code

One command in your terminal.

```bash
qwen mcp add --transport http localscreenshot https://api.localscreenshot.com/mcp \
  --header "Authorization: Bearer $LOCALSCREENSHOT_API_KEY"
```

Connected: we added our server to it and it listed our tools. Source: [qwenlm.github.io](https://qwenlm.github.io/qwen-code-docs/en/users/features/mcp/).

### Kimi Code

Paste into ~/.kimi-code/mcp.json. Kimi Code reads the key from your environment.

```json
{
  "mcpServers": {
    "localscreenshot": {
      "url": "https://api.localscreenshot.com/mcp",
      "bearerTokenEnvVar": "LOCALSCREENSHOT_API_KEY"
    }
  }
}
```

From its documentation, not tried by us yet. Source: [www.kimi.com](https://www.kimi.com/code/docs/en/kimi-code-cli/customization/mcp.html).

### Amazon Q Developer

In the Q Developer chat panel: tools icon, then the plus sign. Write your key in place of `$LOCALSCREENSHOT_API_KEY`.

```text
1. In the Q Developer Chat panel, choose the tools icon, then the plus (+) symbol
2. Scope: global
3. Name: localscreenshot
4. Transport: http
5. URL: https://api.localscreenshot.com/mcp
6. Headers: Authorization = Bearer $LOCALSCREENSHOT_API_KEY
7. Save
```

From its documentation, not tried by us yet. Source: [docs.aws.amazon.com](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/mcp-ide.html).

### Replit

In Replit: Integrations, add a custom MCP server. Write your key in place of `$LOCALSCREENSHOT_API_KEY`.

```text
1. In Replit, open Integrations and add a custom MCP server
2. Display name: localscreenshot
3. Server URL: https://api.localscreenshot.com/mcp
4. Custom header
   Authorization: Bearer $LOCALSCREENSHOT_API_KEY
```

From its documentation, not tried by us yet. Source: [docs.replit.com](https://docs.replit.com/replitai/mcp/overview).

### Lovable

In Lovable: Connectors, the plus button, MCP server. Write your key in place of `$LOCALSCREENSHOT_API_KEY`.

```text
1. Open Connectors, select the + button in the top right of the catalog, and choose MCP server
2. Server name: localscreenshot
3. Server URL: https://api.localscreenshot.com/mcp
4. Authentication: Bearer token or API key
   $LOCALSCREENSHOT_API_KEY
```

From its documentation, not tried by us yet. Source: [docs.lovable.dev](https://docs.lovable.dev/integrations/custom-mcp).

### Not ready yet

We show a setup only once we have read it in the tool's own documentation. Not yet for: goose, OpenClaw, v0, JetBrains AI Assistant.

## Then ask

> "Take a screenshot of wikipedia.org on an iPhone."

What your tool can ask for, and what comes back, is on [Ask your AI (MCP)](https://docs.localscreenshot.com/agent).

## Without MCP

A coding agent that can run a shell command does not need MCP: it can call the command line client. Set `LOCALSCREENSHOT_API_KEY`, and the agent runs `npx localscreenshot https://example.com -o shot.png`. The options are on [Command line (CLI)](https://docs.localscreenshot.com/cli).
