Skip to main content
Glama

Traktamente MCP Server

An MCP server that provides access to Swedish traktamente (per diem) rates from Skatteverket's official API.

Features

  • πŸ” Query per diem rates by country, year, or country code

  • 🌍 Search across all available countries

  • πŸ“Š Access official data from Skatteverket

  • ⚑ Fast and lightweight implementation using Bun

  • πŸ”’ Type-safe with Zod schema validation

Installation

pnpm install traktamente-mcp

Or with Bun:

bun add traktamente-mcp

Usage

With Claude Desktop

Add this configuration to your Claude Desktop config file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

{ "mcpServers": { "traktamente": { "command": "npx", "args": ["traktamente-mcp"] } } }

Restart Claude Desktop, and you'll have access to three new tools:

  • get_traktamente - Query per diem rates with filters (country, year, country code)

  • get_all_countries - List all available countries

  • search_traktamente - Search for countries using regex patterns

With Streamable HTTP (Remote Server)

The server is available as a hosted service at https://traktamente.app/mcp, which you can connect to without installing anything locally.

Claude Code

The easiest way to add the server to Claude Code is using the CLI:

claude mcp add --transport http traktamente https://traktamente.app/mcp

Alternatively, you can manually add it to your Claude Code settings (~/.config/claude/config.json or via UI settings):

{ "mcpServers": { "traktamente": { "transport": "http", "url": "https://traktamente.app/mcp" } } }

Standalone Usage

# Start the server bun start # Development mode with hot reload bun dev # Test with MCP Inspector (interactive web UI) bun run inspector

With Docker

The server can run in a Docker container, useful for isolated environments or deployment:

# Build the Docker image docker build -t traktamente-mcp . # Run with stdio transport (interactive) docker run -i traktamente-mcp # Or use Docker Compose docker-compose up

Docker with Claude Desktop

To use the Docker container with Claude Desktop, configure it like this:

macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "traktamente": { "command": "docker", "args": ["run", "-i", "--rm", "traktamente-mcp"] } } }

Note: You need to build the Docker image first using docker build -t traktamente-mcp . in the project directory.

Available Tools

get_traktamente

Query traktamente rates with optional filters:

  • land (string, optional): Country name or regex pattern

  • Γ₯r (string, optional): Year

  • landskod (string, optional): Country code (e.g., "US", "GB")

  • limit (number, optional): Maximum number of results (default: 100)

  • offset (number, optional): Pagination offset (default: 0)

get_all_countries

List all countries with available per diem data. No parameters required.

search_traktamente

Search for countries using a regex pattern:

  • search (string, required): Search term or regex pattern

  • limit (number, optional): Maximum number of results (default: 50)

Development

Prerequisites

  • Bun runtime (v1.0.0 or later)

Setup

# Clone the repository git clone https://github.com/johnie/traktamente-mcp.git cd traktamente-mcp # Install dependencies bun install # Start development server bun dev

Testing with MCP Inspector

The MCP Inspector provides an interactive web UI for testing the server:

bun run inspector

This will open a browser where you can test all available tools and see real-time responses.

Data Source

This server fetches data from Skatteverket's official API:

  • API URL: https://skatteverket.entryscape.net/rowstore/dataset/70ccea31-b64c-4bf5-84c7-673f04f32505

  • Data: Per diem rates for international travel

  • Language: Swedish (country names and field names)

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'feat: add some amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

Development Guidelines

  • Use Bun for all commands (not Node.js or npm)

  • Follow the existing code style (enforced by Biome)

  • Add tests for new features

  • Update documentation as needed

License

MIT Β© Johnie Hjelm

Support

Acknowledgments

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/johnie/traktamente-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server