AgentStack
MCP verified MIT Self-run

Newsmcp

mcp-pranciskus-newsmcp · by pranciskus

MCP server for real-time world news — free, no API key required

No reviews yet
0 installs
17 views
0.0% view→install

Install

$ agentstack add mcp-pranciskus-newsmcp

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Newsmcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

NewsMCP — World news for AI agents

newsmcp.io  •  integrations  •  REST API


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 topicspolitics 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 | |----------|---------|---------| | [Claude Desktop](#claude-desktop) | @newsmcp/server | MCP config | | [Claude Code plugin](#claude-code-plugin) | newsmcp | /plugin install | | [Claude Code MCP](#claude-code-mcp) | @newsmcp/server | claude mcp add | | [Cursor](#cursor) | @newsmcp/server | MCP config | | [Windsurf](#windsurf) | @newsmcp/server | MCP config | | [OpenAI Codex](#openai-codex) | @newsmcp/server | codex mcp add | | [Gemini CLI](#gemini-cli) | @newsmcp/server | settings.json | | [OpenCode](#opencode) | @newsmcp/server | opencode mcp add | | [Smithery](#smithery) | @newsmcp/server | npx @smithery/cli | | [OpenClaw plugin](#openclaw-plugin) | @newsmcp/openclaw | openclaw plugins install | | [OpenClaw skill](#openclaw-skill) | newsmcp-skill | clawhub install | | [REST API](#rest-api) | — | curl https://newsmcp.io/v1/news/ |

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 newsmcp

Claude Code MCP

claude mcp add newsmcp -- npx -y @newsmcp/server

Cursor

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/server

Or 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 add

Or 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 claude

OpenClaw Plugin

openclaw plugins install @newsmcp/openclaw

No configuration needed — works out of the box. See [@newsmcp/openclaw](packages/openclaw-plugin/) for options.

OpenClaw Skill

clawhub install newsmcp-skill

Lightweight alternative — a single SKILL.md that teaches the agent to call the REST API via curl. No dependencies. See [newsmcp-skill](packages/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 | |-----------|------|---------|-------------| | topics | string | — | Comma-separated topic slugs: politics,technology | | geo | string | — | Comma-separated region slugs: europe,lithuania | | hours | number | 24 | Time window in hours (1–168) | | page | number | 1 | Page number | | per_page | number | 20 | Results per page (max 50) | | order_by | string | -sources_count | 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 | |-----------|------|-------------| | event_id | string | Event UUID from get_news results |

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?" | get_news with defaults — top 20 events by source coverage | | "Any tech news from Europe today?" | get_news with topics=technology, geo=europe, hours=24 | | "Tell me more about that earthquake" | get_news_detail with the event UUID | | "What topics can I filter by?" | get_topics — returns the full list | | "Show me news from Asia this week" | get_news with geo=asia, hours=168 |

REST API

Don't need MCP? Hit the endpoints directly. Same data, same filters.

Base URL: https://newsmcp.io/v1

| Method | Endpoint | Description | |--------|----------|-------------| | GET | /news/ | List news events with optional filtering | | GET | /news/{id}/ | Single event with full article list | | GET | /news/topics/ | All topic categories | | GET | /news/regions/ | 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" | jq

Response 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

  1. Collect — Hundreds of news sources are scraped continuously
  2. Cluster — Articles about the same event are grouped using vector embeddings
  3. Classify — Each event is tagged with topics and geographic entities
  4. Rank — Events are scored by source count, impact, and recency
  5. 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](.github/workflows/release.yml):

  • Trigger: push tag v*.*.*
  • Publishes @newsmcp/server and @newsmcp/openclaw to npm via Trusted Publishing (OIDC)
  • Publishes MCP metadata with mcp-publisher login github-oidc
  • Creates a GitHub release with generated notes

One-time setup

  1. npm package settings:

For @newsmcp/server and @newsmcp/openclaw, add a Trusted Publisher pointing to:

  • Owner: pranciskus
  • Repository: newsmcp
  • Workflow file: .github/workflows/release.yml
  • Environment: leave empty (unless you intentionally use one)
  1. MCP Registry:

Ensure the repo/package is authorized for GitHub OIDC publishing in MCP Registry.

Release flow

  1. Bump versions in:
  • packages/mcp-server/package.json
  • packages/openclaw-plugin/package.json
  • packages/mcp-server/server.json
  • package-lock.json
  1. Commit and push to main
  2. Create and push tag:
git tag -a vX.Y.Z -m "vX.Y.Z"
git push origin vX.Y.Z

The 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
└── LICENSE

License

MIT

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.