mining-rights-daily-agent
Generates structured Chinese Markdown briefs on mining topics by orchestrating three MCP tools for news, resource data, and price information.
README
Mining Rights Daily Agent Console
Chinese mining-rights daily brief agent with three MCP-style tools, a visible workflow canvas and auditable raw tool output. The user enters an industry topic such as 给我生成一份关于 Pilbara 锂矿的今日简报; the agent plans the request, calls news/resource/price tools, and returns a structured Chinese Markdown brief.
This repository is project 02 from the mining interview MVP set. It is fully standalone and can be evaluated or zipped independently.
What It Does
- Implements three independent MCP-style servers/tools:
mining-news-mcp:search(query, days),fetch_article(url)mineral-pdf-mcp:extract_resources(pdf_url)lme-price-mcp:get_price(commodity, date),get_trend(commodity, days)
- Parses commodity, region, topic and time window from Chinese, English or mixed prompts.
- Generates Chinese Markdown briefs with a fixed structure.
- Shows the agent workflow as a production-style canvas: User Input -> Planner -> three MCP tools -> Brief Synthesizer -> Markdown Output.
- Keeps Raw Tool Output folded by default for audit and debugging.
- Uses a live model when configured, with a Chinese template fallback when no key is present.
- Returns
limitedplus warnings for unsupported commodities or missing evidence instead of silently falling back to lithium.
Brief Structure
# 主题今日简报
## 一、执行摘要
## 二、新闻摘要
## 三、资源量 / 储量数据
## 四、价格走势
## 五、风险提示
## 六、引用来源
## 七、数据缺口
The brief body is Chinese and does not include [ok] or chat-style prefixes.
Quick Start
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
make brief
make console
Open http://localhost:8002.
Docker:
docker compose up --build
Model Configuration
The app reads model settings from environment variables only. Do not commit real keys.
export MODEL_API_KEY=your_key
export MODEL_BASE_URL=https://apihub.agnes-ai.com/v1
export MODEL_NAME=agnes-2.0-flash
When MODEL_API_KEY is present, the Brief Synthesizer uses the configured OpenAI-compatible chat endpoint. Without a key, the deterministic Chinese template keeps the demo runnable.
API Example
curl -s http://localhost:8002/brief \
-H 'content-type: application/json' \
-d '{"prompt":"给我生成一份关于 Indonesia nickel 的今日简报"}' | jq
Stable response fields include status, warnings, source_mode, elapsed_ms, data_quality, intent, markdown and workflow_trace.
QA And Packaging
make test
make qa
make package
make qa runs multi-topic brief cases including Pilbara lithium, Peru copper, Indonesia nickel, China rare earth, DRC cobalt, iron ore, zinc, gold, uranium and graphite. make package creates /Users/Zhuanz/Desktop/02-mining-rights-daily-agent-tool.zip.
MCP Client Config
mcp-config.json is included for Claude Desktop / Cursor-style MCP clients. Adjust absolute paths if the project is moved.
Boundaries
This is a complete interview MVP, not a production data room. Fixture sources are marked as fixture data, unsupported commodities remain limited, and real paid/login sources are not bypassed.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.