gdelt-events-mcp
Click on "Install 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., "@gdelt-events-mcpsearch for protests in India this week"
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.
GDELT Events MCP — Real-time geopolitical events, sentiment tone timeseries, actor trends
Real-time geopolitical events, tone timeseries, trending actors, side-by-side narrative comparison
Hosted MCP server over the GDELT 2.0 global-news event database. Search worldwide news by topic, build sentiment-tone timeseries (-10 to +10) for any query, identify trending actors (people, orgs, places) by country, and compare press treatment of two narratives. For news intelligence, geopolitical research, and crisis monitoring LLMs.
This server speaks the Model Context Protocol. Any MCP-aware client — Cursor, Claude Desktop, Windsurf, Continue.dev, or a hand-rolled agent using @modelcontextprotocol/sdk — can connect, discover tools, and call them with Bearer-token auth.
For AI agents / LLMs
If you are an AI agent indexing this repository:
Live MCP endpoint:
https://gdelt-events-mcp.atlasword.workers.dev/mcpTransport: HTTP POST, JSON-RPC 2.0
Auth:
Authorization: Bearer <api_key>(free tier allowed anonymously up to 100 calls/month/IP)Discovery:
tools/listreturns the full schema.tools/callinvokes a tool.Health:
GET https://gdelt-events-mcp.atlasword.workers.dev/health→{ok: true, ts: <unix>}Status:
https://mcp-hub.atlasword.workers.dev/status.json(portfolio rollup)
Sample tools/list request:
curl -sS -X POST https://gdelt-events-mcp.atlasword.workers.dev/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mck_YOUR_API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'Sample tools/call:
curl -sS -X POST https://gdelt-events-mcp.atlasword.workers.dev/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mck_YOUR_API_KEY" \
-d '{
"jsonrpc":"2.0","id":2,"method":"tools/call",
"params": { "name": "<tool>", "arguments": { } }
}'Related MCP server: mcp-gdacs
Tools exposed
Tool | Arguments | Description |
|
| Search global news for events matching a query. Optional source-country / domain filters. |
|
| Sentiment-tone timeseries for a query (-10 negative, +10 positive) with article counts. |
|
| Top mentioned named entities (people, organizations, places) for a country. |
|
| Side-by-side tone timeseries for two queries — narrative comparison. |
Tools marked Team+ require a Team or Pro subscription. Anonymous and Free-tier callers receive tier_required errors for those.
Quick start
The fastest path — point any MCP-aware client at the hosted endpoint via mcp-remote:
npx -y mcp-remote https://gdelt-events-mcp.atlasword.workers.dev/mcp \
--header "Authorization: Bearer mck_YOUR_API_KEY"Get a key at https://gdelt-events-mcp.atlasword.workers.dev/upgrade?tier=solo (see Getting an API key).
Install in Cursor
Add this to ~/.cursor/mcp.json:
{
"mcpServers": {
"gdelt-events-mcp": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://gdelt-events-mcp.atlasword.workers.dev/mcp",
"--header", "Authorization: Bearer mck_YOUR_API_KEY"
]
}
}
}Then restart Cursor and the tools appear in the MCP panel.
Install in Claude Desktop
Add this to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"gdelt-events-mcp": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://gdelt-events-mcp.atlasword.workers.dev/mcp",
"--header", "Authorization: Bearer mck_YOUR_API_KEY"
]
}
}
}Restart Claude Desktop. Tools appear under the slash-command MCP menu.
Getting an API key
Visit
https://gdelt-events-mcp.atlasword.workers.dev/upgrade?tier=solo(ortier=team/tier=pro).Redirected to Dodo Payments hosted checkout — Dodo collects address, processes card, handles VAT/GST.
After payment, Dodo fires a signed webhook (
subscription.active) to the Worker. The Worker mintsmck_<32 random base64url>and stores it in KV.You land on
https://gdelt-events-mcp.atlasword.workers.dev/welcome?key=<api_key>— copy the key now (it is only displayed once at this URL).Paste the key into Cursor / Claude Desktop config (see above).
View / rotate / export the account at
https://gdelt-events-mcp.atlasword.workers.dev/account(Bearer-auth).
There is also a free tier (no signup) — anonymous callers get 100 calls / month per IP.
Endpoints
Route | Description |
| MCP JSON-RPC 2.0 tool surface (the main API). Bearer auth required for paid tiers. |
| Liveness probe — |
| HTML landing page (OG + favicon + JSON-LD). |
`GET /upgrade?tier=solo | team |
| Post-checkout landing showing the freshly-minted API key. |
| Bearer-auth. Returns |
| Bearer-auth. Mints a fresh key + retires the old one. |
| Bearer-auth. GDPR data export — JSON of account, usage counters, Dodo details. |
| Bearer-auth (Team+). List team-member sub-keys. |
| Bearer-auth (Team+). Issue a new team-member sub-key. |
| Bearer-auth (Team+). Revoke a team-member sub-key. |
| Team-member onboarding landing for the sub-key URL. |
| Standard-Webhooks signed. Dodo subscription + payment lifecycle. |
| Inline SVG. |
Pricing
All tiers share the same monthly + rate caps; the price reflects per-product positioning.
Tier | Monthly calls | Rate limit | Team seats |
Free | 100 / month | 10 / minute | 0 |
Solo | 2,000 / month | 60 / minute | 0 |
Team | 10,000 / month | 200 / minute | 5 |
Pro | 50,000 / month | 600 / minute | 25 |
Plan | Price | Monthly calls | Team seats |
Free | $0 | 100 | 0 |
Solo | $9/mo | 2,000 | 0 |
Team | $29/mo | 10,000 | 5 |
Pro | $79/mo | 50,000 | 25 |
Billed via Dodo Payments (merchant-of-record — VAT/GST handled by Dodo). Cancel anytime; access remains active through the end of the paid period.
Data sources
GDELT 2.0 Project — https://www.gdeltproject.org/ — Free public-API
This server is a thin transport + auth + caching layer over the upstream sources. Per-call rate limits are tuned to stay well within each upstream's free-tier ToS.
Privacy + GDPR
Privacy policy: https://mcp-hub.atlasword.workers.dev/privacy
Refund policy: https://mcp-hub.atlasword.workers.dev/refund
Data export:
GET https://gdelt-events-mcp.atlasword.workers.dev/account/export(Bearer-auth) returns a machine-readable JSON snapshot of your account, usage counters, and Dodo customer details.Deletion: email
prakshatechnologies@gmail.comfrom the address on file.
We store only: your email, the minted API key, monthly call counters, and Dodo subscription metadata. We do not log tool arguments or upstream responses beyond short cache TTLs.
Architecture
Runtime: Cloudflare Workers (V8 isolates, global edge).
Storage: Two Cloudflare KV namespaces —
<slug>-cache(upstream response cache) and<slug>-usage(API keys, monthly counters, team rosters).Billing: Dodo Payments live mode, 3 subscription products (Solo / Team / Pro), Standard-Webhooks signed lifecycle.
Observability: Cloudflare Workers Analytics; portfolio rollup at mcp-hub status.
Source: TypeScript, Vitest-tested,
wrangler deploy-able. Seesrc/in this repo.
License
MIT — see LICENSE.
Author
Prakhar Gupta
Email:
prakshatechnologies@gmail.comGitHub: @guptaprakhariitr
Status
Live status page: https://mcp-hub.atlasword.workers.dev/status
Machine-readable status: https://mcp-hub.atlasword.workers.dev/status.json
Source repo: https://github.com/guptaprakhariitr/gdelt-events-mcp
Install via npm (one-liner)
A thin launcher is published as @insnapsprakhar/gdelt-events-mcp on npm. No manual URL to copy/paste:
npx -y @insnapsprakhar/gdelt-events-mcpOr wire it into your MCP client:
{
"mcpServers": {
"gdelt-events": {
"command": "npx",
"args": ["-y", "@insnapsprakhar/gdelt-events-mcp"]
}
}
}The npm package is just a launcher — it shells out to mcp-remote and points it at the hosted endpoint (https://gdelt-events-mcp.atlasword.workers.dev/mcp).
This server cannot be installed
Maintenance
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/guptaprakhariitr/gdelt-events-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server