GroundAPI
GroundAPI provides a unified real-time data layer for AI agents, offering 10 tools across finance, information, and life services.
Finance Tools:
finance_stock— Query A-share stocks, indices, and ETFs by symbol or keyword; get real-time quotes, historical data, technical indicators (MA, MACD, RSI), and fundamental datafinance_stock_screen— Screen and rank stocks by criteria such as industry, PE/PB ratio, market cap, and dividend yieldfinance_market— Get market overviews including indices, sector rankings, fund rankings, valuation maps, and macro indicatorsfinance_fund— Search, get details, or rank mutual funds by performance metrics
Information Tools:
info_search— Search the web for titles, links, and snippets with filters for result count and recencyinfo_scrape— Scrape any webpage and return its content as clean markdowninfo_news— Fetch latest news headlines by category (finance, tech, sports, etc.)
Life Services Tools:
life_weather— Get current weather and optional 7-day forecasts by city name or coordinateslife_logistics— Track courier packages by tracking number with auto-detection of the carrierlife_ip— Look up geolocation info (country, city, timezone, ISP) for any IP address, or the caller's own IP
Provides real-time hot search rankings from Zhihu, enabling AI agents to access trending topics and discussions on the platform.
GroundAPI provides a unified data layer for AI Agents — 11 tools across finance, information, and life services. One API key, three access methods: REST API, MCP, and CLI.
Table of Contents
Related MCP server: Real-time Stock MCP Service
Quick Start
Get your API key at groundapi.net — 500 free calls/month, no credit card required.
Option 1: MCP (recommended for AI Agents)
Add to Claude Desktop, Cursor, Windsurf, or any MCP-compatible client:
{
"mcpServers": {
"groundapi": {
"url": "https://mcp.groundapi.net/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}Option 2: REST API
curl -H "X-API-Key: YOUR_API_KEY" \
"https://api.groundapi.net/v1/finance/stock?symbol=600519&aspects=overview"Option 3: CLI
pip install groundapi-cli
groundapi config set-key YOUR_API_KEY
groundapi stock --symbol 600519MCP Tools Reference
Finance (5 tools)
finance_stock — Securities Data
All-in-one query for A-share stocks, indices, and ETFs. Supports 11 data dimensions and multi-stock comparison.
Parameter | Type | Default | Description |
| string | — | Stock code. Comma-separated for comparison (e.g. |
| string | — | Search by name (e.g. |
| string |
| Data dimensions, comma-separated (see table below) |
| int |
| History range for kline/technical |
| string |
| K-line period: |
11 Available Aspects:
Aspect | Returns | Use When |
| Quick snapshot: quote + profile brief + financial brief | "How's XXXX doing?" |
| Full company info, concepts, index membership, capital structure | "What does this company do?" |
| Latest closing price, PE/PB, limit up/down distance | "Current price?" |
| K-line data (supports 5/15/30/60min, daily, weekly, monthly) | "Show me the chart" |
| MACD, MA, BOLL, KDJ + signal detection (e.g. "DIF crosses above DEA") | "Technical analysis?" |
| 3 financial statements, quarterly P&L, cash flow, dividends, forecasts | "How are the financials?" |
| Top 10 shareholders, float holders, count trend, fund holdings | "Who are the major shareholders?" |
| Executives, board directors, supervisors | "Who's the management?" |
| Dividends, share issuance, lock-up expiry, earnings calendar | "When's the next dividend?" |
| Multi-dimensional factual aggregation (no opinions) | "Give me a full data summary" |
| Same-industry comparison table with PE/PB/market cap ranking | "How does it rank in the sector?" |
# Quick overview
finance_stock(symbol="600519")
# Deep dive with multiple aspects
finance_stock(symbol="600519", aspects="quote,technical,financial")
# Search by name
finance_stock(keyword="平安")
# Compare multiple stocks
finance_stock(symbol="601398,601939,600036", aspects="quote")
# Index / ETF
finance_stock(symbol="000001.SH", aspects="kline,technical") # SSE Composite
finance_stock(symbol="510300", aspects="quote") # CSI 300 ETFfinance_market — Market Overview
Market-wide data: major indices, hot stocks, sector rotation, IPO calendar, anomaly signals.
Parameter | Type | Default | Description |
| string |
| Data scope, comma-separated |
| string | — | Drill into a specific sector |
| string | — | Date filter (YYYY-MM-DD) |
Scopes: overview (indices + sentiment) · hot (limit-up/down pools, streak breakdown) · sectors (concept & industry lists) · ipo (IPO calendar) · signals (anomaly detection)
finance_market() # Today's market
finance_market(scope="hot") # Limit-up/down stocks
finance_market(scope="sectors", sector="AI") # AI sector constituents
finance_market(scope="ipo") # IPO calendarfinance_screen — Stock Screener
Multi-criteria screening with 20+ dimensions and preset filter combinations.
Parameter | Type | Description |
| string | Industry filter (e.g. |
| string | Concept filter (e.g. |
| float | PE ratio range |
| float | Max PB ratio |
| float | Market cap range |
| float | Min dividend yield (%) |
| string |
|
| string | Sort field (default: |
finance_screen(industry="银行", pe_max=10) # Low-PE bank stocks
finance_screen(min_dividend_yield=3, sort_by="dividend_yield") # High dividend
finance_screen(concept="AI") # AI concept stocks
finance_screen(filter_preset="low_pe_high_div") # Preset: value picksfinance_search — Universal Search
Search across 11,780+ securities: stocks, concepts, sectors, ETFs, indices.
Parameter | Type | Description |
| string | Search query |
| string |
|
finance_search(keyword="芯片", type="etf") # Chip ETFs
finance_search(keyword="AI", type="concept") # AI concept indices
finance_search(keyword="沪深300", type="index") # CSI 300finance_gold_price — Precious Metals
finance_gold_price() # Gold, silver, platinum pricesInformation (4 tools)
info_search — Web Search
Parameter | Type | Description |
| string | Search keywords |
| int | Number of results (1–50, default 10) |
| string |
|
info_search(query="AI Agent trends 2026", count=20, recency="oneWeek")info_news — News Headlines
Parameter | Type | Description |
| string |
|
| int | Number of articles (1–50) |
info_news(category="finance", limit=10)
info_news(category="tech")info_trending — Trending Topics
Hot search rankings from Weibo, Douyin, Zhihu, and more.
info_trending()info_bulletin — Daily Briefing
info_bulletin() # Morning news digestLife Services (2 tools)
life_weather — Weather
Parameter | Type | Description |
| string | City name (e.g. |
| string | Lat,lng (e.g. |
| bool | Include 7-day forecast |
life_weather(city="北京", forecast=True)
life_weather(location="39.9,116.4")life_calendar — Calendar & Trading Days
life_calendar() # Today: lunar date, solar terms, holiday, trading day
life_calendar(date="2026-05-01") # Specific dateREST API
Base URL: https://api.groundapi.net
All endpoints require X-API-Key header.
Endpoint | Description |
| Stock/index/ETF data |
| Stock screening |
| Market overview |
| Securities search |
| Gold & precious metals |
| Web search |
| News headlines |
| Trending topics |
| Daily briefing |
| Weather |
| Calendar info |
# Stock overview
curl -H "X-API-Key: YOUR_KEY" \
"https://api.groundapi.net/v1/finance/stock?symbol=600519&aspects=overview"
# Multi-aspect deep dive
curl -H "X-API-Key: YOUR_KEY" \
"https://api.groundapi.net/v1/finance/stock?symbol=600519&aspects=quote,technical,financial"
# Market overview
curl -H "X-API-Key: YOUR_KEY" \
"https://api.groundapi.net/v1/finance/market?scope=overview"
# Stock screening
curl -H "X-API-Key: YOUR_KEY" \
"https://api.groundapi.net/v1/finance/stock/screen?industry=银行&pe_max=10"
# Web search
curl -H "X-API-Key: YOUR_KEY" \
"https://api.groundapi.net/v1/info/search?q=AI+Agent&count=10"
# Weather
curl -H "X-API-Key: YOUR_KEY" \
"https://api.groundapi.net/v1/life/weather?city=北京&forecast=true"Full API documentation: docs.groundapi.net
CLI Reference
Install
pip install groundapi-cli
groundapi config set-key YOUR_API_KEYFinance
# Stock quotes
groundapi stock --symbol 600519 # Latest quote
groundapi stock --keyword 贵州茅台 # Search by name
groundapi stock --symbol 600519 --date 2024-12-31 # Specific date
groundapi stock --symbol 600519 --days 30 # Last 30 days
groundapi stock --symbol 600519 --days 30 --include technicals # With technicals
# Screening
groundapi screen # Default ranking
groundapi screen --industry 白酒 --pe-max 30 # Industry + PE filter
groundapi screen --sort-by total_market_cap --limit 10 # Top 10 by market cap
# Market overview
groundapi market # Indices + macro
groundapi market --include sectors,valuation # With sectors + valuation
groundapi market --sector 半导体 --type industry # Sector drill-down
# Finance search
groundapi fsearch 芯片 # Search securities
groundapi fsearch AI --type concept # AI concept indices
# Gold price
groundapi gold # Precious metals pricesInformation
groundapi search "AI Agent" # Web search
groundapi search "AI Agent" --count 20 --recency oneWeek # With filters
groundapi news # Finance news
groundapi news --category tech --limit 10 # Tech news
groundapi trending # Trending topics
groundapi bulletin # Daily briefingLife Services
groundapi weather --city 北京 # Current weather
groundapi weather --city 北京 --forecast # 7-day forecast
groundapi weather --location 39.9,116.4 # By coordinates
groundapi calendar # Today's calendar infoAgent Skills
Pre-built skills that combine GroundAPI tools into automated workflows. Install in Cursor, OpenClaw, or Smithery:
Skill | Description |
Generates daily A-share market summary — indices, sectors, hot stocks, anomalies | |
Deep analysis with 11 data dimensions — outputs structured report with technicals and financials | |
Natural language stock screening — "find undervalued bank stocks with high dividends" | |
Daily assistant — weather, calendar, news in one shot | |
Market anomaly detection — unusual volume, price gaps, limit-up streaks |
Self-hosted MCP Server
Run the MCP server locally (stdio transport for local AI clients):
pip install -r requirements.txt
python mcp_server.pyOr connect to the hosted MCP endpoint (no deployment needed):
https://mcp.groundapi.net/mcpPricing
Free | Paid | |
Calls | 500/month | Pay-as-you-go |
Rate Limit | 60/min | 300/min |
Payment | — | Alipay / WeChat Pay / Credit Card |
Get your API key at groundapi.net.
Links
Website: groundapi.net
API Docs: docs.groundapi.net
MCP Endpoint:
https://mcp.groundapi.net/mcpCLI on PyPI: groundapi-cli
mcp.so: GroundAPI on mcp.so
License
MIT — Skills, MCP server wrapper, and documentation only. GroundAPI is a commercial API service.
Available Tools
10 toolsfinance_fundA
Query fund data: search, detail, or ranking.
Search: finance_fund(keyword="沪深300")
Detail: finance_fund(code="110011")
Ranking: finance_fund(sort_by="return_1y", limit=20)
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | ||
| limit | No | ||
| order | No | desc | |
| keyword | No | ||
| sort_by | No | perf_ytd | |
| fund_type | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry the full burden. It explains three distinct behaviors (search, detail, ranking) but does not disclose whether the tool is read-only, requires authentication, or what errors might occur. The behavioral description is functional but lacks safety or side-effect details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence summarizing functionality followed by three example invocations. Every line adds value, and the structure is front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and an output schema (not described), the description covers the core three modes well but omits the 'order' and 'fund_type' parameters. It also doesn't mention default behavior or output structure. Still, for a parametric query tool, it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining code for detail, keyword for search, sort_by for ranking, and limit for pagination. However, order and fund_type are not described, leaving some semantics implicit. Overall, it adds significant meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it queries fund data with three explicit modes: search, detail, and ranking. Examples with concrete parameters (keyword, code, sort_by) make the purpose unmistakable and differentiate from sibling tools like finance_stock (stock data) and finance_market (market data) by focusing on mutual funds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage guidance by showing which parameters to use for each mode (keyword for search, code for detail, sort_by for ranking). It doesn't explicitly state when NOT to use or compare to siblings, but the examples are sufficiently directive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
finance_marketA
Get market data. Supports multiple modes:
Market overview: finance_market() — indices, breadth, volume, top sectors, macro
With sectors: finance_market(include="sectors") — add sector ranking
With funds: finance_market(include="funds") — add fund ranking
With valuation: finance_market(include="valuation") — add industry valuation map
With macro: finance_market(include="macro") — add macro indicators
All extras: finance_market(include="sectors,funds,valuation,macro")
Sector detail: finance_market(sector="半导体") — specific sector with constituents
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| type | No | industry | |
| limit | No | ||
| sector | No | ||
| include | No | ||
| sort_by | No | change_pct |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavior fully. It mentions the data included in each mode (indices, breadth, sectors, etc.), but does not disclose side effects, rate limits, staleness of data, or whether the tool is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear bullet points and examples. It is somewhat lengthy, but each line adds value. Could be slightly more concise by grouping similar modes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters (all optional) and no annotations, the description covers the core functionality and return data for each mode. However, it omits explanations for several parameters (date, type, limit, sort_by) and does not specify default values or constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains 'include' and 'sector' via examples, but fails to describe 'date', 'type', 'limit', and 'sort_by'. This leaves half the parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get market data' and enumerates multiple modes (overview, sectors, funds, valuation, macro). It distinguishes itself from sibling tools like finance_fund and finance_stock by focusing on broad market metrics rather than individual securities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides concrete invocation examples for each mode, showing how to use the 'include' and 'sector' parameters. However, it does not explicitly state when to avoid this tool or compare use cases with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
finance_stockA
Query A-share stock data. Supports multiple modes:
Search: finance_stock(keyword="茅台") — find stocks by name or code
Latest quote: finance_stock(symbol="600519") — current price, PE, PB, dividend yield
Specific date: finance_stock(symbol="600519", date="2026-03-28")
History: finance_stock(symbol="600519", days=60) — last N trading days
With technicals: finance_stock(symbol="600519", days=60, include="technicals")
With fundamentals: finance_stock(symbol="600519", include="fundamental") Either keyword or symbol is required.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| days | No | ||
| limit | No | ||
| symbol | No | ||
| include | No | ||
| keyword | No | ||
| indicators | No | ma,macd,rsi |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description effectively conveys that this is a read-only query tool by listing output fields (price, PE, PB, dividend yield, technicals) and parameters. It does not disclose potential limitations like rate limits or data freshness, but the behavior is well-explained for typical use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with a clear bullet list of modes and examples. It is front-loaded with the purpose, and every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, multiple modes) and presence of an output schema, the description covers most scenarios. Minor omissions like limit and indicators parameters prevent a perfect score, but overall it is complete for a data query tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains keyword, symbol, date, days, and include through examples, but does not explicitly describe limit or indicators parameters, leaving gaps in parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Query A-share stock data' and lists multiple specific modes (search, latest quote, date-specific, history, with technicals, with fundamentals), which distinguishes it from siblings like finance_fund and finance_stock_screen.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage examples for each mode and notes that either keyword or symbol is required. However, it does not explicitly mention when not to use this tool (e.g., for in-depth fundamentals vs finance_fund) or highlight alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
finance_stock_screenA
Screen stocks by criteria or get top/bottom rankings.
Ranking: finance_stock_screen(sort_by="change_pct", limit=10) — today's top gainers
Filter: finance_stock_screen(industry="半导体", pe_max=30) — semiconductor stocks with PE < 30 All filter params are optional. With no filters, returns a simple ranking.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| order | No | desc | |
| pb_max | No | ||
| pe_max | No | ||
| pe_min | No | ||
| sort_by | No | change_pct | |
| industry | No | ||
| max_market_cap | No | ||
| min_market_cap | No | ||
| min_dividend_yield | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It reveals that the tool can operate in ranking or filtering modes, and that all parameters are optional, implying a query behavior. However, it does not explicitly state that it is read-only or disclose any mutation risks, rate limits, or other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using two clear bullet points with examples. Every sentence adds value, and the structure is front-loaded with the main purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown), the description adequately explains the two main operational modes. However, it could be more complete by briefly summarizing the output format or clarifying that the tool returns a list of stocks. The missing parameter explanations reduce completeness slightly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only explains a subset of parameters (sort_by, limit, industry, pe_max) through examples. Critical parameters like pb_max, pe_min, min/max_market_cap, min_dividend_yield, and order are not described, leaving ambiguity about their meaning and default values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies that the tool screens stocks by criteria or obtains top/bottom rankings, differentiating it from sibling tools like finance_stock (individual stock info) and finance_market (market data). Concrete examples illustrate both ranking and filtering modes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit examples of ranking (sort_by, limit) and filtering (industry, pe_max) usage, and states that with no filters it returns a simple ranking. However, it does not explicitly mention when not to use this tool or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
info_newsA
Get latest news headlines. category: finance/general/tech/sports/... (default: finance). limit: number of articles (1-50).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| category | No | finance |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It only mentions parameters and default values, omitting critical traits like idempotency, authentication needs, or rate limits. The read-only nature is implied but not stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence for the main action and one for parameters. Every word adds value with no redundancy. The front-loading is effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with an output schema, the description covers parameter semantics adequately but lacks context about ordering, time window, or pagination. It is sufficient for basic use but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Given 0% schema description coverage, the description compensates by explaining the 'category' parameter with example values and the 'limit' parameter with a range. This adds meaning beyond the schema's type and default fields, though a complete enumeration of categories would improve it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource pair ('Get latest news headlines'), clearly indicating the tool's purpose. The examples of categories (finance/general/tech/sports/...) further clarify the scope. The purpose is distinct from sibling tools like finance_stock or info_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as info_search or info_scrape. It lacks explicit conditions or exclusions, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
info_scrapeC
Read a webpage and return its content as markdown. url: the webpage URL to scrape.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations available, and the description only says 'read a webpage' without disclosing limitations like dynamic content handling, rate limits, or authentication requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, first stating purpose and second describing the parameter. It is concise but could front-load the parameter hint more efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, return values aren't needed, but the description lacks usage context, alternatives, or behavioral details, making it incomplete for effective tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the 'url' parameter; the description adds 'the webpage URL to scrape,' which is minimal and doesn't clarify format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads a webpage and returns markdown content, distinguishing it from sibling tools like info_news or info_search which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus siblings (e.g., info_news might also retrieve web content) or any prerequisites or restrictions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
info_searchA
Search the web. Returns titles, links, and snippets. query: search keywords. count: number of results (1-50). recency: oneDay/oneWeek/oneMonth/oneYear/noLimit.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| query | Yes | ||
| recency | No | noLimit |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so the description must cover behavioral traits. It discloses the return format and parameter behaviors but does not mention rate limits, permissions, or potential result variability.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences cover purpose and all parameters efficiently. No extraneous words, and the structure is front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists (signal), the description adequately covers input parameters and return summary. Lacks comparison to siblings, but for a simple search tool it is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description explains each parameter: query, count (with range 1-50), and recency (with valid values). This adds significant value beyond the schema's type/default.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Search the web' and specifies the return type (titles, links, snippets), which distinguishes it from sibling tools like info_news (news search) and info_scrape (scrape specific pages).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. No mention of when not to use or which sibling to use for different contexts (e.g., news vs. general search).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
life_ipA
Get IP geolocation info. address: IP address (defaults to caller IP if omitted).
| Name | Required | Description | Default |
|---|---|---|---|
| address | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only mentions default behavior. It does not disclose rate limits, data accuracy, error handling, or authentication needs, which are important for a geolocation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, front-loaded with the primary action, and no unnecessary words. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists (providing return structure), the description covers the core functionality and parameter semantics. It lacks error handling details but is adequate for a simple lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero description coverage (0%), so the description compensates by explaining the 'address' parameter and its default value. This adds meaningful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get IP geolocation info,' specifying the verb and resource. It also explains the parameter, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidelines on when to use the tool or its alternatives. While the context signals show no direct sibling for IP geolocation, the lack of usage guidance is a gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
life_logisticsA
Track a courier package. number: tracking number. company: courier company code (auto-detected if omitted).
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | ||
| company | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only mentions auto-detection and leaves out important details such as idempotency, rate limits, whether it requires authentication, or what the response contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two short sentences, front-loading the purpose and efficiently covering the parameters. Every phrase adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential usage and parameters, and an output schema exists to describe return values. However, it lacks details on expected output behavior or any prerequisites, making it adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining that 'number' is a tracking number and 'company' is a courier company code that can be auto-detected. This adds meaningful context beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Track a courier package,' providing a specific verb and resource. It distinguishes itself from sibling tools (finance, info, life_ip, life_weather) which address different domains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains auto-detection of the courier company if omitted, giving clear guidance on parameter usage. While it does not explicitly state when not to use this tool, the sibling tools cover unrelated areas, making the context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
life_weatherA
Get weather data: current conditions and optional 7-day forecast. city: city name (e.g. '北京'). location: lat,lng. forecast: include 7-day forecast.
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| forecast | No | ||
| location | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral aspects. It describes the core function and parameters but does not disclose any limitations, required permissions, or response characteristics beyond the input schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that front-load the main purpose and then explain parameters. Every word adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with three optional parameters and an existing output schema, the description covers the core functionality and parameter usage. However, it does not clarify precedence between city and location or potential error conditions, leaving minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining the parameters: city example ('北京'), location format ('lat,lng'), and forecast effect ('include 7-day forecast'). This adds significant meaning beyond the schema's types and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get weather data: current conditions and optional 7-day forecast.' It uses a specific verb and resource, and the sibling tools are all in different domains (finance, info, other life tools), making differentiation straightforward.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives or when not to use it. Although siblings are distinct, the description lacks any 'when-to-use' or 'when-not-to-use' advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
10 tool updates
v0.1.1- Added
finance_fund - Added
finance_market - Added
finance_stock - Added
finance_stock_screen - Added
info_news - Added
info_scrape - Added
info_search - Added
life_ip - Added
life_logistics - Added
life_weather
TDQS
Scored across 10 tools
Every tool targets a distinct domain: fund, market, stock, info retrieval, and life utilities. No overlap in functionality.
All tools use a consistent 'domain_specific' lowercase underscore pattern, e.g., finance_fund, info_news, life_weather.
10 tools is well-scoped for a general-purpose assistant covering finance, info, and life domains. Each tool earns its place.
Finance tools cover fund, market, stock, and screening comprehensively. Info tools cover news, web scraping, and search. Life tools cover IP, logistics, weather. No obvious gaps.
Maintenance
Related MCP Connectors
Real-time data API for AI Agents: stocks, weather, forex, logistics, search, scrape, news, IP.
China A-share market data for research, backtesting and AI agents via MCP.
MCP server giving AI agents one-connection access to China A-share market intelligence: financials,
Pay-per-use tool marketplace for AI agents. Search, price-check, and call APIs via MCP.
Related MCP Servers
- AlicenseCqualityDmaintenanceThe MCP provides comprehensive financial data and analytical tool support for AI large language models, specifically including the following five core data capabilities: Stock Analysis/ETF Analysis/Public Funds/News & Information/General Tools More Info: https://github.com/shenqingtech/deepq-finan4410 npm7ISC
- AlicenseAqualityCmaintenanceProvides real-time stock market data and analysis from Chinese markets through 34 MCP tools, including K-line charts, technical indicators, fundamental analysis, financial metrics, and market insights without requiring authentication or API tokens.3454MIT
- AlicenseNot gradedqualityCmaintenanceReal-time A-share stock data for AI assistants. Provides real-time stock prices, K-line data, financial indicators, and sector fund flow analysis for Chinese A-share market. Multi-source data validation ensures accuracy.4MIT
- AlicenseNot gradedqualityCmaintenanceProvides 11 MCP tools for querying A-share market data, financial reports, stock screening, hot topics, self-selected stocks, and LOF arbitrage using natural language, powered by East Money / Miaoxiang APIs.MIT