all repos — mcp-news @ dfbbb957f5d9a674abca83cbfae30afa4b254153

personal mcp server for news

README.md (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
# news-mcp

Servidor MCP de noticias via RSS. Um coletor baixa os feeds do feeds.json de tempos em tempos, guarda tudo num banco SQLite e responde pelas ferramentas do MCP. Nao precisa de token de terceiros nem servico pago.

Ferramentas:

- list_sources: lista as fontes por categoria
- get_latest_news: ultimas noticias (todas, por categoria ou por fonte)
- search_news: busca por palavra-chave
- get_stats: total de artigos e hora da ultima coleta

Categorias das fontes: tech, programming, security, science, linux, windows, news.

Rodar local:

    python -m venv .venv
    .venv\Scripts\activate
    pip install -r requirements.txt
    python server.py

O servidor sobe em http://127.0.0.1:17631/mcp. O coletor roda uma vez ao subir e depois a cada 30 minutos.

Rodar com Docker:

    cp .env.example .env
    (edite o .env e defina NEWS_MCP_TOKEN)
    mkdir -p data
    docker compose up -d --build

A porta fica presa em 127.0.0.1:17631, atras de um proxy reverso (nginx) com HTTPS. O banco fica em ./data/news.db e persiste. Editar o feeds.json vale na proxima coleta, sem rebuild.

Configuracao pelo .env: NEWS_MCP_TOKEN, NEWS_MCP_PORT, POLL_INTERVAL_MIN, RETENTION_DAYS.

Trocar as fontes: edite o feeds.json. Cada fonte tem id, name, url e category.

Conectar no cliente MCP (transporte http com bearer token):

    news https://mcpnews.grupomurad.net/mcp
    header: Authorization: Bearer SEU_TOKEN