81 lines
2.2 KiB
Markdown
81 lines
2.2 KiB
Markdown
# Les 16: Model Context Protocol — Bouw je eigen MCP-server
|
|
|
|
> ✅ **Deze les is volledig uitgewerkt**
|
|
|
|
## Lesmateriaal
|
|
|
|
- [Slide Overzicht](../Les16-MCP/Les16-Slide-Overzicht.md)
|
|
- [Docenttekst](../Les16-MCP/Les16-Docenttekst.md)
|
|
- [Lesstof](../Les16-MCP/Les16-Lesstof.md)
|
|
- [Lesopdracht](../Les16-MCP/Les16-Lesopdracht.md)
|
|
- [Huiswerk](../Les16-MCP/Les16-Huiswerk.md)
|
|
|
|
---
|
|
|
|
## Deel
|
|
**Deel 3 — AI Development** (Les 11-16)
|
|
|
|
## Beschrijving
|
|
MCP (Model Context Protocol) is de open standaard waarmee Anthropic, OpenAI en de community AI-clients koppelen aan tools en data. We bouwen een eigen MCP-server voor Polderfest-data en laden hem in Cursor én Claude Desktop.
|
|
|
|
---
|
|
|
|
## Te Behandelen
|
|
|
|
### Theorie
|
|
- Wat is MCP en waarom bestaat het?
|
|
- Het probleem: tools zitten nu vast aan één app
|
|
- MCP-architectuur: server, client, transport (stdio, HTTP)
|
|
- Tools vs. Resources vs. Prompts
|
|
- Bestaande MCP-ecosysteem (filesystem, git, Slack, GitHub)
|
|
- MCP vs. Tool Calling — wanneer welke?
|
|
|
|
### Live demo's
|
|
1. MCP SDK installeren + eerste server met 1 tool
|
|
2. Server laden in Cursor + in Claude Desktop
|
|
3. Eigen Polderfest MCP-server (search, stats, schedule)
|
|
4. Resources en Prompts toevoegen
|
|
5. Server publiceren op npm
|
|
|
|
---
|
|
|
|
## Tools
|
|
- `@modelcontextprotocol/sdk` (TypeScript)
|
|
- Cursor (`.cursor/mcp.json`)
|
|
- Claude Desktop (`claude_desktop_config.json`)
|
|
- Node.js + TypeScript
|
|
|
|
---
|
|
|
|
## Lesopdracht (in-class, 60 min)
|
|
|
|
Studenten kijken mee. In-class oefening:
|
|
- Clone de Polderfest MCP-starter
|
|
- Voeg een eigen tool toe (`getBandByCountry`)
|
|
- Laad de server in Cursor of Claude Desktop
|
|
- Test of de AI je tool vindt en gebruikt
|
|
|
|
**Inleveren:** Screenshot van werkende MCP-tool in Cursor/Claude.
|
|
|
|
---
|
|
|
|
## Huiswerk (take-home)
|
|
|
|
Bouw een MCP-server voor je eigen domein:
|
|
- Minimaal 3 tools
|
|
- 1 resource (bijv. een doc-bestand)
|
|
- 1 prompt-template
|
|
- README met installatie-instructies voor Cursor
|
|
|
|
**Inleveren:** GitHub URL via Teams.
|
|
|
|
---
|
|
|
|
## Leerdoelen
|
|
Na deze les kan de student:
|
|
- MCP uitleggen aan een collega (waarom + hoe)
|
|
- Een eigen MCP-server opzetten met de TypeScript SDK
|
|
- Een server laden in Cursor en/of Claude Desktop
|
|
- Het verschil tussen Tool, Resource en Prompt benoemen
|
|
- Bepalen wanneer een MCP-server vs. inline tool calling past
|