Tako MCP Server: Real-Time Financial, Sports, Weather Visualizations
Search Tako's MCP server using natural language to visualize real-time financial, sports, weather and public data with interactive charts.
npx -y @TakoData/tako-mcpOverview
Tako MCP Server is a lightweight server that exposes real-time data search and visualization capabilities via the Model Context Protocol (MCP). It lets developers and language models issue natural‑language searches against a growing set of live data connectors—financial markets, sports feeds, weather, and public datasets—and get back interactive chart visualizations and structured results. The server maps natural language queries into data retrieval and visualization tasks, returning embeddable charts or JSON results suitable for downstream automation.
This is useful when you want to integrate conversational or programmatic interfaces with live data visualizations—for example, allowing a chatbot to generate a market chart on request, or letting an analytics pipeline produce a quick comparative weather graph. It provides both a web UI for ad‑hoc exploration and an API suited to MCP-capable LLMs and client code.
Features
- Natural‑language search against real‑time financial, sports, weather, and public datasets
- Automatic generation of interactive charts (time series, comparisons, overlays)
- REST API and MCP-compatible endpoints for LLM/tool integrations
- Web UI for manual exploration and embedded visualizations
- Extensible connector architecture for adding new data sources
- Docker friendly for local development and production deployment
- Configurable API keys and data provider credentials via environment variables
Installation / Configuration
Clone the repository and run locally, or use Docker for a quick start.
Clone and run locally (Node.js-based workflow):
# Install dependencies (npm/yarn/pnpm)
# Start in development mode
# Or build + run
Start with Docker Compose:
# Use the provided docker-compose.yml (if present)
Key environment variables (example):
| Variable | Purpose | Example |
|---|---|---|
| PORT | Server port | 8080 |
| OPENAI_API_KEY | Optional: for LLM-driven parsing/assist | sk-… |
| FINANCE_API_KEY | API key for financial/market data provider | fx-… |
| WEATHER_API_KEY | API key for weather provider | wthr-… |
| DATABASE_URL | Optional: persistence / metadata store | postgres://user:pass@host/db |
Example .env:
PORT=8080
OPENAI_API_KEY=sk-...
FINANCE_API_KEY=your_finance_key
WEATHER_API_KEY=your_weather_key
DATABASE_URL=
API server will read these at startup and enable connectors based on available credentials.
Available Tools / Resources
- REST endpoints:
- GET /api/health — health check
- POST /api/search — natural language search -> structured data + visualization hints
- POST /api/visualize — request generation of a specific chart (data + config)
- GET /api/charts/:id — retrieve previously generated chart (embeddable)
- Web UI: a browser UI for exploring connectors, composing queries, and previewing charts
- Embedding/SDK snippets: small client examples for Node.js and curl to integrate with MCP workflows
- Connector templates: examples for finance, sports, weather, public datasets to guide custom integrations
Example curl usage:
Node example:
;
;
;
payload; // chart URL, data, or embed snippet
Use Cases
- Financial analysis: “Show the last 90 days of AAPL and MSFT closing prices with 50/200-day moving averages.” The server fetches market data, computes overlays, and returns an embeddable interactive chart.
- Sports dashboards: “Plot the point differential for the Lakers over the current season and list top scorers in the last 5 games.” Combines sports feed data into time series and tabular summaries.
- Weather comparisons: “Compare the 7-day forecasted high temps for San Francisco, Seattle, and Denver side-by-side.” Produces a multi-line time series and percent‑difference annotations.
- Public data exploration: “Visualize monthly unemployment rate vs consumer sentiment in 2023 and download the CSV.” Pulls from public APIs, renders charts, and exposes raw data for export.
- LLM-driven analytics: Attach an MCP-capable model that can call the server’s /api/search to generate charts in response to conversational prompts, enabling assistants to answer with visual evidence.
Getting started tips
- Provide API keys for the connectors you need (finance, weather, sports) in the environment so the server can enable them.
- Use the web UI to prototype natural language prompts and inspect the generated visualization configurations before wiring them into automation.
- Extend connectors by implementing the connector template (data fetch → normalization → schema) so the server can surface new domain datasets without changing the core code.
For full source, examples and contribution guidelines, see the project repository on GitHub: https://github.com/TakoData/tako-mcp.