catalog/repos/6551team--daily-news.md

285 lines
6.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 每日新闻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