catalog/repos/6551team--opennews-mcp.md

17 KiB
Raw Blame History

实时新闻MCP服务器

GitHub: 6551team/opennews-mcp | Gitea: mc-skills/6551team--opennews-mcp

中文摘要

OpenNews MCP 聚合72+实时数据源涵盖新闻、交易所上币、链上数据、Meme币和市场行情5大类别提供AI评分0-100、多空交易信号和中英文双语摘要适用于加密货币投资分析和量化交易场景。

标签

MCP 实时新闻 加密货币 交易信号 AI分析


README 原文

OpenNews MCP Server
72+ Real-time Data Sources · 5 Engine Categories · AI Ratings · Trading Signals

English | 中文 | 日本語 | 한국어


Quick Install

First, get your API Token at https://6551.io/mcp.

Claude Code

claude mcp add opennews \
  -e OPENNEWS_TOKEN=<your-token> \
  -- uv --directory /path/to/opennews-mcp run opennews-mcp

Replace /path/to/opennews-mcp with your local project path, and <your-token> with your API token.

OpenClaw

export OPENNEWS_TOKEN="<your-token>"
cp -r openclaw-skill/opennews ~/.openclaw/skills/

Let AI Review and Install

Not sure if this MCP is safe? Send the following prompt to your AI assistant to review the source code before installing:

Copy the prompt below and paste it to your AI assistant (replace <project-path> and <your-token> with actual values):

Please help me review and install the opennews-mcp MCP server. The project is at <project-path>.

Steps:
1. Review the security of the following files:
   - src/opennews_mcp/api_client.py — Confirm it only connects to ai.6551.io, no data sent elsewhere
   - src/opennews_mcp/config.py — Confirm token is only read from local config.json or env vars, not hardcoded or leaked
   - src/opennews_mcp/tools/*.py — Confirm all tools only do API queries, no file writes, command execution, or dangerous operations
   - pyproject.toml — Confirm dependencies are only mcp, httpx, websockets, no suspicious packages
2. Tell me your conclusion: Safe / Risky / Problematic, and the specific reasons
3. If safe, help me install (Token from https://6551.io/mcp):
   claude mcp add opennews -e OPENNEWS_TOKEN=<your-token> -- uv --directory <project-path> run opennews-mcp

Data Sources — 72+ Sources Across 5 Categories

Category Count Key Sources
News 53 Bloomberg, Reuters, Financial Times, CNBC, CNN, BBC, Fox Business, CoinDesk, Cointelegraph, The Block, Blockworks, Decrypt, DlNews, A16Z, TechCrunch, Wired, Politico, Business Insider, Twitter/X, Telegram, Weibo, Truth Social, U.S. Treasury, ECB, TASS, Handelsblatt, Welt, Ambrey, Morgan Stanley, PR Newswire, Coinbase, Phoenixnews, and more
Listing 9 Binance, Coinbase, OKX, Bybit, Upbit, Bithumb, Robinhood, Hyperliquid, Aster
OnChain 3 Hyperliquid Whale Trade, Hyperliquid Large Position, KOL Trade
Meme 1 Twitter meme coin social sentiment
Market 6 Price Change, Funding Rate, Funding Rate Difference, Large Liquidation, Market Trends, OI Change

All articles are AI-analyzed with impact score (0-100), trading signal (long/short/neutral), and bilingual summaries (EN/ZH).

News — 53 sources (engineType: "news") — Premium financial & crypto media, government agencies, social platforms
Source Code Description
Bloomberg Bloomberg — top-tier financial news
Reuters Reuters — global wire service
Financial Times Financial Times — premium business news
CNBC CNBC — financial television
CNN CNN — US news network
BBC BBC — British Broadcasting Corporation
Fox Business Fox Business — US financial news
CoinDesk CoinDesk — leading crypto media
Cointelegraph Cointelegraph — crypto media
The Block The Block — crypto data & journalism
Blockworks Blockworks — crypto-native media
Decrypt Decrypt — crypto & web3 media
DlNews DL News — crypto investigative journalism
A16Z a16z (Andreessen Horowitz) — leading crypto VC
TechCrunch TechCrunch — tech & startup news
Wired Wired magazine — tech journalism
Politico Politico — US & EU political news
Business Insider Business Insider
Twitter/X Twitter/X posts from crypto influencers
X / Twitter Profile Twitter/X profile changes (name, bio updates)
Telegram Telegram channels
Weibo Weibo — Chinese social media
Truth Social Truth Social — Trump's social platform
U.S. Treasury U.S. Treasury Department — official statements
U.S. Trade Representative USTR — trade policy announcements
ECB European Central Bank — official communications
TASS TASS — Russian state news agency
Interfax Interfax — Russian news agency
Handelsblatt Handelsblatt — German business newspaper
Hadelsblatt Hadelsblatt — German business
Welt Welt — German newspaper
Telegraph The Telegraph — UK news
MS NOW Morgan Stanley NOW — institutional research
Ambrey Ambrey — maritime & geopolitical intelligence
PR Newswire PR Newswire — press releases
Coinbase Coinbase announcements & blog
Binance Binance announcements & blog
Phoenixnews Phoenix news
jin10 Jin10 — Chinese financial data flash news
The Big Whale The Big Whale — European crypto media
The Verge The Verge — tech media
Techinasia Tech in Asia — Asian tech news
Medium Medium blog posts
Chainwire Chainwire — crypto press releases
Token Relations Token relations & partnerships
Crypto Narratives Crypto narrative tracking
Crypto in America Crypto in America coverage
6551News 6551 platform original analysis
BWEnews BWE news wire
AGGRNEWS Aggregated news feed
dbnews DB news
Tree Tree news
Velo Velo data intelligence
Listing — 9 sources (engineType: "listing") — Token listing announcements from major exchanges
Source Code Description
Binance Binance new token listings
Coinbase Coinbase new token listings
OKX OKX new token listings
Bybit Bybit new token listings
Upbit Upbit (Korean exchange) listings
Bithumb Bithumb (Korean exchange) listings
Robinhood Robinhood crypto listings
Hyperliquid Hyperliquid perp listings
Aster Aster exchange listings
OnChain — 3 sources (engineType: "onchain") — On-chain activity from whales and key opinion leaders
Source Code Description
Hyperliquid Whale Trade Hyperliquid whale trade alerts
Hyperliquid Large Position Hyperliquid large position changes
KOL Trade KOL (Key Opinion Leader) on-chain trades
Meme — 1 source (engineType: "meme") — Meme coin social sentiment tracking
Source Code Description
Twitter Twitter/X meme coin discussions & viral posts
Market — 6 sources (engineType: "market") — Market anomaly detection and quantitative signals
Source Code Description
Price Change Significant price movements (pumps/dumps)
Funding Rate Funding rate anomalies (perp futures)
Funding Rate Difference Cross-exchange funding rate divergences
Large Liquidation Large liquidation events
Market Trends Overall market trend shifts
OI Change Open interest significant changes

What Can It Do?

After connecting, just tell your AI assistant:

You Say It Does
"Latest crypto news" Get latest articles
"Search SEC regulation news" Full-text keyword search
"BTC related news" Filter by coin
"Bloomberg articles" Filter by source
"On-chain events" Filter by engine type (onchain)
"Important news with AI score above 80" High score filtering
"Bullish signals" Filter by trading signal (long)
"Subscribe to real-time news" WebSocket live updates

Available Tools

Category Tool Description
Discovery get_news_sources Full engine tree — all 5 categories and 72+ sources with metadata
list_news_types Flat list of all source codes for filtering
Search get_latest_news Latest articles across all 72+ sources
search_news Full-text keyword search across all sources
search_news_by_coin By coin (BTC, ETH, SOL...) across all sources
get_news_by_source By specific source (e.g. engine_type="news", news_type="Bloomberg")
get_news_by_engine By category: news, listing, onchain, meme, market
search_news_advanced Multi-filter: coins + keywords + engine types combined
AI get_high_score_news High AI impact score articles (0-100 scale)
get_news_by_signal By AI trading signal: long / short / neutral
Real-time subscribe_latest_news WebSocket live feed with coin & engine type filters

For a comprehensive usage guide with detailed examples, see Knowledge Guide.


Configuration

Get API Token

Get your API Token at https://6551.io/mcp.

Set environment variable:

# macOS / Linux
export OPENNEWS_TOKEN="<your-token>"

# Windows PowerShell
$env:OPENNEWS_TOKEN = "<your-token>"
Variable Required Description
OPENNEWS_TOKEN Yes 6551 API Bearer Token (from https://6551.io/mcp)
OPENNEWS_API_BASE No Override REST API URL
OPENNEWS_WSS_URL No Override WebSocket URL
OPENNEWS_MAX_ROWS No Max results per request (default 100)

Also supports config.json in project root (env vars take precedence):

{
  "api_base_url": "https://ai.6551.io",
  "wss_url": "wss://ai.6551.io/open/news_wss",
  "api_token": "<your-token>",
  "max_rows": 100
}

WebSocket Real-time Subscriptions

Endpoint: wss://ai.6551.io/open/news_wss?token=YOUR_TOKEN

Subscribe to real-time crypto news updates.

Subscribe to News

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "news.subscribe",
  "params": {
    "engineTypes": {
      "news": ["Bloomberg", "CoinDesk"],
      "onchain": []
    },
    "coins": ["BTC", "ETH"],
    "hasCoin": true
  }
}

Response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "success": true,
    "filters": {
      "engineTypes": {...},
      "coins": [...],
      "hasCoin": true
    }
  }
}

Filter Parameters (all optional):

  • engineTypes: Object mapping engine type to news type codes
    • Key: Engine type (e.g., "news", "onchain", "listing", "meme", "market")
    • Value: Array of news type codes (e.g., ["Bloomberg", "CoinDesk"])
    • Empty array [] means all news types under that engine
    • Use list_news_types tool to get available codes
  • coins: Array of coin symbols (e.g., ["BTC", "ETH"])
    • Filter news by specific coins
    • Empty array [] or omit to receive all coins
  • hasCoin: Boolean, if true only receive news with coin tags

Unsubscribe

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "news.unsubscribe"
}

Server Push - News Update

When new news matches your filters, the server pushes:

{
  "jsonrpc": "2.0",
  "method": "news.update",
  "params": {
    "id": "unique-article-id",
    "text": "Article title or content",
    "newsType": "Bloomberg",
    "engineType": "news",
    "link": "https://...",
    "coins": [
      {
        "symbol": "BTC",
        "market_type": "spot",
        "match": "title"
      }
    ],
    "ts": 1708473600000
  }
}

Server Push - AI News Update

For news with AI analysis (if subscribed):

{
  "jsonrpc": "2.0",
  "method": "news.ai_update",
  "params": {
    "id": "unique-article-id",
    "text": "Article title",
    "newsType": "Bloomberg",
    "engineType": "news",
    "link": "https://...",
    "coins": [...],
    "aiRating": {
      "score": 85,
      "grade": "A",
      "signal": "long",
      "status": "done",
      "summary": "Chinese summary",
      "enSummary": "English summary"
    },
    "ts": 1708473600000
  }
}

Data Structure

Each article returns:

{
  "id": "unique-article-id",
  "text": "Title / Content",
  "newsType": "Bloomberg",
  "engineType": "news",
  "link": "https://...",
  "coins": [{ "symbol": "BTC", "market_type": "spot", "match": "title" }],
  "aiRating": {
    "score": 85,
    "grade": "A",
    "signal": "long",
    "status": "done",
    "summary": "Chinese summary",
    "enSummary": "English summary"
  },
  "ts": 1708473600000
}
AI Field Description
score 0-100 impact score
signal long (bullish) / short (bearish) / neutral
status done = AI analysis completed

Manual Installation for Other Clients (click to expand)

In all configurations below, replace /path/to/opennews-mcp with your actual local project path, and <your-token> with your token from https://6551.io/mcp.

Claude Desktop

Edit config file (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "opennews": {
      "command": "uv",
      "args": ["--directory", "/path/to/opennews-mcp", "run", "opennews-mcp"],
      "env": {
        "OPENNEWS_TOKEN": "<your-token>"
      }
    }
  }
}

Cursor

~/.cursor/mcp.json or Settings > MCP Servers:

{
  "mcpServers": {
    "opennews": {
      "command": "uv",
      "args": ["--directory", "/path/to/opennews-mcp", "run", "opennews-mcp"],
      "env": {
        "OPENNEWS_TOKEN": "<your-token>"
      }
    }
  }
}

Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "opennews": {
      "command": "uv",
      "args": ["--directory", "/path/to/opennews-mcp", "run", "opennews-mcp"],
      "env": {
        "OPENNEWS_TOKEN": "<your-token>"
      }
    }
  }
}

Cline

VS Code sidebar > Cline > MCP Servers > Configure, edit cline_mcp_settings.json:

{
  "mcpServers": {
    "opennews": {
      "command": "uv",
      "args": ["--directory", "/path/to/opennews-mcp", "run", "opennews-mcp"],
      "env": {
        "OPENNEWS_TOKEN": "<your-token>"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Continue.dev

~/.continue/config.yaml:

mcpServers:
  - name: opennews
    command: uv
    args:
      - --directory
      - /path/to/opennews-mcp
      - run
      - opennews-mcp
    env:
      OPENNEWS_TOKEN: <your-token>

Cherry Studio

Settings > MCP Servers > Add > Type stdio: Command uv, Args --directory /path/to/opennews-mcp run opennews-mcp, Env OPENNEWS_TOKEN.

Zed Editor

~/.config/zed/settings.json:

{
  "context_servers": {
    "opennews": {
      "command": {
        "path": "uv",
        "args": ["--directory", "/path/to/opennews-mcp", "run", "opennews-mcp"],
        "env": {
          "OPENNEWS_TOKEN": "<your-token>"
        }
      }
    }
  }
}

Any stdio MCP Client

OPENNEWS_TOKEN=<your-token> \
  uv --directory /path/to/opennews-mcp run opennews-mcp

Compatibility

Client Installation Status
Claude Code claude mcp add One-click
OpenClaw Copy Skill directory One-click
Claude Desktop JSON config Supported
Cursor JSON config Supported
Windsurf JSON config Supported
Cline JSON config Supported
Continue.dev YAML / JSON Supported
Cherry Studio GUI Supported
Zed JSON config Supported


Development

cd /path/to/opennews-mcp
uv sync
uv run opennews-mcp
# MCP Inspector test
npx @modelcontextprotocol/inspector uv --directory /path/to/opennews-mcp run opennews-mcp

Project Structure

├── README.md
├── openclaw-skill/opennews/   # OpenClaw Skill
├── knowledge/guide.md         # Embedded knowledge
├── pyproject.toml
├── config.json
└── src/opennews_mcp/
    ├── server.py              # Entry point
    ├── app.py                 # FastMCP instance
    ├── config.py              # Config loading
    ├── api_client.py          # HTTP + WebSocket
    └── tools/                 # Tools

License

MIT