Skip to content

Model Context Protocol (MCP)

Open in ChatGPT ↗
Ask ChatGPT about this page
Open in Claude ↗
Ask Claude about this page
Copied!

Configure MCP servers in the Warp desktop app to extend local agents with custom tools and data sources through a standardized interface.

MCP servers extend Warp’s local agents in a modular, flexible way by exposing custom tools or data sources through a standardized interface — essentially acting as plugins for Warp. Warp supports a variety of connection protocols, including Streamable HTTPS and SSE, along with custom headers and environment variables.

MCP is an open source protocol. Check out the official MCP documentation for more detailed information on how this protocol is engineered.

You can navigate to the MCP servers page in any of the following ways:

  • From the Settings Page: Settings > Agents > MCP servers
  • From Warp Drive: under Personal > MCP Servers
  • From the Command Palette: search for Open MCP Servers
  • From the Warp app: Settings > Agents > Warp Agent > Manage MCP servers

This will show a list of all configured MCP servers, including which are currently running. If you close Warp with an MCP server running, it will run again on next start of Warp. MCP servers that are stopped will remain so on next launch of Warp.

MCP servers page

To add a new MCP server, you can click the + Add button. Configurations from most MCP Clients can be directly copied and pasted.

MCP server types you can add:

Provide a startup command. Warp will launch this command when starting up and shut it down on exit.

Adding a CLI MCP Server (Command)

CLI Server (Command) MCP Configuration Properties

PropertyTypeRequiredDescription
commandstringYesThe executable to launch (e.g., npx).
argsstring[]YesArray of command-line arguments passed to command (e.g., module name, paths).
envobjectNoKey-value object of environment variables (e.g., API Tokens).
working_directorystringNoWorking directory path where the command is run, used for resolving relative paths.

Warp supports configuring multiple MCP servers using a JSON snippet. Each entry under mcpServers is keyed by a unique name (filesystem, github, notes, etc). All servers defined in the example are added automatically — no manual setup required.

To add a multiple MCP servers, you can click the + Add button then paste in a JSON snippet like the example below:

{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
},
"notes": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-notes", "--notes-dir", "/Users/you/Documents/notes"]
},
"externalDocs": {
"url": "http://localhost:4000/mcp/stream",
"headers": {
"my-header": "my-header-value"
}
}
}
}

Warp detects MCP server configurations saved in supported config files and can spawn them alongside your manually configured servers.

Warp-managed file-based servers use .warp/.mcp.json files. The built-in /add-mcp-server skill can help create or update these files for you:

  • Global: ~/.warp/.mcp.json
  • Project-scoped: {repo_root}/.warp/.mcp.json

Global Warp servers are detected and auto-spawned by default, even if the third-party auto-spawn setting is off.

To auto-spawn supported global servers from third-party agents, go to Settings > Agents > MCP servers and toggle Auto-spawn servers from third-party agents on.

File-based MCP Servers toggle

When this setting is enabled:

  • Global third-party servers are spawned on Warp startup and available in any session.
  • Project-scoped servers are detected when you enter a repo containing a supported config file, but are not spawned automatically.

Project-scoped servers from any provider, including Warp, must be toggled on individually from the MCP servers page. This is intentional: cloned repositories can contain MCP config files that run arbitrary commands, so Warp never starts project-scoped file-based servers automatically. Project-scoped servers started from the MCP servers page are session-scoped; after restarting Warp, toggle them on again if you still trust the repo and want to use those tools.

Supported providers:

  • Warp - reads global config (~/.warp/.mcp.json) and project-scoped config (.warp/.mcp.json at project root). Global Warp servers auto-spawn by default. Use /add-mcp-server in Agent Mode to add or update Warp-managed MCP config files.
  • Claude Code - reads user-scoped config (~/.claude.json) and project-scoped config (.mcp.json at project root). Global Claude Code servers auto-spawn only when Auto-spawn servers from third-party agents is enabled. See user scope and project scope in the Claude Code docs.
  • Codex - reads global config (~/.codex/config.toml) and project-scoped config (.codex/config.toml at project root). Global Codex servers auto-spawn only when Auto-spawn servers from third-party agents is enabled. See Codex MCP docs.
  • Other agents - reads global config (~/.agents/.mcp.json) and project-scoped config (.agents/.mcp.json at project root). Global servers from this provider auto-spawn only when Auto-spawn servers from third-party agents is enabled.

Warp recognizes MCP servers under the mcpServers, servers, mcp.servers, and mcp_servers wrapper keys in JSON config files. Codex configs are read from TOML under mcp_servers.

Add short demos for these flows:

  • Using /add-mcp-server to create a global Warp MCP server, then restarting Warp to show it auto-spawns by default.
  • Enabling Auto-spawn servers from third-party agents and showing a global Claude Code or Codex MCP server start automatically.
  • Opening a cloned repo with a project-scoped MCP config and showing that the server appears under the relevant Detected from section but must be toggled on manually after each restart.

After MCP servers are registered in Warp, you can Start or Stop them from the MCP servers page. Each running server will have a list of available tools and resources.

You can rename and edit a server’s name, as well as delete the server. If you are a part of a Team, you can also share a MCP with your teammates.

MCP servers can be shared with your teammates by clicking the share icon. When sharing, sensitive values in the env configuration will be automatically scrubbed and replaced with variables.

Sharing a MCP Server

Your teammates can find shared MCP servers under the Shared section of their MCP settings. When your teammates install your server configuration, they will be prompted to enter any scrubbed env values.

Warp also provides out-of-the-box MCP servers that can be installed by anyone. These can be found under the Shared section of your MCP settings.

Most MCP servers require authentication to connect to external services. Warp supports the following methods:

  • Environment variables: pass an API key or access token via the server’s environment variables.
  • OAuth login (one-click installation): simplifies configuration by handling authentication through your browser. Warp stores credentials securely on your device and reuses them for future sessions. Re-authentication is required when opening Warp on a new machine.
    • Starting a server without existing credentials automatically opens a browser-based authentication flow.
    • Credentials can be revoked at any time from the MCP Servers pane in Warp.
  • Custom Headers: pass an Authentication Bearer token via the headers variable.

If you’re having trouble with an MCP server, you can check the logs for any errors or messages to help you diagnose the problem by clicking the View Logs button on a server from the MCP servers page.

In some cases you may need to reset the auth token for some MCP servers. To do this delete the local MCP auth files by running the following: rm -rf ~/.mcp-auth

If the above doesn’t help and you need to reset or change authentication, you may need to switch to a CLI-based MCP server configuration and provide the token via environment variables. See Sentry CLI MCP Example.

Warp saves the MCP logs locally on your computer. You can open the files directly and inspect the full contents in the following location:

Terminal window
cd "$HOME/Library/Group Containers/2BBY89MBSN.dev.warp/Library/Application Support/dev.warp.Warp-Stable/mcp"

Below are examples for popular Model Context Protocol (MCP) servers.

  • CLI Server (Command) — local npx or docker command based MCP servers.
  • Streamable HTTP or SSE Server (URL) — remote or locally hosted MCP endpoints.

GitHub MCP Docs

GitHub CLI Server (Command)

{
"GitHub": {
"command": "docker",
"args": ["run","-i","--rm","-e","GITHUB_PERSONAL_ACCESS_TOKEN","ghcr.io/github/github-mcp-server"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<your_github_token>"
}
}
}

GitHub SSE Server (URL)

{
"GitHub": {
"url": "https://api.githubcopilot.com/mcp/"
}
}

Figma Remote MCP Server (Recommended)

The official Figma remote MCP server supports OAuth for simple, one-click setup.

  1. In Warp, go to Warp Drive > MCP Servers > + Add and paste the configuration below.
  2. Warp will open a browser window to authenticate with Figma.
  3. After approving access, credentials are stored securely on your device.
{
"Figma": {
"url": "https://mcp.figma.com/mcp"
}
}

Figma Local MCP Server

  1. Enable the Official Figma MCP Server. Figma MCP Docs
  2. Open the Figma desktop app and make sure you’ve updated to the latest version.
  3. Create or open a Figma Design file.
  4. In the upper-left corner, open the Figma menu.
  5. Under Preferences, select Enable local MCP Server.
  6. Enter the following configuration into Warp > Warp Drive > MCP Servers > + Add.
{
"Figma (Local)": {
"url": "http://127.0.0.1:3845/mcp"
}
}

Warp Guides hosts a collection of demos and walkthroughs showing how MCP servers can extend your workflows. Each example highlights practical use cases you can try today:

  • GitHub — access repositories, issues, and pull requests through MCP.
  • Sentry — surface error monitoring and alerts as agent-usable data.
  • Linear — integrate project management tasks and tickets.
  • Puppeteer — run automated browser workflows via MCP.
  • Context7 — experiment with external data integrations.