Compress all connected MCP servers into a single router MCP to save tokens
Compress all connected MCP servers into a single router MCP to save tokens. Exposed over MCP by the mcp mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.
Being a remote server, there is no local install. You register the endpoint with your client, authorise it once, and the tools appear.
Everything the assistant can do here goes through one of these:
OAuth — HTTP servers that require OAuth are supported. When you add an HTTP server, the router probes it for OAuth metadata and starts the login flowYou will need 8 environment variables: GITHUB_PERSONAL_TOKEN, MY_CLIENT_ID, MY_CLIENT_SECRET, GITHUB_OAUTH_CLIENT_ID, GITHUB_OAUTH_CLIENT_SECRET, FIGMA_PERSONAL_ACCESS_TOKEN, FIGMA_CLIENT_ID, FIGMA_CLIENT_SECRET. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
npx, so no separate install step is needed. - A coding agent that supports stdio MCP servers — this covers virtually every modern coding agent (opencode, Claude Code, Codex, GitHub Copilot, Cursor, etc.). The router exposes itself as a single stdio MCP server, so any agent that can spawn a local MCP process works.Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. MCP's toolset — OAuth — is a fair guide to whether it matches your workflow. It is maintained by GitHub Actions; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| OAuth | HTTP servers that require OAuth are supported. When you add an HTTP server, the router probes it for OAuth metadata and starts the login flow automatically if OAuth is advertised. You can also trigger it manually: |
{
"mcpServers": {
"router-1": {
"command": "npx",
"args": ["-y", "mcp-compress-router"],
"env": {
"GITHUB_PERSONAL_TOKEN": "your-value",
"MY_CLIENT_ID": "your-value",
"MY_CLIENT_SECRET": "your-value",
"GITHUB_OAUTH_CLIENT_ID": "your-value",
"GITHUB_OAUTH_CLIENT_SECRET": "your-value",
"FIGMA_PERSONAL_ACCESS_TOKEN": "your-value",
"FIGMA_CLIENT_ID": "your-value",
"FIGMA_CLIENT_SECRET": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
npx, so no separate install step is needed. - A coding agent that supports stdio MCP servers — this covers virtually every modern coding agent (opencode, Claude Code, Codex, GitHub Copilot, Cursor, etc.). The router exposes itself as a single stdio MCP server, so any agent that can spawn a local MCP process works.| Variable | Description | Required |
|---|---|---|
| GITHUB_PERSONAL_TOKEN | Credential the server authenticates with. | Yes |
| MY_CLIENT_ID | Configuration value read at startup. | Optional |
| MY_CLIENT_SECRET | Credential the server authenticates with. | Yes |
| GITHUB_OAUTH_CLIENT_ID | Configuration value read at startup. | Optional |
| GITHUB_OAUTH_CLIENT_SECRET | Credential the server authenticates with. | Yes |
| FIGMA_PERSONAL_ACCESS_TOKEN | Credential the server authenticates with. | Yes |
| FIGMA_CLIENT_ID | Configuration value read at startup. | Optional |
| FIGMA_CLIENT_SECRET | Credential the server authenticates with. | Yes |
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.