Add a Remote MCP Server to Warp: Settings, OAuth and Fixes | MCP Hunter

Add a Remote MCP Server to Warp: Settings, OAuth and Fixes

How to add a remote MCP server to Warp: Settings, Agents, MCP servers and + Add, the url and headers JSON, OAuth sign-in in the browser, the .warp/.mcp.json files, server logs, and fixing a server that will not connect.

MCP Hunter team 5 min read

Open Settings > Agents > MCP servers, click + Add, choose Streamable HTTP or SSE Server (URL), and paste the server as JSON [1]:

{
  "my-server": {
    "url": "https://mcp.example.com/mcp"
  }
}

Warp connects to a server that is already running at that address; it starts nothing on your machine [1]. Most clients' configurations can be pasted in as they are, mcpServers wrapper included [1].

Everything below is checked against Warp's documentation on 2 November 2026 [1].

TL;DR:

  • A remote entry is url plus optional headers. There is no type field to get wrong [1].
  • OAuth opens your browser the first time a server starts without saved credentials. Credentials stay on that device [1].
  • Servers you leave running start again the next time you open Warp; stopped ones stay stopped [1].
  • Every server has View Logs, which is where a failed connection explains itself [1].

Four ways to the MCP servers page

All open the same list [1]:

  • Settings > Agents > MCP servers
  • Warp Drive > Personal > MCP Servers
  • The Command Palette: search for "Open MCP Servers"
  • Settings > Agents > Warp Agent > Manage MCP servers

The fields a remote entry takes

Field Required What it does [1]
url Yes The server's endpoint
headers No Key-value pairs sent with every request, such as Authorization

Several servers at once, in the shape other clients use [1]:

{
  "mcpServers": {
    "my-server": {
      "url": "https://mcp.example.com/mcp",
      "headers": {
        "Authorization": "Bearer your-token"
      }
    },
    "linear": {
      "url": "https://mcp.linear.app/mcp"
    }
  }
}

The URL is the MCP endpoint itself, usually ending in /mcp (older servers use /sse), not the product's homepage or its docs page. env and working_directory belong to command servers only, not to URL servers [1].

Sign in to a server that needs it

Start a server that has no saved credentials and Warp opens a browser window for its sign-in [1]. Credentials are stored on your device and reused in later sessions, so on a new machine you sign in again [1]. You can revoke them from the MCP servers page [1].

A server that takes an API key instead gets it in headers, as Authorization: Bearer ... [1]. MCP OAuth covers what a server has to publish for the browser sign-in to work.

Servers from files and from other agents

Warp also reads servers from files [1]:

File Starts on its own?
~/.warp/.mcp.json Yes, global Warp servers start by default
.warp/.mcp.json in a project Needs your approval in each session
~/.claude.json and .mcp.json (Claude Code) Only after you turn on Auto-spawn servers from third-party agents
~/.codex/config.toml and .codex/config.toml (Codex) Same setting
~/.agents/.mcp.json and .agents/.mcp.json Same setting

So a server you already set up in Claude Code or Codex can show up in Warp without adding it twice [1]. Edits to these files from inside Warp also ask for your approval [1].

Share a server with your team

The share icon on a server puts it in Warp Drive, where teammates find it under Shared [1]. Sensitive values in env are replaced with variables that each teammate fills in [1]. The documentation describes that scrubbing for env only, not for headers [1], so take a token out of a URL server's headers before you share it.

When it will not connect

What you see Usual cause Fix
Nothing useful on screen The error is in the log Open View Logs on the server [1]
No tools, or an error from the server The URL is the homepage or docs page Use the endpoint, usually ending in /mcp
401 with a header set Token wrong or expired Replace it in headers
Sign-in loops or uses an old account Stale stored tokens Warp's docs suggest rm -rf ~/.mcp-auth, which deletes every stored MCP token, then sign in again [1]
A server from .mcp.json or Codex never starts Third-party servers wait for a setting or an approval Turn on auto-spawn, or approve it for the session [1]
A server you stopped is still stopped Warp remembers stopped servers Press Start [1]
The server connects but tools are not called Some models handle MCP better than others Try a different model [1]

Warp's documentation points out that logs may contain API keys, so clean them before you paste them anywhere [1]. The log folders are ~/Library/Group Containers/2BBY89MBSN.dev.warp/Library/Application Support/dev.warp.Warp-Stable/mcp on macOS, $env:LOCALAPPDATA\warp\Warp\data\logs\mcp on Windows, and ${XDG_STATE_HOME:-$HOME/.local/state}/warp-terminal/mcp on Linux [1].

For what the server's own error codes mean, see MCP server errors and MCP server connection failed.

Check it from outside before you share it

Warp connects from your own machine, so a server on localhost or your VPN works for you and for nobody else. Our MCP connection test calls your server from our network, runs the handshake and tools/list, and reports what a stranger on the internet gets back, with a dated URL you can share. If it passes there and fails in Warp, the problem is in your configuration, not the server.

The same setup in other clients is in OpenCode, Claude Code, Codex, Gemini CLI, GitHub Copilot CLI, Cursor, VS Code, LibreChat, Claude Desktop and ChatGPT, and remote MCP server vs stdio covers whether your server should have a public address at all.

Sources

  1. Model Context Protocol, Warp docs