dw-mcp
Provides read-only access to Deutsche Welle (dw.com) news in 31 languages via DW's official sitemaps, enabling tools for latest headlines, keyword search over recent headlines, latest articles by publication time, full article text retrieval, and topic pages.
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., "@dw-mcp show me the latest DW headlines in German"
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.
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).
Related MCP server: trthaber-mcp
Tools
Tool | Description |
| Latest DW headlines β |
| Keyword search over the latest DW headlines β |
| Latest DW articles by publication time β |
| Full text of one DW article β |
| DW topic pages matching a word β |
| 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 anddw_search_newsfilters the latest ~50 headlines (not the full archive).Persian is two editions:
fa-ir(Iran) andfa-af(Afghanistan/Dari); plainfadoes 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/ -qLicense
MIT
Built by Mohammad Abbasi β Almanibama Β· mabbasi.ir
Available Tools
6 toolsdw_get_articleA
Full text of one DW article. url: a dw.com article link, e.g. https://www.dw.com/en/.../a-12345678 (live blogs and video pages may return little or no body text).
Inputs: url (required). Returns: result
dw_headlinesB
Latest DW headlines in one language. language: e.g. "en", "de", "fa-ir" (Iran Persian), "tr". limit: 1..50 (default 10).
Inputs: limit, language. Returns: result
dw_healthA
Check whether dw.com is reachable right now.
Returns status ok (HTTP 200), blocked (HTTP 403/429 β bot wall or rate limit) or error, plus the HTTP status and the probed URL. One polite request; it does not fetch any listings.
Inputs: no named parameters. Returns: result
dw_latest_articlesA
Latest DW articles in one language, newest first. language: e.g. "en", "de", "fa-ir". limit: 1..50 (default 10).
Inputs: limit, language. Returns: result
dw_search_newsA
Keyword search over the LATEST DW headlines (the news sitemap holds roughly the last 50 β this is not a full-archive search). query: keyword or phrase. language: e.g. "en", "de", "fa-ir". limit: 1..50 (default 10).
Inputs: query (required), limit, language. Returns: result
dw_topicsA
DW topic pages matching a word (e.g. "bundesliga", "klima"). With no query, returns the most recently updated topics. language: e.g. "en", "de". limit: 1..50 (default 10).
Inputs: limit, query, language. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 6 tools
dw_get_article, dw_topics, and dw_health are clearly distinct, but dw_headlines, dw_latest_articles, and dw_search_news all return recent items in a language and differ mainly in source (news sitemap vs article feed vs keyword filter). The descriptions do draw those lines explicitly (search is limited to the ~50 sitemap items), so confusion is limited but not zero.
All names share a dw_ prefix and snake_case with a predictable noun/verb structure (dw_get_article, dw_search_news, dw_latest_articles). dw_headlines, dw_topics, and dw_health omit the verb, which is a minor deviation rather than an inconsistency.
Six tools is well-scoped for a news-reading server: listing, searching, fetching full text, browsing topics, and a connectivity probe. Each tool has a clear, non-redundant job with no filler.
The core read path (list headlines/articles β fetch full article) is covered, but there are notable dead ends: dw_topics returns topic pages with no tool to list articles within a topic, and search is limited to the ~50-item sitemap with no date-range or archive option. A listing-by-topic or date-filtered search would round out the surface.
Maintenance
Related MCP Connectors
Today's headlines and news search from 17 public sources in 7 languages. Free, no key.
Get access to real-time and historical news data including top headlines from global sources
Live news search: what was published in the last hours and days on any topic, in 45 languages, with duplicate coverage grouped and every story checked for relevance. One read-only tool, search_news; sign in with OAuth (a free account with 50 search credits is created when you connect).
Worldwide news search by keyword and date, Hacker News, and any RSS or Atom feed as JSON
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables access to real-time news articles through search, topic headlines, full story coverage, and geo-based local news across multiple countries and languages using the Real Time News Data API.7MIT
- AlicenseAqualityBmaintenanceEnables read-only retrieval of TRT Haber headlines by category, breaking news, full article text, keyword search over current listings, and the category list.6MIT
- AlicenseAqualityBmaintenanceEnables read-only access to German news headlines, section and regional feeds, latest videos, keyword search, and full article text via official RSS feeds. No API key or login is required.7MIT
- AlicenseAqualityBmaintenanceEnables read-only access to n-tv.de news from official RSS feeds, including headlines by section, market news, videos, keyword search, and full article text.6MIT