China Futures Clock
Server Details
China futures trading days, session hours, contract expiries and exchange rule changes.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 6 tools
The six tools target mostly distinct reference areas: expiry dates, closures, notices, rule changes, trading dates, and trading hours. The closest overlap is between recent_notices and recent_rule_changes, and between next_closure and trading_day, but the descriptions clarify the boundaries reasonably well.
All tool names use consistent snake_case noun-phrase conventions (contract_expiry, next_closure, recent_notices, recent_rule_changes, trading_day, trading_hours). There is no mixing of camelCase, vague verbs, or incompatible naming styles.
Six tools is well-scoped for a specialized China futures calendar/reference server. Each tool covers a distinct reference need without obvious filler or missing major category.
The surface covers the core calendar and published-reference lifecycle: expiry, holidays, notices, rule changes, trading days, and hours. Minor gaps exist around current contract parameters or real-time status, but the server explicitly scopes itself to published reference data rather than live market data.
Available Tools
6 toolscontract_expiryARead-onlyIdempotentInspect
Published FC last-trading/first-notice dates for a product and optional YYYYMM delivery month (default next published month). Never runs an expiry engine; unpublished months are unknown with a product-page link. Official exchange notices take precedence.
| Name | Required | Description | Default |
|---|---|---|---|
| month | No | ||
| product | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as a read-only, idempotent, open-world, non-destructive lookup. The description adds meaningful behavioral context beyond annotations: it does not run an expiry engine, unpublished months are returned as unknown with a product-page link, and official exchange notices take precedence.
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 compact and front-loaded, stating the core output first and then adding key caveats about the expiry engine, unknown months, and official-notice precedence. Every sentence adds useful information without repetition.
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 two-parameter read-only lookup with no output schema, the description is largely complete: it covers purpose, default month behavior, unknown-month handling, and precedence caveats. The main remaining gap is the product parameter format, which the schema pattern shows but does not semantically explain.
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 carry parameter meaning. It clearly defines the optional month as YYYYMM delivery month with a default of the next published month, but the required product parameter is only described generically as 'a product' without explaining the expected product code format.
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 states a specific resource and output: published last-trading and first-notice dates for a product, optionally filtered by delivery month. It is clear what the tool returns, though it does not explicitly distinguish itself from sibling tools such as next_closure or recent_notices.
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 notes that the month parameter defaults to the next published month and that unpublished months are unknown, which helps set expectations. However, it does not explicitly say when to use this tool instead of alternatives like next_closure or recent_notices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
next_closureBRead-onlyIdempotentInspect
Next published exchange holiday or half-day from the fixed MO static calendar list; weekends alone are not holiday events. No extrapolation beyond coverage. Official exchange notices take precedence.
| Name | Required | Description | Default |
|---|---|---|---|
| exchange | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/openWorld, and the description adds genuine value beyond them: data comes from a fixed static list, there is no extrapolation past coverage, weekends alone are not events, and official notices override. Only the return shape (date? name? half-day flag?) is undisclosed.
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?
Compact and front-loaded: the core definition comes first, caveats follow. The telegraphic phrasing ('fixed MO static calendar list') is slightly opaque but no sentence is wasted.
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?
No output schema exists, so the description should indicate what 'next closure' returns (date, holiday name, half-day indicator) and it does not. For a single-param read tool the caveats are adequate, but the return contract is missing.
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?
One required parameter with 0% schema description coverage means the description carries the full burden, yet it never explains what 'exchange' should contain (e.g., MIC code, exchange name, casing, length limits). With no annotation or schema help on this field, the gap is material.
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?
States a specific verb+resource: retrieves the next published exchange holiday or half-day from a fixed static calendar. It also scopes it ('MO static calendar list', weekends excluded), which lets an agent distinguish it from trading_day and trading_hours, though no sibling is named.
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 extrapolation beyond coverage' and 'Official exchange notices take precedence' imply the boundary conditions and hint at the recent_notices sibling, but there is no explicit when-to-use/when-not or direct routing instruction to an alternative tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recent_noticesARead-onlyIdempotentInspect
CEC published notice records in Chinese or available English summaries; at most 30 days. Falls back to Chinese when English is unavailable, without translation. Published records are not verified current rules. Official Chinese exchange notices take precedence.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| lang | No | en | |
| topic | No | ||
| exchange | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), and the description adds genuinely non-obvious behavior: silent fallback to Chinese without translation when English is missing, and that published records may not reflect current rules. This is real context an agent could not get from annotations or 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?
Four tight clauses, front-loaded with what the tool returns before the caveats. No filler, though the 'at most 30 days' phrasing partially duplicates the schema's maximum constraint.
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?
With no output schema and 0% parameter coverage, the description does well on data-quality caveats and language behavior but leaves the topic/exchange filters and the shape of returned notices unexplained. Adequate, but a gap remains for a 4-parameter filtering 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% across 4 parameters, so the description must compensate. It clarifies the days window and the lang fallback semantics well, but says nothing about the 15-value topic enum or the free-text exchange filter, leaving half the parameters opaque.
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?
States a specific resource (CEC published notice records) with a concrete scope limit (at most 30 days) and notes the language of the content. It does not differentiate itself from the sibling recent_rule_changes, leaving the agent to infer the boundary between 'notices' and 'rule changes'.
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?
Usage is only implied: the 30-day cap and the caveat that records 'are not verified current rules' hint that this is for raw recent announcements rather than authoritative rule lookups. It never names an alternative tool or states explicitly when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recent_rule_changesARead-onlyIdempotentInspect
CEC published rule changes: margin, price limits, position/opening limits, fees, delivery and listing. Requested window at most 90 days; reports actual available window, never current parameter history. Official Chinese exchange notices take precedence.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| topic | No | ||
| product | No | ||
| exchange | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, open-world, non-destructive, so the safety bar is covered. The description then adds genuinely new behavior: the 90-day window cap, the fact that the response reports the *actual* available window rather than the requested one, that current parameter history is never returned, and that official Chinese exchange notices override.
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?
Three dense sentences with the purpose front-loaded and no filler; the constraint and precedence notes follow in priority order. Slightly compressed to the point of being cryptic in the last clause ('official Chinese exchange notices take precedence'), which costs a point.
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?
No output schema exists, and the description does sketch the return scope (actual window, notice precedence), which helps. But with four parameters at 0% schema coverage, two of them (`product`, `exchange`) are left completely undefined, so an agent cannot confidently supply them from this description alone.
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 has to carry the load and only partly does. It explains `days` (requested window, capped, actual window reported back) and implicitly maps `topic` to the listed categories, but `product` (pattern-constrained code) and `exchange` are never mentioned at all.
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?
Names a specific resource (CEC published rule changes) and enumerates the covered topics: margin, price limits, position/opening limits, fees, delivery, listing. That is enough to separate it from siblings like recent_notices or contract_expiry, though the description never explicitly contrasts itself with them.
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?
Gives a hard usage constraint (window at most 90 days) and an explicit when-not ('never current parameter history'), which tells the agent this is historical/announcement data, not live parameters. It stops short of naming an alternative tool for live values, so it is not a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_dayCRead-onlyIdempotentInspect
Exchange-local trading date and civil/incoming night attribution. Mainland China and the 24 MO scopes; SGX is equity/FX/rates, HKEX is cash equities. Outside published coverage is unknown. Official exchange notices take precedence.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| exchange | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description does add real behavioral context — coverage is bounded and unknown outside published scopes, and exchange notices override tool output — but says nothing about the return shape or how partial coverage manifests.
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?
It is short, but the front-loaded sentence is opaque jargon ("civil/incoming night attribution") and "24 MO scopes" is unexplained. Four fragments that don't build a clear picture rather than one that earns every word.
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?
No output schema exists, so the description is the only source for return values, and it provides none. For a 2-parameter calendar tool whose exchange argument has no enum and whose date argument is undocumented, an agent cannot confidently construct a call from this text.
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 carries the full burden. It hints at valid exchange domains (Mainland China, SGX, HKEX, a cryptic "24 MO scopes") but enumerates nothing for a free-form 40-char string with no enum, and the optional `date` parameter is never mentioned at all.
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?
"Exchange-local trading date and civil/incoming night attribution" names the domain (trading calendars) but never states a verb or what the tool actually returns — a boolean trading-day check, a resolved session date, or a night-attribution object. The exchange-scope fragments ("SGX is equity/FX/rates, HKEX is cash equities") add subject matter but not a crisp purpose statement.
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?
There is no statement of when to call this versus siblings like trading_hours or next_closure. "Outside published coverage is unknown" and "Official exchange notices take precedence" are data-authority caveats, not usage guidance, and no preconditions or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_hoursCRead-onlyIdempotentInspect
FC product session templates, explicit day-offset units and special hours under data contract v0.1. Date selects the exchange-local schedule; no real-time market status or prices. Missing prerequisites are unknown. Official exchange notices take precedence.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| product | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds some useful behavioral context: a data contract version, exchange-local schedule selection, unknown prerequisites, and precedence of official exchange notices. It does not contradict the annotations, but it remains vague about return shape and edge-case behavior.
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 short and avoids unnecessary repetition. It is not perfectly front-loaded because the first sentence is a dense noun phrase rather than a clear action statement, but every sentence is brief and contributes some scope or caveat.
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?
There is no output schema, so the description should explain what the returned session templates and special hours look like, but it does not. It also leaves the required product parameter unexplained and does not clarify how this tool relates to the closely named sibling trading_day. For a two-parameter read-only tool with zero schema coverage, the definition is not complete enough.
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 clarify both parameters. It explains that date selects the exchange-local schedule, which adds meaning for the date parameter. However, it does not explain the required product parameter beyond the undefined phrase 'FC product', leaving the most important required input under-specified.
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 points to session templates and special hours and says that the date selects the exchange-local schedule, so the resource area is inferable. However, it never states a clear verb such as 'get' or 'retrieve', and terms like 'FC product' and 'day-offset units' are left undefined. It also does not explicitly distinguish this tool from siblings such as trading_day or next_closure.
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 gives one exclusion by saying there is no real-time market status or prices, which implies this is not a live-status tool. But it does not say when to choose this tool over trading_day, next_closure, or the notices tools, and there are no named alternatives or positive usage conditions.
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.
6 tool updates
- First observed
contract_expiry - First observed
next_closure - First observed
recent_notices - First observed
recent_rule_changes - First observed
trading_day - First observed
trading_hours
Related MCP Connectors
China working-day data, UK bank holidays, IANA time zones and deterministic business deadlines.
Business days, T+N settlement dates and holidays for FX, banks, payments and exchanges.
FOMC/NFP/CPI economic calendar plus prop-firm news-restriction window checks for futures traders.
China holidays and lunar calendar lookup, solar-to-lunar conversion and yearly schedule.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to query China's statutory public holidays and makeup-workday schedules, and convert solar dates to lunar dates with zodiac and ganzhi details.MIT
- AlicenseNot gradedqualityCmaintenanceEnables querying Chinese A-share and index financial data, including real-time quotes, historical bars, and index snapshots, with built-in fallback for unstable endpoints.MIT
- AlicenseAqualityBmaintenanceStructured A-share announcement event feed. 16 MCP tools, 13 event types.161MIT
- AlicenseAqualityAmaintenanceTrue solar time (longitude correction + equation of time), exact moments of the 24 Chinese solar terms for any year, and China 1986–1991 DST handling for BaZi birth-time conversion.3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.