MCP Guide

MCP (Model Context Protocol) is how Claude Code agents interact with MultiTerminal. This guide explains what you'll see, how to manage your MCP servers, and how to bring your existing MCPs under one roof.

What is MCP?

MCP servers give Claude Code agents tools — the ability to do things beyond just generating text. Through MCP, agents can create tasks, send messages, search code, manage databases, and interact with external services.

Think of MCP servers as plugins for Claude Code. Each server provides a set of tools that agents can call. MultiTerminal ships with two MCP servers that give agents full access to the MultiTerminal platform.

New to MCP? You can skip the “Your Existing MCPs” and “Importing MCPs” sections below — the two built-in servers work out of the box with no configuration. Come back to them only when you want to bring your own MCP servers under one roof.

What You See After Installation

After installing MultiTerminal, open a terminal and run /mcp in Claude Code. You'll see something like this:

Your exact list will differ — the servers above the divider are whatever you already had configured. The point is that the two MultiTerminal built-ins (mcp-gateway and multiterminal) appear at the bottom.

Manage MCP servers
5 servers

    your-existing-mcp-1 - connected
    your-existing-mcp-2 - connected
    your-existing-mcp-3 - connected

    Built-in MCPs (always available)
    mcp-gateway - connected
    multiterminal - connected

Your existing MCPs are unchanged — they still work exactly as before. MultiTerminal adds two new servers below them.

The two MultiTerminal servers are loaded automatically whenever you open a terminal through MultiTerminal. They won't appear in standalone Claude Code sessions outside of MultiTerminal.

The Two Built-in Servers

Server Purpose Example Tools
multiterminal Core tools for tasks, messaging, code search, browser tabs, projects, and team coordination list_tasks, send_message, search_code, open_browser_tab
mcp-gateway MCP proxy and manager — aggregates tools from other MCP servers and provides server/profile management gateway__list_servers, gateway__add_server, gateway__set_profile

The multiterminal server is what agents use day-to-day — managing tasks, sending messages, searching your codebase. See the MCP Tools Reference for the full list of ~90 tools.

The mcp-gateway server is your MCP management layer. It acts as a proxy: you register other MCP servers with the gateway, and it aggregates all their tools into a single connection. This gives you centralized control over which servers are active, organized by profiles.

Your Existing MCPs

If you already have MCP servers configured in Claude Code (in your ~/.claude.json or project-level .mcp.json files), they continue to work alongside MultiTerminal's servers. Nothing changes about your existing setup.

Over time, you can choose to import your existing MCPs into the gateway. This is optional but gives you benefits:

  • Centralized management — enable/disable servers without editing JSON files
  • Profiles — switch between different server sets for different projects
  • Visibility — see all your MCP servers and their status in one place
  • Reliability — the gateway handles crash recovery and automatic reconnection

Importing MCPs into the Gateway

To bring your existing MCPs under gateway management, use the import tools from any Claude Code terminal:

Import from Claude Code config

This reads your ~/.claude.json and imports all MCP servers found there:

gateway__import_claude_config()

Import from an .mcp.json file

Point to any .mcp.json file to import its servers:

gateway__import_mcp_config(configPath="C:/path/to/.mcp.json")

Importing is non-destructive — it copies server configurations into the gateway database. Your original config files are not modified. You can remove the originals later once you've confirmed everything works through the gateway.

Managing Servers

Once servers are registered with the gateway, you can manage them using these tools:

Tool What It Does
gateway__list_servers Show all registered servers with connection status
gateway__add_server Register a new MCP server (name, command, args)
gateway__remove_server Unregister a server
gateway__enable_server Enable a disabled server (starts it up)
gateway__disable_server Disable a server without removing it

Adding a server manually

gateway__add_server(
  name="my-database-mcp",
  command="npx",
  args=["-y", "@my-org/database-mcp"],
  env={"DB_URL": "postgresql://localhost/mydb"}
)

Using Profiles

Profiles let you define sets of servers for different contexts. For example, you might have a "web-dev" profile with database and API servers, and a "data-science" profile with notebook and visualization servers.

Tool What It Does
gateway__list_profiles Show all profiles and which is active
gateway__create_profile Create a new profile with selected servers
gateway__set_profile Switch the active profile (connects/disconnects servers as needed)
gateway__delete_profile Remove a profile

A default profile is created automatically and includes all registered servers. You can create additional profiles to customize which servers are available per project.

MultiTerminal can automatically switch gateway profiles when you open different projects. Configure this in the project settings under MCP Servers.

Troubleshooting

MCP servers not showing up

Make sure you're running Claude Code from within a MultiTerminal terminal. The MCP servers are loaded via the --mcp-config flag, which MultiTerminal sets automatically when launching terminals.

Gateway shows "disconnected"

Check that .NET 8 Runtime is installed. The gateway is a .NET application and requires the runtime. Run dotnet --list-runtimes to verify.

Imported server won't connect

Verify the server's command is available on your PATH. Use gateway__list_servers to check the connection status and error messages. The gateway retries failed connections automatically (up to 3 attempts with exponential backoff).

Want to debug gateway output

Set the environment variable MCP_GATEWAY_DEBUG=1 to enable stderr logging from the gateway process.

Next Steps