Skip to content

One router for your agent's MCP serversYour agent needs eight tools to do its job. So why give it two hundred?

A 75-minute hands-on workshop with Agent Router: aggregate, authorize and observe every MCP tool call. MCP Dev Summit Toronto 2026 · Erica Hughberg, Tetrate

What you'll build ​

Lakeshore Labs is a fictional Toronto startup. Its engineers expose five MCP servers with 200 tools: issues, CI, deploys, docs and chat.

Their ship-it agent has one job. Issue #42 says checkout rejects valid Toronto postal codes. The agent must find the failing CI run, read the runbook, comment on the issue, deploy the fix to staging and post in #releases. That job needs 8 tools.

You put Agent Router between the agent and those servers. Agent Router is the open-source router for agent traffic, an Agentic AI Foundation project built on Envoy (formerly Envoy AI Gateway). By the end, the agent:

  • connects to one URL instead of five,
  • sees only the 8 tools it needs,
  • has an identity that decides what it may call, and
  • leaves a log line and a trace span for every tool call.
Your agentthe ship-it sample agent, or Claude Code, VS Code, Cursor, Goose, …
Agent Router
/mcp MCP traffic
  1. 1 · Aggregate & filter Lab 1
  2. 2 · Authorize Lab 2
  3. 3 · Observe Lab 3
/v1 LLM traffic

The router holds the API key, not the agent.

  • issues:3001 · 44 tools
  • ci:3002 · 42 tools
  • deploy:3003 · 38 tools
  • docs:3004 · 32 tools
  • chat:3005 · 44 tools
LLMOpenAI, Anthropic, Gemini, Ollama, …
The agent talks to one router endpoint. On /mcp the router merges the tools of five MCP servers, filters them, checks who may call what, and records every call. On /v1 it forwards the agent's model requests to your LLM provider.

Timeline ​

ClockWhatMinutes
0:00Welcome, open your Codespace, the problem in one demo10
0:10Lab 0 · Set up & meet the agent5
0:15Lab 1 · Aggregate & filter17
0:32Debrief, then: identity and authorization4
0:36Lab 2 · Authorize18
0:54Debrief, then: what to observe3
0:57Lab 3 · Observe12
1:09Wrap-up: bring your own agent, take-home6

How the labs work ​

Go at your own pace. The room never waits for you, and you never wait for the room.

Every lab page has the same blocks, in the same order:

BlockWhat you do
GoalRead what you'll be able to do by the end.
RecallConnect to what you did in the previous lab.
PredictAnswer a question before you run anything. Commit to an answer; being wrong is useful.
RunRun a working config we give you.
InvestigateLook closely at what happened, guided by a few questions.
ModifyChange the config to reach the goal. Early steps are partly done for you.
CheckpointRun ./lab check N. Your agent makes a real tool call through the router.
Make · StretchAn open-ended challenge, if you have time.
Explore · take-homeGo deeper later, with links.
Stuck?Open Hint 1, then Hint 2, then the answer.
ReflectTwo short questions to lock it in.

Core, Stretch and Explore ​

Each lab has three tiers. The time on each lab is for Core: everything up to and including the checkpoint. Stretch is for when you finish early. Explore is for after the workshop.

Feedback while you work ​

You edit one file: workspace/mcproute.yaml (plus workspace/telemetry.env in Lab 3). After each edit, run ./lab run. It checks your file before it restarts the router. A mistake gets a line number and a suggested fix, and the router keeps running with your last good config.

./lab check N tells you whether you reached the checkpoint of lab N. When you haven't, it says what is missing, not only that something is.

Fall behind? Catch up with one command ​

bash
./lab solution 2

This applies the solution of lab 2 and restarts the router. Your own version is backed up in .lab/backups/. Every lab also starts from a known-good file, so ./lab start 3 works even if you skipped Lab 2.

Ready?

Open the Codespace now. It takes a minute or two to boot. Then go to Lab 0.

Agent Router is an Agentic AI Foundation project, built on Envoy. Workshop by Erica Hughberg (Tetrate).