Real-time news events, clustered by AI from hundreds of sources, classified by topic and geography, ranked by importance.
Free. No API key. One command to install.
Coverage
12 topics — politics economy technology science health environment sports culture crime military education society
30 regions — 6 continents and 24 countries. Filter by europe, asia, united-states, germany, japan, ukraine, and more.
Hundreds of sources — Articles clustered into events in real-time, ranked by source count and impact score.
Integrations
Platform | Package | Install |
| MCP config | |
|
| |
|
| |
| MCP config | |
| MCP config | |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
— |
|
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"newsmcp": {
"command": "npx",
"args": ["-y", "@newsmcp/server"]
}
}
}Claude Code Plugin
/plugin marketplace add pranciskus/newsmcp
/plugin install newsmcpClaude Code MCP
claude mcp add newsmcp -- npx -y @newsmcp/serverCursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"newsmcp": {
"command": "npx",
"args": ["-y", "@newsmcp/server"]
}
}
}Windsurf
Add to MCP config:
{
"mcpServers": {
"newsmcp": {
"command": "npx",
"args": ["-y", "@newsmcp/server"]
}
}
}OpenAI Codex
codex mcp add newsmcp -- npx -y @newsmcp/serverOr add to ~/.codex/config.toml:
[mcp_servers.newsmcp]
command = "npx"
args = ["-y", "@newsmcp/server"]Gemini CLI
Add to ~/.gemini/settings.json (or project-local .gemini/settings.json):
{
"mcpServers": {
"newsmcp": {
"command": "npx",
"args": ["-y", "@newsmcp/server"]
}
}
}OpenCode
opencode mcp addOr add to ~/.config/opencode/opencode.json (or project-local .opencode/opencode.json):
{
"mcp": {
"newsmcp": {
"type": "local",
"enabled": true,
"command": ["npx", "-y", "@newsmcp/server"]
}
}
}Smithery
npx -y @smithery/cli install @newsmcp/server --client claudeOpenClaw Plugin
openclaw plugins install @newsmcp/openclawNo configuration needed — works out of the box. See @newsmcp/openclaw for options.
OpenClaw Skill
clawhub install newsmcp-skillLightweight alternative — a single SKILL.md that teaches the agent to call the REST API via curl. No dependencies. See newsmcp-skill on ClawHub.
MCP Tools
Four tools. That's the interface.
get_news
Top events happening right now. Filter by topic, region, time window.
Parameter | Type | Default | Description |
| string | — | Comma-separated topic slugs: |
| string | — | Comma-separated region slugs: |
| number | 24 | Time window in hours (1–168) |
| number | 1 | Page number |
| number | 20 | Results per page (max 50) |
| string |
| Sort field (see below) |
Sort options: -sources_count, -impact_score, -last_seen_at, -entries_count (prefix - for descending)
get_news_detail
Full details on a single event — all source articles, AI-generated context, impact analysis, entity tags.
Parameter | Type | Description |
| string | Event UUID from |
get_topics
Lists every topic category available for filtering. No parameters.
crime culture economy education environment health military politics science society sports technology
get_regions
Lists every geographic region — 6 continents and 24 countries — available for filtering. No parameters.
How agents use it
Prompt | What happens |
"What's happening in the world?" |
|
"Any tech news from Europe today?" |
|
"Tell me more about that earthquake" |
|
"What topics can I filter by?" |
|
"Show me news from Asia this week" |
|
REST API
Don't need MCP? Hit the endpoints directly. Same data, same filters.
Base URL: https://newsmcp.io/v1
Method | Endpoint | Description |
|
| List news events with optional filtering |
|
| Single event with full article list |
|
| All topic categories |
|
| All geographic regions |
Query parameters
All parameters are optional. Combine freely.
# Latest events
curl -s https://newsmcp.io/v1/news/ | jq
# Filter by topic
curl -s "https://newsmcp.io/v1/news/?topics=technology" | jq
# Filter by region
curl -s "https://newsmcp.io/v1/news/?geo=europe" | jq
# Last 12 hours, sorted by impact
curl -s "https://newsmcp.io/v1/news/?hours=12&order_by=-impact_score" | jq
# Combine everything
curl -s "https://newsmcp.io/v1/news/?topics=politics&geo=united+states&hours=48&per_page=5" | jqResponse format
{
"events": [
{
"id": "cc3428ab-2ada-41bb-86ab-833fd39ffd8d",
"summary": "Event description with AI-generated context...",
"topics": ["technology", "politics"],
"geo": ["united states"],
"entries_count": 86,
"sources_count": 45,
"first_seen_at": "2026-02-15T04:06:41.728Z",
"last_seen_at": "2026-03-03T05:00:30Z",
"impact_score": 8,
"entries": [
{
"title": "Article headline",
"url": "https://source.com/article",
"domain": "source.com",
"published_at": "2026-03-03T05:00:30Z"
}
]
}
],
"total": 142,
"page": 1,
"per_page": 20
}How it works
Collect — Hundreds of news sources are scraped continuously
Cluster — Articles about the same event are grouped using vector embeddings
Classify — Each event is tagged with topics and geographic entities
Rank — Events are scored by source count, impact, and recency
Serve — Clean JSON via REST API and MCP server
Events update in real-time as new articles appear. The clustering AI merges duplicate coverage automatically.
Configuration
Point to a different API backend:
{
"mcpServers": {
"newsmcp": {
"command": "npx",
"args": ["-y", "@newsmcp/server"],
"env": {
"NEWS_API_BASE_URL": "https://your-api.example.com/v1"
}
}
}
}Releases (GitHub Actions + OIDC)
Publishing is tag-driven via .github/workflows/release.yml:
Trigger: push tag
v*.*.*Publishes
@newsmcp/serverand@newsmcp/openclawto npm via Trusted Publishing (OIDC)Publishes MCP metadata with
mcp-publisher login github-oidcCreates a GitHub release with generated notes
One-time setup
npm package settings: For
@newsmcp/serverand@newsmcp/openclaw, add a Trusted Publisher pointing to:Owner:
pranciskusRepository:
newsmcpWorkflow file:
.github/workflows/release.ymlEnvironment: leave empty (unless you intentionally use one)
MCP Registry: Ensure the repo/package is authorized for GitHub OIDC publishing in MCP Registry.
Release flow
Bump versions in:
packages/mcp-server/package.jsonpackages/openclaw-plugin/package.jsonpackages/mcp-server/server.jsonpackage-lock.json
Commit and push to
mainCreate and push tag:
git tag -a vX.Y.Z -m "vX.Y.Z"
git push origin vX.Y.ZThe workflow does the publish and GitHub release automatically.
Repository structure
newsmcp/
├── .github/workflows/ # CI/CD workflows (release automation)
├── .claude-plugin/ # Marketplace manifest
├── packages/
│ ├── mcp-server/ # @newsmcp/server — MCP server (npm)
│ ├── claude-code-plugin/ # newsmcp — Claude Code plugin
│ ├── openclaw-plugin/ # @newsmcp/openclaw — OpenClaw plugin (npm)
│ └── skill/ # newsmcp-skill — OpenClaw skill (ClawHub)
├── publish.sh # Build, test, publish workflow
├── README.md
└── LICENSELicense
MIT