Skip to main content

dw-mcp 📰

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

Unofficial read-only MCP server for dw.com — Deutsche Welle news in 31 languages from DW's official sitemaps: latest headlines, keyword search over recent headlines, latest articles, full article text and topic pages. No key, no login. No key, no login.

Built by Mohammad Abbasi as part of the "Germany MCP factory". Not affiliated with dw.com.

For AI agents

Add to your MCP client config (stdio):

{
  "mcpServers": {
    "dw": {
      "command": "uvx",
      "args": ["dw-mcp==0.1.0"]
    }
  }
}

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

Tools

Tool Description
dw_headlines Latest DW headlines — language (e.g. "en", "de", "fa-ir"), limit 1..50
dw_search_news Keyword search over the latest DW headlines — query, language, limit 1..50
dw_latest_articles Latest DW articles by publication time — language, limit 1..50
dw_get_article Full text of one DW article — url (a dw.com article link)
dw_topics DW topic pages matching a word — query, language, limit 1..50
dw_health Reachability probe (ok / blocked / error) — one polite request

Notes

  • All data comes from DW's official sitemaps (free, no key, no login).
  • DW has no working RSS feeds any more — every /rss/ path returns 404 (verified 2026-11-10) — and its site search is gone, so headlines come from the news sitemaps and dw_search_news filters the latest ~50 headlines (not the full archive).
  • Persian is two editions: fa-ir (Iran) and fa-af (Afghanistan/Dari); plain fa does not exist.
  • Article bodies are extracted from DW's server-rendered pages (JSON-LD headline/date + cleaned <p> text); live blogs and video pages may return little or no body text.

Tests: 22/22 green (15 offline + 7 live, 2026-11-10).

Development

python3 -m venv .venv && .venv/bin/pip install "mcp<2" httpx pytest
.venv/bin/pip install -e .
.venv/bin/python -m pytest tests/ -q

License

MIT


Built by Mohammad Abbasi — Almanibama · mabbasi.ir

Metadata

Release files for dw-mcp 0.1.0

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

Source distribution (sdist)

Source distribution for dw-mcp 0.1.0
File Size Uploaded Provenance Actions
dw_mcp-0.1.0.tar.gz 35.1 kB With provenance Details for dw_mcp-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dw-mcp 0.1.0
File Interpreter ABI Platform Actions
dw_mcp-0.1.0-py3-none-any.whl Python 3 none any Details for dw_mcp-0.1.0-py3-none-any.whl

Total release size: 44.4 kB

Release files / dw_mcp-0.1.0.tar.gz

Download URL dw_mcp-0.1.0.tar.gz
Size 35.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b019b8bdba1d6c1ddc43dcee063b796d40eaaa339e15e136226fc0fddb492629
BLAKE2b-256 checksum
How to use checksums
f9082e1eeb1768f3dea552ceb8be735728c7109655edca05e5495a4ad528a9a5
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 / dw_mcp-0.1.0-py3-none-any.whl

Download URL dw_mcp-0.1.0-py3-none-any.whl
Size 9.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d88ff032ad9fcf568a24e0f6be16d9dd4bbe71801ab58820c12a13e5e9942509
BLAKE2b-256 checksum
How to use checksums
d4e3d7567c4c107a1919fae72a5a8565b1166f1cd187909bf96087c1a9a4f322
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 dw-mcp 0.1.0

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 dw_mcp-0.1.0.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.0 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