Lab 1 · Aggregate & filter
Put five MCP servers behind one endpoint, then cut 200 tools down to the 8 the job needs.
17 minutes
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
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:
/mcp MCP traffic /v1 LLM traffic The router holds the API key, not the agent.
/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. | Clock | What | Minutes |
|---|---|---|
| 0:00 | Welcome, open your Codespace, the problem in one demo | 10 |
| 0:10 | Lab 0 · Set up & meet the agent | 5 |
| 0:15 | Lab 1 · Aggregate & filter | 17 |
| 0:32 | Debrief, then: identity and authorization | 4 |
| 0:36 | Lab 2 · Authorize | 18 |
| 0:54 | Debrief, then: what to observe | 3 |
| 0:57 | Lab 3 · Observe | 12 |
| 1:09 | Wrap-up: bring your own agent, take-home | 6 |
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:
| Block | What you do |
|---|---|
| Goal | Read what you'll be able to do by the end. |
| Recall | Connect to what you did in the previous lab. |
| Predict | Answer a question before you run anything. Commit to an answer; being wrong is useful. |
| Run | Run a working config we give you. |
| Investigate | Look closely at what happened, guided by a few questions. |
| Modify | Change the config to reach the goal. Early steps are partly done for you. |
| Checkpoint | Run ./lab check N. Your agent makes a real tool call through the router. |
| Make · Stretch | An open-ended challenge, if you have time. |
| Explore · take-home | Go deeper later, with links. |
| Stuck? | Open Hint 1, then Hint 2, then the answer. |
| Reflect | Two short questions to lock it in. |
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.
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.
./lab solution 2This 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.