Horizon MCP

An MCP server for a personal news pipeline: fetch, score, filter and summarize news through tools an agent can call

  • 14,037 ★ on the repository
  • Last commit
  • MIT
MCP server

Extended access

Why this level

  • Reaches external LLM providers and news sources over the network
  • Requires API keys in .env, some of the services are paid
All reasons and checks

thysrael/horizon

Install

Manual install

git clone https://github.com/Thysrael/Horizon.git
cd Horizon
uv sync

Clone the repository and install dependencies via uv

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Reaches external LLM providers and news sources over the network
  • Requires API keys in .env, some of the services are paid

This is third-party code. Review the repository files before installing.

What it does

Horizon is a personal news pipeline: it fetches items from sources, scores them, filters, enriches and generates a summary. The built-in MCP server (the horizon-mcp command) does not duplicate this logic, it wraps the same modules as separate tools: hz_fetch_items, hz_score_items, hz_filter_items, hz_enrich_items, hz_generate_summary, hz_run_pipeline for the whole pipeline at once, plus hz_list_runs, hz_get_run_meta, hz_get_run_stage, hz_get_run_summary, hz_get_metrics and hz_validate_config. The server runs over stdio, and each run's output is saved under data/mcp-runs.

Who it is for. For people who want an agent to assemble a personal news digest instead of manually running and configuring the whole Horizon pipeline.

Good fit when

  • You want an agent to fetch and summarize fresh news per your Horizon configuration
  • You need to inspect or resume a specific pipeline stage instead of rerunning everything
  • You want to validate the configuration and environment variables before a run

Not a fit when

  • You need a ready hosted news reader without any setup
  • You cannot obtain a key for at least one LLM provider

Example request

Fetch a fresh batch of AI news and put together a short summary

MCP

Transport
stdio
Authentication
not required

Environment variables

ANTHROPIC_API_KEY secret
Anthropic key for the pipeline's LLM stages, at least one provider key from the list is required
OPENAI_API_KEY secret
OpenAI key as an alternative LLM provider
APIFY_TOKEN secret
Apify token, required only for Twitter scraping
GITHUB_TOKEN secret
GitHub token to raise the request rate limit for sources

Limitations

Requires Python and uv for setup (uv sync); the MCP server itself starts with uv run horizon-mcp. The pipeline needs at least one LLM provider key from .env.example (Anthropic, OpenAI, Azure OpenAI, Google, MiniMax, DashScope, Doubao or DeepSeek). Twitter scraping separately needs an Apify token, and a GitHub token is optional and only raises the request rate limit.

How to disable. Remove the horizon MCP server entry from the agent's configuration and stop the uv run horizon-mcp process.

FAQ

What languages does the summary come in?

Per the project description, daily briefings are generated in English and Chinese.

Do you need a key for every news source?

No, only one LLM provider key from .env.example is mandatory. The Apify token is needed only for Twitter scraping, and the GitHub token is optional.

Discussion

No questions or reviews yet.

A Node.js MCP server through which an agent controls Home Assistant devices and edits its automations

MCP serverBroad access574Repository stars

An MCP server for driving Windows: the agent opens apps, clicks and types, reads window and UI state, and works with files and PowerShell

MCP serverBroad access11.6KRepository stars

An MCP server for Home Assistant: the agent reads smart-home state and controls devices through your instance

MCP serverBroad access7.7KRepository stars

README in short

The README describes Horizon as a personal news radar with its own fetch, score, filter, enrich and summarize pipeline that publishes a daily digest. The separate MCP layer documentation (src/mcp/README.md) explains that the server reuses the main codebase's business logic as a set of tools and read-only resources, runs over stdio, and saves each run's artifacts to disk. MIT licensed.

README badge

Report a problem