Skolverket MCP Server
Enables LLMs to access Swedish educational data through Skolverket's open APIs, allowing users to search curricula, courses, schools, adult education programs, and analyze educational requirements and standards. Provides comprehensive tools for teachers, students, guidance counselors, and educational researchers to interact with official Swedish education data.
README
<img width="700" height="220" alt="Skolverket MCP logo" src="https://github.com/user-attachments/assets/74563bdb-eea4-4276-a58c-ec89b11806ed" />
Skolverket MCP Server
En Model Context Protocol (MCP) server som ger AI-assistenter tillgång till alla Skolverkets öppna API:er – Läroplan API, Skolenhetsregistret och Planned Educations API.
Gör det möjligt för ChatGPT, Claude och andra LLM-system att hämta information om svenska läroplaner, kurser, ämnen, gymnasieprogram, skolenheter, samt vuxenutbildningar (YH, SFI, Komvux).
Skapad av: Isak Skogstad • X/Twitter
Live-Server
Servern körs live och kan användas direkt utan installation:
https://skolverket-mcp.onrender.com/mcp
Tekniska specifikationer:
- Protokoll: HTTP/SSE (Server-Sent Events)
- Bandbredd: 100GB per månad
- Tillgänglighet: 24/7
- Status: Produktionsklar
Obs: Om servern når bandbreddsgränsen rekommenderas lokal installation (se nedan).
Anslutningsinstruktioner
ChatGPT (Plus/Pro/Enterprise)
Alternativ 1: Live-Server
Settings → Connectors → Developer Mode → Add MCP Server
URL: https://skolverket-mcp.onrender.com/mcp
Alternativ 2: Lokal Installation
ChatGPT stöder endast HTTP/SSE (använd live-servern ovan)
Claude Desktop
Alternativ 1: Live-Server (HTTP Transport)
{
"mcpServers": {
"skolverket": {
"transport": "http",
"url": "https://skolverket-mcp.onrender.com/mcp"
}
}
}
Alternativ 2: Lokal Installation (stdio)
{
"mcpServers": {
"skolverket": {
"command": "npx",
"args": ["-y", "skolverket-mcp"]
}
}
}
Claude Code
Alternativ 1: Live-Server (HTTP Transport)
{
"mcpServers": {
"skolverket": {
"transport": "http",
"url": "https://skolverket-mcp.onrender.com/mcp"
}
}
}
Alternativ 2: Lokal Installation (stdio)
{
"mcpServers": {
"skolverket": {
"command": "npx",
"args": ["-y", "skolverket-mcp"]
}
}
}
OpenAI Codex (CLI)
Alternativ 1: Live-Server (HTTP)
# Lägg till i ~/.codex/config.toml:
[mcp.skolverket]
url = "https://skolverket-mcp.onrender.com/mcp"
Alternativ 2: Lokal Installation (stdio)
{
"mcpServers": {
"skolverket": {
"command": "npx",
"args": ["-y", "skolverket-mcp"]
}
}
}
Cline (VS Code Extension)
Alternativ 1: Live-Server (HTTP)
{
"mcpServers": {
"skolverket": {
"transportType": "http",
"url": "https://skolverket-mcp.onrender.com/mcp"
}
}
}
Alternativ 2: Lokal Installation (stdio)
{
"mcpServers": {
"skolverket": {
"command": "npx",
"args": ["-y", "skolverket-mcp"]
}
}
}
Gemini CLI (Google AI Studio)
Alternativ 1: Live-Server (HTTP)
# Kommando:
gemini mcp add --transport http skolverket https://skolverket-mcp.onrender.com/mcp
# Eller i config:
{
"mcpServers": {
"skolverket": {
"httpUrl": "https://skolverket-mcp.onrender.com/mcp"
}
}
}
Alternativ 2: Lokal Installation (stdio)
{
"mcpServers": {
"skolverket": {
"command": "npx",
"args": ["-y", "skolverket-mcp"]
}
}
}
Fler installationsalternativ: INSTALLATION.md (npm global, källkod, etc.)
Funktioner
MCP Capabilities
Servern implementerar MCP-protokollet med stöd för:
- 29 verktyg – 17 för läroplaner, 4 för skolenheter, 7 för vuxenutbildning, 1 för diagnostik
- 4 resurser – API-info, skoltyper, läroplanstyper, kurs- och ämneskoder
- 5 promptmallar – Kursanalys, versionsjämförelser, vuxenutbildning, studievägledning, kursplanering
API-integration
Servern kopplar till tre av Skolverkets öppna API:er:
Läroplan API Läroplaner (LGR11, GY11), ämnen, kurser, gymnasieprogram med kunskapskrav och centralt innehåll.
Skolenhetsregistret Sök och filtrera skolor, förskolor och andra skolenheter. Inkluderar aktiva, nedlagda och vilande enheter.
Planned Educations API Yrkeshögskola, SFI, Komvux och andra vuxenutbildningar med startdatum, platser och studietakt.
Tekniska förbättringar (v2.1.0)
- Strukturerad loggning med Winston
- Intelligent cachning med TTL
- Rate limiting (max 5 samtidiga anrop)
- Input-validering med Zod
- Automatiska återförsök med exponentiell backoff
- Health check för diagnostik
Dokumentation
- Installation – Alla installationsalternativ (live-server, npx, npm, källkod)
- Konfiguration – Miljövariabler och inställningar
- Felsökning – Health check och vanliga problem
- API – Alla 29 verktyg och koder
- Exempel – Praktiska exempel för olika användargrupper
Användningsområden
För lärare Kursplanering med centralt innehåll, bedömning med kunskapskrav, tematiskt arbete över ämnen.
För elever och föräldrar Kursval, programval, förstå betygskriterier, söka vuxenutbildningar och YH-utbildningar.
För studie- och yrkesvägledare Programinformation med yrkesutfall, vägledning om vidareutbildning, söka utbildningstillfällen.
För administratörer Läroplansförändringar över tid, kursutbud och planering, skolenhetsregister.
För forskare Läroplansanalys, historisk utveckling, jämföra versioner.
Teknisk Information
Arkitektur
skolverket-mcp/
├── src/
│ ├── index.ts # Huvudserver (stdio)
│ ├── streamable-http-server.ts # HTTP/SSE server
│ ├── api/ # API-klienter
│ ├── tools/ # 29 verktyg
│ └── types/ # TypeScript-typer
├── docs/ # Dokumentation
└── logs/ # Loggar
Byggd med
@modelcontextprotocol/sdk- MCP SDKaxios+axios-retry- HTTP-klient med retryzod- Schema-valideringwinston- Loggingp-limit- Rate limiting- TypeScript
Utveckling
git clone https://github.com/KSAklfszf921/skolverket-mcp.git
cd skolverket-mcp
npm install
npm run build # Kompilera
npm run dev # Watch mode
npm start # Kör stdio server
npm run start:streamable # Kör HTTP/SSE server
# Testa lokalt
npx @modelcontextprotocol/inspector node dist/index.js
Support och kontakt
Hittat en bugg eller har en idé? Öppna gärna ett issue på GitHub.
Kontakt: isak.skogstad@me.com • X/Twitter
Licens och attribution
MIT License – se LICENSE för detaljer.
Data hämtas från Skolverkets öppna API:er. Denna server är inte officiellt associerad av Skolverket. Projektet skapades för att göra svensk utbildningsdata mer tillgänglig för AI-assistenter och forskare. Bidrag välkomnas!
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.