Skolverket MCP Server

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.

Category
Visit Server

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 SkogstadX/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 SDK
  • axios + axios-retry - HTTP-klient med retry
  • zod - Schema-validering
  • winston - Logging
  • p-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.comX/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

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured