aria-mcp-tvguide-dk
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@aria-mcp-tvguide-dk Hvad sender DR1 i aften?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
aria-mcp-tvguide-dk
A Model Context Protocol (MCP) server that exposes the Danish TV guide (EPG) to AI assistants. Built for ARIA and shareable with the community.
Fully keyless — no API key required.
What it does
Lets your AI assistant answer questions like:
"Hvad går der i fjernsynet i aften?"
"Hvad sender DR1 kl. 20?"
"Hvornår sender TV 2 Klovn?"
"Hvor kan jeg se VM-kampen i aften?"
Related MCP server: MCP Remote Control
Data Source
EPG data is provided by Allente Denmark via their internal EPG API (https://cs-vcb.allente.dk/epg/events). The data is best-effort for personal/hobby use. Check Allente's Terms of Service before any redistribution or commercial use.
Covers all major Danish channels: DR1, DR2, DR Ramasjang, TV 2, TV 2 News, TV 2 Charlie, TV 2 Sport, TV3, TV3+, Kanal 4, Kanal 5, 6'eren, CANAL9, dk4, Eurosport, Discovery, National Geographic, BBC Nordic, and more.
Install & Run
npx aria-mcp-tvguide-dkOr install globally:
npm install -g aria-mcp-tvguide-dk
aria-mcp-tvguide-dkRequires Node.js 20 or later.
Tools
list_channels
List available channels with id and name. Supports an optional name filter.
Parameters:
Name | Type | Required | Description |
| string | No | Case-insensitive substring to filter channel names (e.g. "dr", "tv 2", "sport") |
Returns: { count, channels[{ id, name }] }
whats_on
Return the programme airing on a channel now (or at a specified time).
Parameters:
Name | Type | Required | Description |
| string | Yes | Channel name (e.g. "DR1", "TV 2", "Kanal 5") or numeric id |
| string | No | ISO 8601 datetime or "HH:MM" (today Copenhagen). Omit for current time. |
Returns: A single Programme object:
{
"channelId": "452",
"channelName": "DR1",
"title": "Fodbold: VM",
"start": "2026-06-12T21:00:00+02:00",
"stop": "2026-06-12T22:05:00+02:00",
"durationMinutes": 65,
"description": "Der er store VM-drømme i Canada...",
"categories": ["sport"],
"live": false
}tonight
Return prime-time (19:00–23:00 Copenhagen) TV listings for today, grouped by channel.
Parameters:
Name | Type | Required | Description |
| string[] | No | Channel names or ids to include. Defaults to the default channel set. |
Returns: { date, primetime, channels: { [channelName]: Programme[] } }
search_program
Find programmes by title across channels for a date.
Parameters:
Name | Type | Required | Description |
| string | Yes | Substring to search in programme titles (case-insensitive) |
| string[] | No | Channels to search (defaults to default channel set) |
| string | No | YYYY-MM-DD date to search (defaults to today Copenhagen) |
Returns: { query, date, matchCount, programmes: Programme[] }
Environment Variables
Variable | Description |
| Comma-separated channel names or ids for the default set used by |
When unset, the default is: DR1, DR2, TV 2, TV 2 News, TV3, TV3+, Kanal 4, Kanal 5, TV 2 Charlie, 6'eren.
ARIA MCP Config
Add to your ARIA credentials / MCP config:
{
"command": "npx",
"args": ["-y", "aria-mcp-tvguide-dk"],
"env": {}
}With a custom default channel set:
{
"command": "npx",
"args": ["-y", "aria-mcp-tvguide-dk"],
"env": {
"DEFAULT_CHANNELS": "DR1,TV 2,TV3,Kanal 5"
}
}Development
git clone https://github.com/kimhjort/aria-mcp-tvguide-dk
cd aria-mcp-tvguide-dk
npm install
npm run build
npm testAttribution & Terms
EPG data is sourced from Allente Denmark (allente.dk). This server is a personal/hobby project. The Allente EPG API is not a documented public API — use it in good faith and at your own risk. Check Allente's terms before any redistribution or commercial use.
License
MIT — see LICENSE.
Available Tools
4 toolslist_channelsA
List available Danish TV channels from the EPG with their id and canonical name. Supports an optional case-insensitive name filter. Use this to discover channel names before calling whats_on, tonight, or search_program.
Inputs: filter.
search_programA
Search for Danish TV programmes by title across one or more channels for a given date. The search is case-insensitive and matches any substring of the programme title. Use this to find 'Klovn', 'Nyhederne', a sports event, or any specific show.
Inputs: title (required), channels, date.
tonightA
Return prime-time (19:00–23:00 Copenhagen) TV listings for today for the default channel set (DR1, DR2, TV 2, TV 2 News, TV3, TV3+, Kanal 4, Kanal 5, TV 2 Charlie, 6'eren — or as configured by DEFAULT_CHANNELS env). Accepts an optional channel list to override the default. Use this when asked 'hvad går der i fjernsynet i aften?' or 'hvad er på programmet i aften?'.
Inputs: channels.
whats_onA
Return the programme currently airing on a Danish TV channel (or at a specified time). Includes title, start/stop times in Europe/Copenhagen, duration, description, and categories. Use this when asked 'hvad går der på DR1 nu?' or 'hvad sender TV 2 kl. 20:30?'. Channel can be a name (e.g. 'DR1', 'TV 2', 'Kanal 5') or a numeric id.
Inputs: channel (required), when.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: list_channels discovers channels, search_program searches by title, tonight returns prime-time listings, and whats_on gets current or scheduled program for a channel. No overlap.
Most tools follow a verb_noun pattern (list_channels, search_program) but 'tonight' is a single word and 'whats_on' uses a contraction. Still readable and predictable.
With 4 tools, the set covers essential TV guide operations without bloat. Each tool serves a necessary function, and the count feels well-scoped for the domain.
The set covers channel discovery, search, prime-time, and current viewing. A minor gap is the lack of a full daily schedule beyond prime-time, but common queries are addressed.
Related MCP Connectors
Unlock a world of television with the TV Maze MCP server. Effortlessly search for shows by name or
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
TVMaze MCP — TV show metadata, episodes, schedules (no auth)
Hosted MCP server for live public-data APIs and Skills for AI agents.
Related MCP Servers
- AlicenseAqualityDmaintenanceA MCP server for The Movie Database API that enables AI assistants to search and retrieve movie, TV show, and person information.2313 npm4MIT
- FlicenseAqualityDmaintenanceAn MCP server that enables AI assistants to control TVs on a local network through natural language commands. It currently supports Roku devices, allowing users to launch apps, manage playback, and navigate menus.51-
- AlicenseNot gradedqualityDmaintenanceA comprehensive MCP server with 36 tools for tracking TV shows and movies, managing watchlists, and syncing ratings with Trakt.tv. It enables users to search extensive databases, check into current viewings, and receive personalized recommendations through natural language commands.29 npm5MIT
- FlicenseAqualityDmaintenanceAn MCP server that wraps The Movie Database (TMDB) API, enabling search for movies and TV shows, retrieval of movie details, recommendations, similar movies, trending content, streaming providers, and movie discovery.8-