285 lines
6.6 KiB
Markdown
285 lines
6.6 KiB
Markdown
# 每日新闻MCP服务
|
||
|
||
**GitHub**: [6551team/daily-news](https://github.com/6551team/daily-news) | **Gitea**: [mc-skills/6551team--daily-news](http://192.168.0.109:3000/mc-skills/6551team--daily-news)
|
||
|
||
## 中文摘要
|
||
|
||
提供新闻分类浏览、热点资讯、热门推文及加密货币情报的MCP服务器,支持按分类获取DeFi、AI等领域热点内容,可集成至Claude等AI助手使用。
|
||
|
||
## 标签
|
||
|
||
`MCP` `新闻聚合` `加密货币` `AI工具`
|
||
|
||
---
|
||
|
||
## README 原文
|
||
|
||
<p align="center">
|
||
<b>Daily News MCP Server</b><br>
|
||
News Categories · Hot News · Trending Tweets · Crypto Intelligence
|
||
</p>
|
||
|
||
<p align="center">
|
||
<a href="./docs/README_ZH.md">中文</a> | <a href="./docs/README_JA.md">日本語</a> | <a href="./docs/README_KO.md">한국어</a>
|
||
</p>
|
||
|
||
---
|
||
|
||
## Quick Install
|
||
|
||
### Claude Code
|
||
|
||
```bash
|
||
claude mcp add daily-news \
|
||
-- uv --directory /path/to/daily-news run daily-news-mcp
|
||
```
|
||
|
||
> Replace `/path/to/daily-news` with your local project path.
|
||
|
||
### OpenClaw
|
||
|
||
```bash
|
||
cp -r openclaw-skill/daily-news ~/.openclaw/skills/6551-daily-news
|
||
```
|
||
|
||
---
|
||
|
||
## Let AI Review & Install For You
|
||
|
||
Not sure if this MCP is safe? Paste the prompt below to your AI assistant — it will review the source code first, then install if safe:
|
||
|
||
> **Copy this prompt and send it to your AI assistant (replace `<project-path>` with actual value):**
|
||
|
||
```text
|
||
Please review and install the daily-news-mcp MCP server for me. The project is at <project-path>.
|
||
|
||
Steps:
|
||
1. Review these files for security:
|
||
- src/daily_news_mcp/api_client.py — Confirm it only connects to ai.6551.io, no data sent elsewhere
|
||
- src/daily_news_mcp/config.py — Confirm no hardcoded secrets or leaks
|
||
- src/daily_news_mcp/tools.py — Confirm all tools only perform API queries, no file writes, command execution, or dangerous operations
|
||
- pyproject.toml — Confirm dependencies are only mcp, httpx, no suspicious packages
|
||
2. Tell me your conclusion: safe / risky / problematic, with specific reasons
|
||
3. If safe, run the install:
|
||
claude mcp add daily-news -- uv --directory <project-path> run daily-news-mcp
|
||
```
|
||
|
||
---
|
||
|
||
## What Can It Do?
|
||
|
||
Once connected, just ask your AI assistant:
|
||
|
||
| You say | It does |
|
||
|---------|---------|
|
||
| "Show me all news categories" | List all available categories and subcategories |
|
||
| "What's hot in DeFi today?" | Get hot news and tweets for the DeFi category |
|
||
| "Get crypto market news" | Fetch trending news for the crypto market category |
|
||
| "Show me AI-related news and tweets" | Get combined news + tweets for AI subcategory |
|
||
|
||
---
|
||
|
||
## Available Tools
|
||
|
||
| Tool | Description |
|
||
|------|-------------|
|
||
| `get_news_categories` | Get all available news categories and subcategories |
|
||
| `get_hot_news` | Get hot news and tweets by category/subcategory |
|
||
|
||
---
|
||
|
||
## Configuration
|
||
|
||
| Variable | Required | Description |
|
||
|----------|----------|-------------|
|
||
| `DAILY_NEWS_API_BASE` | No | Override REST API URL (default: `https://ai.6551.io`) |
|
||
| `DAILY_NEWS_MAX_ROWS` | No | Max results per query (default: 100) |
|
||
|
||
Also supports `config.json` in the project root (env vars take precedence):
|
||
|
||
```json
|
||
{
|
||
"api_base_url": "https://ai.6551.io",
|
||
"max_rows": 100
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## API Endpoints
|
||
|
||
| Endpoint | Method | Parameters | Description |
|
||
|----------|--------|------------|-------------|
|
||
| `/open/free_categories` | GET | — | Get all news categories |
|
||
| `/open/free_hot` | GET | `category`, `subcategory` | Get hot news + tweets |
|
||
|
||
### Response: free_categories
|
||
|
||
```json
|
||
[
|
||
{
|
||
"key": "crypto",
|
||
"name": "Crypto",
|
||
"name_zh": "加密货币",
|
||
"description": "...",
|
||
"subcategories": [
|
||
{
|
||
"key": "defi",
|
||
"name": "DeFi",
|
||
"name_zh": "去中心化金融",
|
||
"description": "..."
|
||
}
|
||
]
|
||
}
|
||
]
|
||
```
|
||
|
||
### Response: free_hot
|
||
|
||
```json
|
||
{
|
||
"success": true,
|
||
"category": "crypto",
|
||
"subcategory": "defi",
|
||
"news": {
|
||
"success": true,
|
||
"count": 10,
|
||
"items": [
|
||
{
|
||
"id": 123,
|
||
"title": "...",
|
||
"source": "...",
|
||
"link": "https://...",
|
||
"score": 85,
|
||
"grade": "A",
|
||
"signal": "bullish",
|
||
"summary_zh": "...",
|
||
"summary_en": "...",
|
||
"coins": ["BTC", "ETH"],
|
||
"published_at": "2026-03-17T10:00:00Z"
|
||
}
|
||
]
|
||
},
|
||
"tweets": {
|
||
"success": true,
|
||
"count": 5,
|
||
"items": [
|
||
{
|
||
"author": "Vitalik Buterin",
|
||
"handle": "VitalikButerin",
|
||
"content": "...",
|
||
"url": "https://...",
|
||
"metrics": { "likes": 1000, "retweets": 200, "replies": 50 },
|
||
"posted_at": "2026-03-17T09:00:00Z",
|
||
"relevance": "high"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
<details>
|
||
<summary><b>Other Clients — Manual Install</b> (click to expand)</summary>
|
||
|
||
> In all configs below, replace `/path/to/daily-news` with your actual local project path.
|
||
|
||
### Claude Desktop
|
||
|
||
Edit config (macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`, Windows: `%APPDATA%\Claude\claude_desktop_config.json`):
|
||
|
||
```json
|
||
{
|
||
"mcpServers": {
|
||
"daily-news": {
|
||
"command": "uv",
|
||
"args": ["--directory", "/path/to/daily-news", "run", "daily-news-mcp"]
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
### Cursor
|
||
|
||
`~/.cursor/mcp.json` or Settings > MCP Servers:
|
||
|
||
```json
|
||
{
|
||
"mcpServers": {
|
||
"daily-news": {
|
||
"command": "uv",
|
||
"args": ["--directory", "/path/to/daily-news", "run", "daily-news-mcp"]
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
### Windsurf
|
||
|
||
`~/.codeium/windsurf/mcp_config.json`:
|
||
|
||
```json
|
||
{
|
||
"mcpServers": {
|
||
"daily-news": {
|
||
"command": "uv",
|
||
"args": ["--directory", "/path/to/daily-news", "run", "daily-news-mcp"]
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
</details>
|
||
|
||
---
|
||
|
||
## Supported Clients
|
||
|
||
| Client | Config | Status |
|
||
|--------|--------|--------|
|
||
| Claude Code | CLI | Supported |
|
||
| Claude Desktop | JSON config | Supported |
|
||
| Cursor | JSON config | Supported |
|
||
| Windsurf | JSON config | Supported |
|
||
| Cherry Studio | GUI | Supported |
|
||
| Zed | JSON config | Supported |
|
||
|
||
---
|
||
|
||
## Development
|
||
|
||
```bash
|
||
cd /path/to/daily-news
|
||
uv sync
|
||
uv run daily-news-mcp
|
||
```
|
||
|
||
```bash
|
||
# MCP Inspector
|
||
npx @modelcontextprotocol/inspector uv --directory /path/to/daily-news run daily-news-mcp
|
||
```
|
||
|
||
### Project Structure
|
||
|
||
```
|
||
├── README.md # English
|
||
├── docs/
|
||
│ ├── README_ZH.md # 中文
|
||
│ ├── README_JA.md # 日本語
|
||
│ └── README_KO.md # 한국어
|
||
├── openclaw-skill/daily-news/ # OpenClaw Skill
|
||
├── pyproject.toml
|
||
├── config.json
|
||
└── src/daily_news_mcp/
|
||
├── server.py # Entry point
|
||
├── app.py # FastMCP instance
|
||
├── config.py # Config loader
|
||
├── api_client.py # HTTP client
|
||
└── tools.py # 2 tools
|
||
```
|
||
|
||
## License
|
||
|
||
MIT
|