Warp remote MCP

Connect once. Start creating.

Every supported host reaches the same permanent Streamable HTTP MCP server. Claude Code and Codex install Warp as a plugin; Claude, Claude Desktop, and Cowork use the native Connector.

Server name: warp
Address: https://warp.billrey.net/mcp

Claude Code plugin

Installs the official Warp plugin, the permanent OAuth MCP connection, and the shared OpenUSD, Lua, validation, and review skills. The plugin is served directly by Warp and requires no source-host account or credentials; the only sign-in is Warp OAuth. There is no direct CLI fallback.

Install with Warp Editor
Or install the plugin in Terminal
set -e; legacy=$(claude mcp get warp 2>&1 || true); if printf '%s' "$legacy" | grep -F 'URL:' >/dev/null && ! printf '%s' "$legacy" | grep -F 'warp.billrey.net' >/dev/null; then echo 'Claude already has an unrelated MCP server named warp; rename it before installing Warp.' >&2; exit 2; fi; installed=$(claude plugin list --json 2>/dev/null || true); current=$(claude mcp get plugin:warp:warp 2>&1 || true); if ! printf '%s' "$installed" | grep -F '"id": "warp@warp"' >/dev/null || ! printf '%s' "$installed" | grep -F '"version": "0.2.28"' >/dev/null || ! printf '%s' "$installed" | grep -F '"url": "https://warp.billrey.net/mcp"' >/dev/null; then claude plugin marketplace remove warp --scope user >/dev/null 2>&1 || true; claude plugin marketplace add 'https://warp.billrey.net/assets/plugins/warp-agent-plugin.git#v0.2.28' --scope user --sparse .claude-plugin plugins/warp; if printf '%s' "$installed" | grep -F '"id": "warp@warp"' >/dev/null; then claude plugin update warp@warp --scope user; else claude plugin install warp@warp --scope user; fi; fi; installed=$(claude plugin list --json); if ! printf '%s' "$installed" | grep -F '"id": "warp@warp"' >/dev/null || ! printf '%s' "$installed" | grep -F '"url": "https://warp.billrey.net/mcp"' >/dev/null; then echo 'The official Warp plugin did not retain its MCP connection.' >&2; exit 3; fi; if printf '%s' "$legacy" | grep -F 'warp.billrey.net' >/dev/null; then claude mcp remove warp --scope user; fi; current=$(claude mcp get plugin:warp:warp 2>&1 || true); if ! printf '%s' "$current" | grep -F 'URL: https://warp.billrey.net/mcp' >/dev/null; then echo 'The official Warp plugin did not install its MCP connection.' >&2; exit 3; fi; if ! printf '%s' "$current" | grep -F 'Connected' >/dev/null; then claude mcp login plugin:warp:warp; fi; current=$(claude mcp get plugin:warp:warp 2>&1 || true); if ! printf '%s' "$current" | grep -F 'Connected' >/dev/null; then echo 'Warp OAuth did not complete.' >&2; exit 4; fi; claude mcp get plugin:warp:warp

Warp Editor installs and authenticates before opening a fresh task. If you run the command manually, open one new Claude Code task afterward because a running task cannot reload its tool registry.

Safe by construction. The connection is account-wide, but authorization is checked for every explicit project scope. The first write starts an isolated Lore workspace; agents can submit for review but cannot approve or merge.

After authentication, call warp_workspace once to select the project, workspace, and scene. Then use warp_inspect, warp_change, and warp_verify for the complete task.