---
title: ToolRouter — Tool Detail
description: Detailed documentation for a ToolRouter tool including skills, parameters, and examples.
url: https://toolrouter.com/tools/geopolitics
---
# Geopolitics

Monitor global geopolitical events using GDELT — the world's largest open event database. Real-time defense news in 100+ languages, media coverage trends, sentiment analysis, and article context.

- **Version:** 0.01
- **Categories:** data, analytics
- **Workflow:** search_events → trend_analysis → sentiment_analysis → get_context

## Skills (4)

### Search Events (`search_events`)

Search global news for geopolitical events. Monitors media in 100+ languages in real-time. Supports boolean queries, source country filtering, and time ranges. Powered by GDELT.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Search terms (e.g. "Russia Ukraine", "defense spending", "NATO expansion"). Supports boolean: "term1 OR term2", sourcecountry:US, sourcelang:english |
| `timespan` | string | No | Time range: "24hours", "7days", "1month", "3months", "6months", "1year" [default: "7days"] |
| `source_country` | string | No | Filter by source country FIPS code (e.g. "US", "UK", "CH" for China, "RS" for Russia) |
| `max_results` | number | No | Maximum articles to return (default: 20, max: 250) [default: 20] |

**Returns:** Articles with titles, URLs, sources, dates, languages, and source countries

**Examples:**

*Russia-Ukraine conflict news:*

```json
{
  "query": "Russia Ukraine military"
}
```

*China Taiwan news from US sources:*

```json
{
  "query": "China Taiwan",
  "source_country": "US",
  "timespan": "1month"
}
```

*NATO defense spending:*

```json
{
  "query": "NATO defense spending",
  "timespan": "3months"
}
```

### Trend Analysis (`trend_analysis`)

Track media coverage volume of a geopolitical topic over time. See if coverage is increasing, decreasing, or stable. Identifies peak coverage dates. Useful for monitoring escalation and de-escalation.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Topic to track (same query syntax as search_events) |
| `timespan` | string | No | Time range for the trend (e.g. "3months", "6months", "1year") [default: "6months"] |

**Returns:** Coverage volume timeline with trend direction (increasing/decreasing/stable) and peak date

**Examples:**

*Ukraine conflict coverage trend:*

```json
{
  "query": "Ukraine war"
}
```

*AI military applications trend:*

```json
{
  "query": "artificial intelligence military",
  "timespan": "1year"
}
```

### Sentiment Analysis (`sentiment_analysis`)

Analyze global media sentiment around a geopolitical topic over time. Returns tone score (-10 very negative to +10 very positive), sentiment label, trend direction, and extremes.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Topic to analyze sentiment for |
| `timespan` | string | No | Time range (e.g. "1month", "3months", "6months") [default: "3months"] |

**Returns:** Sentiment timeline with average tone, direction (improving/worsening/stable), and extremes

**Examples:**

*Sentiment around China military:*

```json
{
  "query": "China military"
}
```

*NATO sentiment over 6 months:*

```json
{
  "query": "NATO",
  "timespan": "6months"
}
```

### Get Context (`get_context`)

Get article snippets and context passages about a geopolitical topic. Returns actual text excerpts from articles — useful for getting detailed context without reading full articles.

**Parameters:**

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `query` | string | Yes | Topic to get context for |
| `max_results` | number | No | Maximum articles to return (default: 10, max: 75) [default: 10] |

**Returns:** Articles with context text snippets, titles, URLs, sources, and dates

**Examples:**

*Context on Iran nuclear program:*

```json
{
  "query": "Iran nuclear weapons"
}
```

*Context on US defense budget:*

```json
{
  "query": "US defense budget 2026",
  "max_results": 5
}
```

## Quick Start

```bash
# Via CLI
TOOLROUTER_API_KEY=tr_live_xxx npx -y toolrouter-mcp call geopolitics search_events --query Russia Ukraine military

# Via REST API
curl -H "Authorization: Bearer tr_live_xxx" \
     -d '{"tool":"geopolitics","skill":"search_events","input":{"query":"Russia Ukraine military"}}' \
     https://api.toolrouter.com/v1/tools/call
```

## Frequently Asked Questions

### How do I search a conflict or country issue?

`search_events` finds GDELT coverage across 100+ languages and supports boolean queries, source-country filters, and time ranges.

### Can I tell whether coverage is rising or cooling off?

`trend_analysis` shows whether coverage volume is increasing, decreasing, or stable, and points to peak dates.

### Can I measure sentiment around a topic?

`sentiment_analysis` returns a tone score from -10 to +10, plus a label and trend direction.

### Can I pull article snippets without reading full stories?

`get_context` returns snippets and quoted passages for a topic so you can inspect the wording quickly.

---

## Get Started with ToolRouter

**Already connected?** Call any tool with `use_tool({ tool, skill, input })`. Browse tools with `discover` or visit https://toolrouter.com/llms-full.txt

**New to ToolRouter?** Connect with one command (no API key needed — auto-provisions on first use):

```bash
# MCP (Claude Code, Codex CLI)
claude mcp add toolrouter -- npx -y toolrouter-mcp

# MCP (Cursor, Windsurf, Cline, VS Code, Gemini CLI, Claude Desktop)
{"mcpServers":{"toolrouter":{"command":"npx","args":["-y","toolrouter-mcp"]}}}

# Claude Chat / Claude Cowork / Claude Mobile — add as a connector:
# Settings → Connectors → Add custom connector → URL: https://api.toolrouter.com/mcp

# ChatGPT — add as an app:
# Settings → Apps → Advanced settings → enable Developer mode → Create app → MCP Server URL: https://api.toolrouter.com/mcp

# CLI (works instantly, no restart needed)
npx -y toolrouter-mcp tools                    # browse all tools
npx -y toolrouter-mcp search "seo"             # search by keyword
npx -y toolrouter-mcp call seo analyze_page --url https://example.com
```

Free tools work immediately. For paid tools, visit https://toolrouter.com/claim to add credits.

All platforms: https://toolrouter.com/connect | Full catalog: https://toolrouter.com/llms-full.txt | Docs: https://toolrouter.com/docs