switchcore

v0.4.0

MCP Meta-Router - Discovery, inventory, smart routing, and dynamic management for MCP servers

What is switchcore?

switchcore acts as a Tool Compass for AI agents using the Model Context Protocol (MCP). It discovers all configured MCP servers, indexes their tools, and provides intelligent routing - helping agents find the right tool for any task without manual lookup.

Pure Python. Zero runtime dependencies for scoring. 152 passing tests.

12 Tools Across 4 Phases

Discovery

list_available_servers

Overview of all configured MCP servers with tool counts and status

Discovery

list_all_tools

Search across all tools from all servers with keyword filtering

Discovery

describe_server

Deep dive into a specific server's tools, prompts, and resources

Discovery

refresh_discovery

Force re-scan of all servers to pick up changes

Smart Routing

recommend_tools

Ranked tool recommendations for any task description using keyword scoring

Smart Routing

get_workflow

Multi-step workflow suggestions composed from tools across servers

Context-Aware

update_context

Tell the router what you're working on to improve suggestions

Context-Aware

suggest_next_tool

Context-aware next-tool suggestion based on session state

Context-Aware

get_context

View current session context and routing state

Dynamic Loading

reload_server

Re-discover a single server without refreshing all

Dynamic Loading

reload_config

Hot-reload the config file and sync the server list

Dynamic Loading

get_server_health

Per-server health status, diagnostics, and error reporting

Architecture

LLM Host (any MCP-compatible model)
  |
  v
switchcore (this server)
  Tools: 12 across 4 phases
  |
  v  stdio connections
+---------+  +---------+  +---------+
| Server1 |  | Server2 |  | Server3 |  ...
| N tools |  | N tools |  | N tools |
+---------+  +---------+  +---------+
            

switchcore is read-only and advisory. It discovers and recommends - it does NOT proxy tool calls.

Quick Start

# Install
uv venv .venv --python 3.12
uv pip install -e "." --python .venv/bin/python

# Add to .mcp.json
"mcp-router": {
  "command": "bash",
  "args": ["-c", "cd /path/to/switchcore && .venv/bin/python -m src.server"]
}

# Run tests
.venv/bin/python -m pytest tests/ -v    # 152 passing
            

Key Features

FeatureDescription
Zero-dep scoringPure Python keyword scoring with synonym expansion - no ML dependencies
Template-drivenJSON configs for scoring weights, categories, stopwords, workflow patterns
WSL-awareAuto-translates launch commands between Windows and WSL paths
Session contextTracks what you're working on to improve suggestions over time
Hot reloadReload individual servers or full config without restart
Health monitoringPer-server diagnostics with error tracking

Get Involved

switchcore is open source under the MIT license.

View on GitHub Report Issue