Model Context Protocol

Extend Warp’s agents with custom tools and data sources using MCP servers — modular plugins powered by a standardized interface.

Model Context Protocol (MCP)

MCP servers extend Warp’s agents in a modular, flexible way by exposing custom tools or data sources through a standardized interface — essentially acting as plugins for Warp.

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

How to access MCP Server settings

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

  • From Warp Drive: under Personal > MCP Servers

  • From the Command Palette: search for Open MCP Servers

  • From the settings tab: Settings > AI > 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

Adding an MCP Server

To add a new MCP server, you can click the + Add button. 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)

Always set working_directory explicitly when your MCP server command or args include relative paths. This ensures consistent and predictable behavior across machines and sessions.

CLI Server (Command) MCP Configuration Properties

Property
Type
Required
Description

command

string

Yes

The executable to launch (e.g., npx).

args

string[]

Yes

Array of command-line arguments passed to command (e.g., module name, paths).

env

object

No

Key-value object of environment variables (e.g., tokens).

working_directory

string

No

Working directory path where the command is run, used for resolving relative paths.

Adding multiple MCP Servers

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"
    }
  }
}

Managing MCP servers

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. To prevent Warp from automatically starting a server when you open Warp, set the "start_on_launch" value to false in the server's JSON configuration.

Debugging

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.

Tip: We've noticed that some models often work better with MCP servers than others. If you're having trouble calling or using an MCP server, try using a different model.

Where MCP Logs Are Stored

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

cd "$HOME/Library/Application Support/dev.warp.Warp-Stable/mcp"

MCP Server Configuration Examples

Below are examples for popular Model Context Protocol (MCP) servers, presented in tabs with:

  • CLI Server (Command) — local npx launches (requires MCP package and API credentials).

  • SSE Server (URL) — remote-hosted MCP endpoint.

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/"
  }
}

Last updated

Was this helpful?