# MetaMCP

An on-demand gateway for secondary MCP servers. It exposes three fixed tools to discover schemas, run lazy child tools, and execute verified workflows.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 18
- Author: dataware-co
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/dataware-co/metamcp
- Updated: 2026-09-30
- HTML: https://affpapa.org/en/nevibecode/mcp/metamcp

## What it does

MetaMCP acts as a routing layer for MCP servers that are not needed on every turn. Connecting dozens of servers directly inflates the client prompt with tool definitions. MetaMCP replaces them with three predictable tools: `mcp_discover` to inspect cached schemas, `mcp_call` for on-demand execution, and `mcp_run` for pipeline tasks.

Downstream servers live in a `.mcp.json` configuration file and stay dormant until summoned. MetaMCP also supports Methods, which are declarative JSON manifests with strict step dependencies, input validation, and execution bounds.

Methods that alter state are blocked unless MetaMCP starts with the `--allow-writes` flag. The package requires Node.js 20 or newer. Foundational servers with sensitive authentication or frequent access should remain connected directly rather than routed through this gateway.

## Requirements
- Needs: Node.js (commands run via npx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add metamcp -- npx -y @mentu/metamcp
```

### Codex

**Platform CLI**
```bash
codex mcp add metamcp -- npx -y @mentu/metamcp
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "metamcp": {
            "command": "npx",
            "args": [
                "-y",
                "@mentu/metamcp"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "metamcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@mentu/metamcp"
            ]
        }
    }
}
```

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add metamcp npx -y @mentu/metamcp
```

## When to use it
- reduce tool schema overhead in the model context
- load secondary MCP servers on demand without idling processes
- execute multi-step workflows via validated JSON Methods
- prevent unvetted mutations during automated tool retries

## Example prompts
- Search for page capture tools using `mcp_discover`
- Execute `capture_page` on the `browser` child server using `mcp_call`
- Run the `content.acquire-and-normalize` workflow via `mcp_run`

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
