marc-shade/world-intel-mcp
160-tool MCP server for real-time global intelligence from free public APIs: markets, liquidity, prediction markets, SEC filings, conflict, military, aircraft-cohort early warning, migration and border flows, cyber, climate, news and more. Dated observation history, 29 research prompts, cited briefs, geofences, SSE dashboard. MIT, no paid API keys.
TL;DR
World‑Intelligence MCP Server is a Python‑based data‑collection and analysis platform that gathers free public‑API data from dozens of domains (finance, geopolitics, climate, military, cyber, health, etc.). It stores the results in a SQLite cache and a Qdrant vector store, exposing them via the Model Context Protocol (MCP) so AI agents (e.g., Claude, Cursor) can query the world in natural language. A live dashboard, CLI, and PDF/HTML report generator let humans explore the same data.
What it does (in plain language)
| Feature | What you get |
|---|---|
| Broad‑scope data collection | 139 “tools” pull data from 30+ domains – stock markets, central‑bank rates, earthquake feeds, military flight trackers, cyber‑threat lists, refugee flows, etc. All sources are free public APIs, no paid subscriptions. |
| MCP‑compatible server | The program runs as a standard‑input/output service that follows the Model Context Protocol, letting LLM‑based agents ask questions like “show recent cyber threats targeting hospitals” and receive structured results. |
| Semantic search | Every fetched record is embedded with the BAAI bge‑small‑en‑v1.5 model and stored in Qdrant. Users can ask natural‑language queries and get similarity‑based matches across the whole historic dataset. |
| Live ops‑center dashboard | A Streamlit UI (leaflet map, layer toggles, real‑time SSE feeds) visualises earthquakes, military activity, conflict events, infrastructure status, and user‑defined geofences. |
| Command‑line interface | intel <domain> commands give quick one‑liners (e.g., intel markets, intel earthquakes --min-mag 5). |
| Automated reporting | intel report builds a multi‑section PDF or HTML brief that summarises selected domains, complete with citations. |
| Geofence alerts | Define circles/polygons/corridors; the system watches for new events entering or leaving those areas and produces a brief with escalation scores. |
| Cross‑domain analytics | Tools combine signals (e.g., instability index, risk scores, signal convergence) to produce higher‑level intelligence such as a global risk posture or country dossiers. |
Who might use it
| Audience | Why it matters |
|---|---|
| AI agents / autonomous analysts | Provides a single, MCP‑compatible endpoint for agents to retrieve up‑to‑date world facts without building dozens of API wrappers. |
| Strategic analysts / risk teams | Gives a ready‑made, citation‑backed daily brief and the ability to run custom semantic searches across many domains. |
| Developers building bots | The CLI and Python library let you embed any of the 139 tools in your own workflow or product. |
| Researchers | All raw data is cached locally (SQLite) and vectorised, making it easy to experiment with multi‑modal analysis. |
How it works (high‑level architecture)
- Collector daemon – runs every 5 minutes, asynchronously fetches every source module (
sources/*.py) usinghttpx. Each source has its own circuit‑breaker that pauses after 3 consecutive failures. | - Cache – SQLite (WAL mode) stores the latest JSON payloads with a TTL; stale data can still be returned if fresh data is unavailable. |
- Vector store – New records are embedded with FastEmbed (384‑dim BGE model) and pushed to Qdrant in a background queue, enabling semantic similarity queries. |
- MCP server –
server.pyreads commands from stdin/stdout, maps them to the appropriate tool, and returns JSON results that conform to the Model Context Protocol. | - Dashboard / CLI – Thin wrappers (
dashboard.py,cli.py) call the same library functions, presenting data via Streamlit or Click. |
Quick start checklist
# 1. Clone & install (editable mode)
git clone https://github.com/marc-shade/world-intel-mcp.git
cd world-intel-mcp
pip install -e . # core
pip install -e ".[dashboard]" # optional UI
pip install -e ".[vector]" # Qdrant + embeddings
# 2. Run the MCP server (or the collector daemon in another terminal)
world-intel-mcp # stdio server for LLMs
# optional: start background collector
collector.py &
# 3. Try a CLI command
intel markets # shows major index quotes
# 4. Open the dashboard (default port 8501)
intel-dashboard
Limitations & things to watch
- Reliance on free APIs – rate limits and occasional outages are handled by circuit‑breakers, but data freshness can vary. |
- Local resource needs – Qdrant + SQLite can grow large (many millions of records) if you run the collector continuously. |
- Semantic quality – The BGE‑small embedding model is fast but not state‑of‑the‑art for every domain; search relevance may need tuning. |
- No paid‑data sources – If you need proprietary market depth or classified intel, this platform won’t provide it.
Bottom line
World‑Intelligence MCP is a real, open‑source intelligence aggregation engine aimed at giving LLM‑based agents (and human analysts) a single, searchable, citation‑rich view of the world using only publicly available data. It bundles data collection, caching, vector search, a dashboard, and reporting into a cohesive Python package.
Related
- Project
- Project
- Project
- Project
- Project