Skip to main content

mediathek-mcp 📺

mcp-name: io.github.mohammad-abbasi-sh/mediathek-mcp

Unofficial read-only MCP server for the German Mediathek via the free MediathekViewWeb API — search the programmes of ARD, ZDF, 3sat, ARTE, Phoenix, tagesschau24, KiKA and the regional channels. No key, no login.

Built by Mohammad Abbasi as part of the "Germany MCP factory" (Sepehr-style pipeline). Not affiliated with MediathekView, ARD or ZDF.

For AI agents

Add to your MCP client config (stdio):

{
  "mcpServers": {
    "mediathek": {
      "command": "uvx",
      "args": ["mediathek-mcp==0.1.1"]
    }
  }
}

Or run locally: python -m mediathek_mcp.server (needs mcp<2, httpx).

Tools

Tool Description
mediathek_search_programmes Search programmes by title, topic or description — query (e.g. "Tagesschau"), optional channel (e.g. "ZDF"), limit 1..50
mediathek_latest_broadcasts Newest programmes across all channels, newest first — limit 1..50
mediathek_by_channel Newest programmes of one channel — channel (e.g. "ZDF", "ARD", "3sat", "ARTE.DE", "PHOENIX"), limit 1..50
mediathek_by_topic All episodes of one show/series — topic (e.g. "heute journal"), limit 1..50
mediathek_programme_detail Full detail of one programme: all video URLs (low/standard/HD), subtitle URL, website link — title (exact), optional channel
mediathek_list_channels Channels in the film list (curated list — the API has no channel-list endpoint)

Example output (mediathek_search_programmes / "Tagesschau"):

{"query": "Tagesschau", "channel": null, "total_results": 8823, "count": 3,
 "film_list_updated": "2026-11-09T10:19:00+00:00", "programmes": [
  {"id": "+sU90jI0m7KCrRqsj5aYEh9Owg7tr+3K9IRl39v+A8o=",
   "channel": "tagesschau24", "topic": "tagesschau in 100 Sekunden",
   "title": "tagesschau in 100 Sekunden",
   "description": "tagesschau in 100 Sekunden",
   "broadcast": "2026-11-09T04:43:00+00:00", "duration_seconds": 170,
   "duration": "2:50",
   "video_url": "https://tagesschau-progressive.ard-mcdn.de/video/2026/1109/TV-20261109-0445-5500.webxl.h264.mp4",
   "video_url_hd": "https://tagesschau-progressive.ard-mcdn.de/video/2026/1109/TV-20261109-0445-5500.webxxl.h264.mp4",
   "video_url_low": "https://tagesschau-progressive.ard-mcdn.de/video/2026/1109/TV-20261109-0257-3000.webm.h264.mp4",
   "subtitle_url": "", "website_url": "https://www.ardmediathek.de/video/...",
   "size_bytes": 40894464},
  ...]}

Notes:

  • The film list holds ~700,000 programmes and is updated several times a day; results are newest first.
  • "Latest broadcasts" searches the most common letter across title/topic/description — the API returns nothing for an empty query and has no wildcard, so this is effectively the newest programmes.
  • Channel filtering in mediathek_search_programmes is applied client-side over the newest 50 text matches (the API has no AND query); mediathek_by_channel queries the channel directly.
  • total_results is capped at 10,000 by the API for very broad queries.
  • Video URLs are direct MP4 links (low / standard / HD); subtitle_url is empty when no subtitles exist.
  • Data: MediathekViewWeb public API — no key, no login, read-only.

Development

python3 -m venv .venv && .venv/bin/pip install "mcp<2" httpx pytest
.venv/bin/python -m pytest tests/ -q
  • tests/test_domain.py — offline, parses real captured API fixtures (19 tests)
  • tests/test_live.py — cautious live requests against mediathekviewweb.de (6 tests)

Tests: 25/25 green (19 offline + 6 live, 2026-11-09).

License

MIT


Built by Mohammad Abbasi — Almanibama · mabbasi.ir

Metadata

Release files for mediathek-mcp 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mediathek-mcp 0.1.1
File Size Uploaded Provenance Actions
mediathek_mcp-0.1.1.tar.gz 17.3 kB With provenance Details for mediathek_mcp-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mediathek-mcp 0.1.1
File Interpreter ABI Platform Actions
mediathek_mcp-0.1.1-py3-none-any.whl Python 3 none any Details for mediathek_mcp-0.1.1-py3-none-any.whl

Total release size: 28.2 kB

Release files / mediathek_mcp-0.1.1.tar.gz

Download URL mediathek_mcp-0.1.1.tar.gz
Size 17.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4c6ba255ec188808656a3e8f201bd55971adbdcce15ad757545c0b7bfbc51e01
BLAKE2b-256 checksum
How to use checksums
23c4af5303aaf9aa2135b55a273af9b9a1c3b9da56a3ac2fb864fcbae6e76417
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 10, 2026.

Transparency log

Release files / mediathek_mcp-0.1.1-py3-none-any.whl

Download URL mediathek_mcp-0.1.1-py3-none-any.whl
Size 10.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
63452f6b28fe689cdd51c9f941ae37c57e7a18d395c1ced6f47d1477193033e3
BLAKE2b-256 checksum
How to use checksums
c748612b2484a9e84c552703d61f04b3672b9bafb898cb3aad3e9e2926b2d217
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 10, 2026.

Transparency log

Security for mediathek-mcp 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for mediathek_mcp-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 10, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page