Seiche — world-markets evidence terminal
Server Details
Money, FX, capital-market and metadata-only China macro evidence with source clocks and limits.
- Status
- Healthy
- Uptime
- 98.5% over 68 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- beepboop2025/seiche
- GitHub Stars
- 1
- Server Listing
- Seiche — Funding and FX Evidence
TDQS
Scored across 16 tools
Most tools target clearly distinct evidence domains, and descriptions explicitly cross-reference alternatives such as funding_stress_now versus money_market_context versus trade_safety_risk_context. The remaining friction is the cluster of overview/context tools (world_markets_context, money_market_context, research_network) and the fixed guard payload, which an agent may still need to reason about before selecting.
All names use lowercase snake_case, but the conventions are mixed: noun phrases, domain_context names, a _now suffix, and action-like workbench/backtest/network names. The names are readable and domain-evocative, but they do not follow a predictable verb_noun pattern.
Sixteen tools is slightly above the ideal 3-15 band, but the breadth reflects a multi-domain evidence terminal covering funding, FX, oil, gold, crypto, India, flows, health, discovery, and backtests. Each tool has a defensible role, though some overview/context tools could potentially be consolidated.
The surface covers the evidence lifecycle well: current readings, historical analogs, backtest credibility, data health, article retrieval, dataset discovery, and multiple market domains. Minor gaps remain, notably no generic historical funding/money-market time-series query and only curated/partial broader world-markets coverage such as equities or credit.
Available Tools
16 toolscrypto_stress_recordWrecks: crypto episodes vs the funding boardARead-onlyIdempotentInspect
Labelled crypto stress episodes (Black Thursday 2020, Terra, FTX, the SVB/USDC weekend, the Oct-2025 liquidation cascade, the Ethena unwind) replayed with causal truncation but final/current-vintage inputs against the dollar-funding board. External wrecks show transmission; crypto-native wrecks show the board correctly staying quiet. Use for any 'does TradFi funding stress reach crypto' question, grounded in the record.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| reason | No | |
| status | No | |
| reading | No | |
| category | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool read-only and idempotent, and the description adds useful behavioral context: causal truncation with final/current-vintage inputs, and the expected result pattern that external wrecks transmit while crypto-native wrecks do not move the board. Terms like 'causal truncation' and 'current-vintage' are not unpacked, which keeps this from a 5.
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 sentences front-load the subject, give concrete examples, state the interpretive behavior, and end with explicit usage guidance. Every sentence earns its place and there is no 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 zero-parameter, read-only, idempotent tool with an output schema, the description sufficiently covers purpose, dataset contents, behavioral interpretation, and usage context. The output schema handles return-value details, so no further structured information 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?
The tool has zero parameters and 100% schema coverage, so the description carries no parameter-semantics burden. The zero-parameter baseline of 4 is appropriate; no unnecessary parameter details are introduced.
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 names a specific resource — labelled crypto stress episodes replayed against the dollar-funding board — and a concrete question it answers: whether TradFi funding stress reaches crypto. The named episodes and interpretive framing distinguish it from the broader sibling market-context tools.
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?
It explicitly says 'Use for any ... question, grounded in the record,' which gives clear when-to-use guidance. It does not name alternatives or state when not to use it, so it stops short of full exclusion/alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
data_healthData freshness & provenanceARead-onlyIdempotentInspect
Freshness, provenance, and fault status for every underlying series (FRED, NY Fed, OFR, Treasury). Call this to confirm the board is current before relying on a reading.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| faults | No | |
| reason | No | |
| status | No | |
| reading | No | |
| version | No | |
| category | No | |
| provenance | No | |
| generated_at | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety. The description adds useful context about the tool's scope (which series are covered) and that it reports 'fault status', which implies error detection. No contradiction with annotations and no additional side-effect disclosure needed for a read-only 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 two sentences with no wasted words. It front-loads the core purpose and then gives a usage directive, making every sentence earn 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?
The tool is simple (0 parameters, read-only, output schema provided) and the description fully covers when and why to use it, along with the data sources involved. The output schema likely captures return details, so the description does not need to explain them.
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 parameters, so there is no parameter semantics to clarify. Per the baseline, a zero-parameter tool receives a 4; the description correctly implies the tool takes no inputs and runs globally, which is consistent with 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 states a specific function—reporting freshness, provenance, and fault status for underlying data series—and names the concrete sources (FRED, NY Fed, OFR, Treasury). It also gives an actionable framing ('Call this to confirm the board is current') that distinguishes it from the sibling tools, which cover market or funding contexts rather than data health.
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 a clear when-to-use directive: 'Call this to confirm the board is current before relying on a reading.' This is explicit context for its intended use, though it does not mention when not to use it or name alternatives; given the uniqueness of the tool among siblings, this is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
funding_stress_nowCurrent funding-stress readARead-onlyIdempotentInspect
Read the current US dollar funding-stress conclusion. Choose this for the headline regime and its drivers; use money_market_context for detailed rate and liquidity metrics, or data_health to inspect input freshness. Returns a 0-100 composite index, the regime (CALM/EROSION/STRAIN/STRESS), per-component decomposition, the market-stress 'Tell', and any data faults. Preserve the source dates and missing evidence when reporting the reading.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| tell | No | |
| as_of | No | |
| proof | No | |
| faults | No | |
| reason | No | |
| schema | No | |
| status | No | |
| reading | No | |
| version | No | |
| category | No | |
| delivery | No | |
| headline | No | |
| composite | No | |
| editorial | No | |
| conclusion | No | |
| data_quality | No | |
| generated_at | No |
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 adds real behavioral value beyond that: it tells the agent the reading is a 0-100 composite with named regimes and per-component decomposition, and instructs it to preserve source dates and missing evidence when reporting — a non-obvious reporting constraint.
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 sentences, front-loaded with the purpose, then routing, then reporting constraint. Dense but every clause carries distinct information — no restatement of the name or title.
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?
An output schema exists, so return values need not be enumerated, yet the description still summarizes the payload shape (index, regime, decomposition, Tell, data faults) and adds the evidence-preservation rule. With annotations covering safety, nothing an agent needs to call this correctly 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?
The tool takes no parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The description correctly presents this as a zero-argument read rather than implying hidden inputs.
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 and resource: 'Read the current US dollar funding-stress conclusion.' It further names the headline scope (regime and drivers), which distinguishes it from the metric-detail tools in the same family.
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?
Explicit routing: 'Choose this for the headline regime and its drivers; use money_market_context for detailed rate and liquidity metrics, or data_health to inspect input freshness.' Both alternatives are named with the condition that selects them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fx_materials_passageThe Estuary: FX/material pressure and PassageARead-onlyIdempotentInspect
The live upstream FX and physical-material pressure read versus funding already priced in SOFR and commercial paper, with the Passage's discovery/holdout ledger, de-clustered analogs, dollar-system context and settlement scenarios. Use for currency weakness, commodity working capital, FX settlement, or whether trade-flow cash pressure is reaching money markets. Context only; an earned link is stable association, not causation.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| as_of | No | |
| reason | No | |
| schema | No | |
| status | No | |
| analogs | No | |
| caveats | No | |
| leaders | No | |
| passage | No | |
| reading | No | |
| sources | No | |
| category | No | |
| headline | No | |
| scenario | No | |
| fx_breadth | No | |
| context_only | No | |
| generated_at | No | |
| dollar_system | No | |
| coverage_matrix | No | |
| materials_breadth | No | |
| settlement_structure | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false DNA, so the safety profile is covered. The description adds value by stating 'Context only' and clarifying that an earned link is association, not causation, which is a meaningful behavioral caveat. It does not contradict the annotations.
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 dense and jargon-heavy (e.g., 'de-clustered analogs', 'discovery/holdout ledger'), requiring interpretation. It packs much information into two sentences and does not start with a crisp one-liner, making it more complex than necessary for quick comprehension. Still, it avoids 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 tool has no required parameters and includes an output schema, so return values are covered. The description integrates multiple context signals (funding, analogs, dollar-system) and provides enough scope for an agent to decide when to invoke it relative to its niche. It does not explicitly mention caveats like latency or data refresh, but given the complexity of the tool, it is sufficiently 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?
The tool takes no parametersaint, so there is nothing to explain beyond that. The description provides context about what the tool outputs (pressure signals, ledger details), which indirectly conveys purpose, but since schema coverage is 100% (empty), the baseline for zero params is 4. The description adds enough context to compensate.
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 specifies the tool as a live view of upstream FX and physical-material pressure relative to funding metrics, with a distinct scope including Passage ledger and analogs. It does not use a sharp verb+resource structure but is clearly distinguished from siblings like funding_stress_now and world_markets_context by its unique focus on trade-flow cash pressure and settlement scenarios.
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 use cases: currency weakness, commodity working capital, FX settlement, and trade-flow cash pressure reaching money markets. It cautions that context is not causal. However, it does not explicitly contrast with sibling tools or state when not to use it, so it is informative but not fully comparative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gift_city_contextGIFT City and India–UAE funding deskARead-onlyIdempotentInspect
Read dated USD/INR funding, separate ECB and CBUAE VAT FX references, and CFTC COMEX gold positioning. Cache-only research with source clocks; no executable prices or regulatory eligibility determination.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| gold | No | |
| forex | No | |
| reason | No | |
| schema | No | |
| status | No | |
| funding | No | |
| sources | No | |
| category | No | |
| eligibility | No | |
| methodology | No | |
| context_only | No | |
| generated_at | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, and closed-world behavior. The description adds meaningful context beyond that: cache-only operation, source clocks, and the limitation that no executable prices or regulatory eligibility determination are provided. It does not cover auth or rate limits, but those are less central here.
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 are front-loaded with purpose and then bounded by constraints. Every clause contributes needed scope or limitation, with no filler or 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?
With no input parameters, an output schema present, and rich annotations, the description supplies enough context to select and invoke the tool correctly. It clarifies the research-only, cache-only nature and data domains, though it could be slightly more explicit about how the source clocks affect use.
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 tool has zero input parameters, so there are no parameter semantics to clarify. Per the scoring baseline for a parameterless tool, a 4 is appropriate; the description adds no contradictory or misleading parameter information.
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 ('Read') and enumerates distinct resources: dated USD/INR funding, ECB/CBUAE VAT FX references, and CFTC COMEX gold positioning. The GIFT City and India–UAE framing plus the cache-only research limitation distinguishes it from broader siblings like funding_stress_now or world_markets_context.
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?
It states a clear context ('Cache-only research with source clocks') and an exclusion ('no executable prices or regulatory eligibility determination'), telling the agent when this tool is appropriate. However, it does not name a sibling alternative to use instead when executable or regulatory data is needed, which keeps it from a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gold_inventory_carryGold inventory financing scenarioARead-onlyIdempotentInspect
Calculate fine gold, simple financing cost and INR per fine gram from explicit decimal-string assumptions. All inputs are caller supplied, no quote is verified, and inputs are not persisted.
| Name | Required | Description | Default |
|---|---|---|---|
| days | Yes | ||
| fees_usd | Yes | ||
| fineness | Yes | ||
| day_count | No | ||
| quantity_kg | Yes | ||
| fx_inr_per_usd | Yes | ||
| annual_rate_pct | Yes | ||
| price_usd_per_oz | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| inputs | No | |
| reason | No | |
| schema | No | |
| status | No | |
| outputs | No | |
| category | No | |
| persisted | No | |
| assumptions | No | |
| eligibility | No | |
| context_only | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety profile is covered. The description adds substantive non-annotation behavior: no external quote verification and no persistence of inputs, which is exactly what an agent needs to know about a simulation 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?
Two tight sentences, no padding. The primary output statement comes first, followed by the crucial caveat about verification and persistence.
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?
An output schema exists, so return values need no explanation, and statelessness is clearly disclosed. The main residual gap is that with 8 parameters at 0% schema coverage, the description does not define units or semantics for the inputs beyond the string-format convention.
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 flags the crucial convention that inputs are decimal strings, which matters given the string patterns, but says nothing about individual parameters such as day_count (enum 360/365), fineness scale, or unit conventions for fees/days.
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 ('Calculate') with concrete outputs (fine gold, simple financing cost, INR per fine gram) and the basis (explicit decimal-string assumptions). Sibling tools are mostly unrelated domains, so no routing conflict, though no explicit differentiation is offered.
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 clause 'All inputs are caller supplied, no quote is verified, and inputs are not persisted' tells the agent this is a self-contained deterministic calculation rather than a data lookup, which implies usage. It does not state when to prefer this over alternatives or any prerequisites (e.g., all amounts must be supplied as strings).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
historical_analogsNearest historical analogsARead-onlyIdempotentInspect
The historical days most similar to today's funding conditions, and how often those analogs led to a stress event, plus a novelty flag for whether today has any close precedent. Use to ground a 'what usually happens from here' question in real history.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| as_of | No | |
| reason | No | |
| status | No | |
| novelty | No | |
| reading | No | |
| category | No | |
| event_odds | No | |
| horizon_bd | No | |
| forward_fan | No | |
| hindcast_skill | No | |
| nearest_analogs | No | |
| historical_evidence | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds value by explaining what the tool returns (how often analogs led to stress, novelty flag) and its purpose in grounding future prediction in history, which goes beyond the annotation metadata.
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 a single, well-structured sentence that efficiently conveys the core function, the output components, and a usage hint. Every clause adds necessary information 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?
Given the tool has no parameters, clear annotations, and an output schema (not shown but indicated), the description is complete. It explains what it does, what it returns, and when to use it, covering all necessary aspects for a read-only historical-analog 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 tool has zero parameters, so the baseline is 4. The description implicitly states that it uses 'today's funding conditions' as input context, which clarifies the conceptual basis even though no parameters are exposed in 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 the tool identifies historical days most similar to today's funding conditions and provides stress-event frequency and a novelty flag. It names the specific resource ('historical analogs') and the action (finding nearest analogs), which distinguishes it from siblings like 'funding_stress_now' and 'money_market_context'.
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 explicitly says to use it to ground 'what usually happens from here' questions in real history, providing a clear usage context. It doesn't explicitly list when not to use it or name alternative tools, but the purpose is specific enough that the intended use is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
institutional_flowsInstitutional flows: who is positioned whereARead-onlyIdempotentInspect
Hedge-fund / pension / sovereign positioning nowcast from public prints: the Treasury basis-trade size proxy (CFTC leveraged-fund net short, with a funding-fragility flag), asset-manager duration demand, foreign-official custody flows (H.4.1), a mixed-frequency fused positioning index with uncertainty bands, and how self-exciting stress events currently are (Hawkes branching ratio). Weekly cadence, point-in-time. Ask this when a question involves hedge fund leverage, the basis trade, pension duration bids, or sovereigns buying/selling Treasuries. Built from free public data.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| as_of | No | |
| reason | No | |
| status | No | |
| reading | No | |
| category | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint, so the safety profile is covered. The description adds valuable behavioral context: data source (public prints), frequency (weekly), point-in-time nature, and internal components like funding-fragility flag and Hawkes branching ratio. It does not mention rate limits or auth, but those are less critical for a read-only tool. No contradiction with annotations.
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 a single, dense paragraph but every sentence earns its place: first defines the core function, second lists the specific metrics, third gives usage guidance and data source. It is front-loaded with the purpose and avoids fluff. Appropriately concise for the complexity.
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 zero parameters and an output schema present, the description need not detail return values. It covers data source, cadence, usage scenarios, and some internal characteristics (uncertainty bands, Hawkes ratio). For a complex financial data tool, it provides sufficient context for an agent to decide when to call it and what to expect.
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 tool has zero parameters, so the baseline is 4 per guidelines. The description does not need to explain parameters because there are none. The schema coverage is 100% (empty), so no gaps exist.
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 provides a nowcast of institutional positioning (hedge fund, pension, sovereign) from public data, and enumerates specific components like basis-trade size proxy, duration demand, and custody flows. It distinguishes itself from siblings by naming unique metrics (CFTC leveraged-fund net short, H.4.1 flows) and specifies usage 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?
Explicitly states when to use: 'Ask this when a question involves hedge fund leverage, the basis trade, pension duration bids, or sovereigns buying/selling Treasuries.' It also mentions weekly cadence and point-in-time nature, which implies freshness constraints. However, it does not name alternatives or provide when-not-to-use exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
latest_articleLatest evidence-led articleARead-onlyIdempotentInspect
The latest available full-text Seiche editorial, which may predate today. Returns the canonical headline, dek, Markdown, publication date, evidence clock, generation mode and passing publication receipt. Report its publication and evidence dates; do not describe an older edition as today's analysis. Use funding_stress_now for current funding conditions, and quote the article without regenerating facts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | |
| ok | No | False for a tool failure. |
| url | No | |
| title | No | |
| reason | No | |
| status | No | |
| summary | No | |
| category | No | |
| content_text | No | |
| _liquidity_lab | No | |
| date_published | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive behavior, so safety is covered. The description adds genuine non-structured context: the article may predate today, must not be mislabeled as current analysis, and should be quoted rather than regenerated. It does not add rate limits or auth notes, but the staleness caveat is meaningful.
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 front-loaded sentences: identity and scope first, then a return-field enumeration, then usage constraints. The return-field list slightly duplicates the existing output schema, but the rest is tight and each instruction 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?
With an output schema present, return values need no explanation, yet the description still gives an agent everything required to call and correctly report the result: identity, staleness caveat, and usage rules. Nothing material is missing for a zero-parameter read 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 tool takes zero parameters, so the baseline is 4 and there is no parameter semantics to compensate for. The description correctly omits parameter discussion.
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 (the latest full-text Seiche editorial) and its scope, including the caveat that it may predate today. It distinguishes itself from sibling funding_stress_now by explicitly routing current-conditions queries there, so an agent can tell the two apart without opening schemas.
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?
States when to use it (quote the editorial), when to redirect (funding_stress_now for current funding conditions), and how to use the output (report publication and evidence dates, don't present an older edition as today's analysis). No condition is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_workbenchQuery FX and accepted China historiesARead-onlyIdempotentInspect
Query dated observations for a selected currency pair and optional accepted China annual series. Choose this for a time series, same-date FX cross, or observed-interval change; use world_markets_context for a chartless overview and money_market_context for funding-desk metrics. Read cached official FX reference histories and same-date currency crosses, with native units, provenance, age and observed-interval changes. Inspect owner-accepted Palimpsest China annual economic series and revision-aware history beside the CNY reference. Daily fixings, annual context and licensed gaps remain distinct. No collection, model fitting, executable quotes or scoring.
| Name | Required | Description | Default |
|---|---|---|---|
| base | No | Base currency: each returned value is quote-currency units per one base unit. Must differ from quote. | USD |
| days | No | Calendar-day FX lookback from today, not an observation count. Only cached observations on shared dates are returned; gaps are not filled. | |
| quote | No | Quote currency for the selected pair's dated history; must be supported by provider and differ from base. | CNY |
| provider | No | Official FX reference source. Both currencies must be supported by this provider; the response lists its currencies. | h10 |
| china_series | No | Optional exact cn.wdi.* identifier from the response's china.series catalog. Omit to select the first accepted series, if available; never invent an ID or infer withheld values. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| china | No | |
| forex | No | |
| reason | No | |
| schema | No | |
| status | No | |
| category | No | |
| selection | No | |
| eligibility | No | |
| context_only | No | |
| generated_at | No | |
| money_markets | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world access. The description adds real behavioral context beyond that: data is cached, gaps are not filled, return values carry native units, provenance and age, and China series are revision-aware with daily fixings and licensed gaps kept distinct. It stops short of noting any rate limits or freshness caveats, so it is useful but not exhaustive.
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?
Front-loaded with the core action and the when-to-use routing before the supporting detail, and every sentence carries content. It is slightly dense with domain jargon ('owner-accepted Palimpsest China annual economic series') but not padded.
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 an output schema present, the description need not explain return values, and it correctly explains where the china_series identifier comes from ('the response's china.series catalog') and that providers list their supported currencies. Coverage of the closed-world, no-scoring boundary makes it complete enough for a zero-required-param 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 100%, so base, quote, days, provider and china_series are all documented in the schema (including the calendar-day-not-count semantics of days and the cn.wdi.* constraint on china_series). The description repeats the general intent of these params but adds no new syntax, defaults, or format detail beyond the schema, so the baseline 3 applies.
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 names a specific verb (query), resources (dated FX observations plus optional accepted China annual series), and the exact output modes (time series, same-date FX cross, observed-interval change). It also carves out scope against siblings, so an agent can distinguish this from world_markets_context and money_market_context without reading either schema.
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?
Explicit selection guidance: 'Choose this for a time series, same-date FX cross, or observed-interval change; use world_markets_context for a chartless overview and money_market_context for funding-desk metrics.' Both the trigger and the two alternatives are named, plus a negative scope list (no collection, model fitting, executable quotes or scoring).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
money_market_contextInspect USD, India and country funding metricsARead-onlyIdempotentInspect
Inspect a funding desk's rates, spreads, policy corridor, liquidity buffers and source-level evidence. Choose this for detailed funding metrics; use funding_stress_now for the headline US stress regime, world_markets_context for a cross-asset overview, or market_workbench for FX and accepted China time series. Start with section='summary' for USD. Use section='countries' for the public-source country catalog, or add country='JP' (a supported ISO alpha-2 code; UK is an alias for GB) for dated policy, funding, liquidity and sovereign references. Country coverage is partial and monthly references are explicitly separate from daily curves. Granular, descriptive USD money-market context from the already assembled desk: policy corridor and overnight spreads; SOFR/TGCR/BGCR distributions and tails; repo-segment rates and volumes; CP-Treasury spreads; bills and cash curve; liquidity buffers and Fed facilities; and MMF repo plumbing. Use section='india' for the India funding, RBI liquidity, policy and sovereign-curve desk from a bounded canonical observation read. It keeps benchmark identities, date alignment, curve movements and mechanism hypotheses separate. India defaults to view='full' for compatibility; prefer view='summary' for findings, constraints and an exact metric ID catalog, then view='metric' with metric_id for one complete evidence card. These India-only views are independent reads, not a pinned snapshot or pagination. Otherwise use optional section to request a compact summary, one named USD desk section, diagnostics, sources, methodology, or all context. Diagnostics count funding persistence, compare secured/unsecured benchmarks and show calendar cohorts with sample limits, without changing any score. Returns exact-date alignment, native-cadence changes, empirical own-history statistics, freshness, coverage, formulas, sources, and caveats as applicable. Chart history is always omitted. USD reads only an already completed cached or persisted snapshot; it never triggers collection or engine recomputation, while freshness is re-evaluated at response time. Context only: no causal, predictive, probability, or trade claim.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | India only: legacy full desk, compact findings/catalog, or one exact metric card. | full |
| country | No | Country code for section=countries only. Omit to list supported countries; UK aliases GB. | |
| section | No | Projection to return; defaults to the compact desk summary. | summary |
| metric_id | No | Exact ID from the India summary metric_catalog; required only for view=metric. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| asof | No | |
| india | No | Legacy full India desk, or opt-in summary with metric_catalog and freshness_summary, or exact metric with selection_status and selection_context. Missing/restricted cards retain their original status. |
| reason | No | |
| regime | No | |
| schema | No | |
| status | No | |
| caveats | No | |
| sources | No | |
| category | No | |
| coverage | No | |
| formulas | No | |
| sections | No | |
| countries | No | |
| freshness | No | |
| selection | No | |
| quant_read | No | |
| countercase | No | |
| diagnostics | No | |
| methodology | No | |
| context_only | No | |
| legal_notices | No | |
| plain_language | No | |
| section_catalog | No | |
| source_metadata | No | |
| strongest_signal | No | |
| available_selectors | No | |
| snapshot_generated_at | No | |
| chart_history_included | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent/non-destructive annotations, it discloses that USD reads only a cached/persisted snapshot and never triggers collection or recomputation, that freshness is re-evaluated at response time, that chart history is always omitted, and that diagnostics never change scores. These are real behavioral traits the annotations do not convey. It stops short of a 5 only because these facts are buried in dense prose rather than crisply 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?
Purpose and the sibling routing are front-loaded, which is good, but the remainder is a wall of prose interleaving USD, India, diagnostics, and output concerns across long run-on sentences. Most content earns its place given 14 enum sections, yet readability and scannability suffer.
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 complex multi-modal inspection tool with four params and an output schema, the description covers routing, section semantics, freshness guarantees, coverage caveats, and the 'context only, no causal/predictive/trade claim' boundary. An agent has everything needed to call it correctly without the output schema explaining returns.
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 100% schema coverage the baseline is 3, but the description adds genuine routing meaning: view='full' exists for compatibility while 'summary' then 'metric' is the preferred path, metric_id must come from the India summary catalog, and country is only valid with section=countries (UK aliases GB). It interprets defaults and dependencies rather than repeating enum 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 names a specific verb ('Inspect') and resource set (a funding desk's rates, spreads, policy corridor, liquidity buffers, source-level evidence), then explicitly distinguishes itself from three named siblings. An agent can select it against funding_stress_now, world_markets_context, and market_workbench without opening any schema.
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?
It gives explicit when-to-use routing for every sibling, then prescribes exact section/view choices ('Start with section=summary for USD', 'use section=india... prefer view=summary... then view=metric'). It even names exclusions and the country-coverage limitation, leaving little to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
oil_funding_contextOil × Funding transmission contextARead-onlyIdempotentInspect
Observed WTI/Brent, commercial-paper and SOFR−IORB evidence; Ballast's WTI/Henry Hub CFTC positioning, gross mark-displacement proxy, paying-side concentration and EIA inventory ledger; live Cushing stocks and the Brent−WTI spread kept separate from dated capacity, benchmark and chokepoint references; the change-on-change oil/CP association; plus explicitly scenario-only cargo-credit, margin and India cash arithmetic. Use when a question asks how oil or energy futures can transmit cash pressure into dollar funding. Ballast is not an observed margin call; dated structure is not live transit data; nothing here is a forecast, trade signal, or Seiche composite input.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| oil | No | |
| as_of | No | |
| india | No | |
| reason | No | |
| schema | No | |
| status | No | |
| ballast | No | |
| caveats | No | |
| funding | No | |
| reading | No | |
| sources | No | |
| category | No | |
| coupling | No | |
| scenario | No | |
| context_only | No | |
| generated_at | No | |
| inflation_policy | No | |
| market_structure | No | |
| channel_directions | No | |
| official_dollar_parking | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds valuable caveats about data provenance (e.g., 'Ballast is not an observed margin call', 'dated structure is not live transit data', 'nothing here is a forecast, trade signal, or Seiche composite input') which clarify the nature of the information beyond the annotations. It also notes that certain items are 'scenario-only' arithmetic, adding transparency about the data's reliability and limitations.
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 a single, dense run-on sentence packed with many semicolon-separated clauses and specialized jargon. While it is information-dense, it is not concise or well-structured for quick comprehension. It would benefit from breaking into separate sentences or bullet points. The sheer volume of detail makes it harder to parse, and every word is not earning its keep due to redundancy (e.g., listing every data category in a list-like manner without clear hierarchy).
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 parameters and an output schema already present, the description's job is to explain the tool's context and content. It extensively lists the data elements and explicitly marks what is scenario-only versus observed, which provides a comprehensive picture. It does not need to explain return values because the output schema covers that. The description is thorough and leaves little ambiguity about what the tool provides, despite being verbose.
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 tool has zero parameters and an empty schema, so there is nothing to explain. According to the rubric, 0 parameters yields a baseline score of 4. The description does not need to compensate for schema gaps since there are none. It provides a rich description of the data content, which effectively conveys what the tool returns, even though there are no parameters to document.
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 defines the tool's purpose: to provide oil/energy futures transmission context into dollar funding. It enumerates specific data types (WTI/Brent, CP, SOFR-IORB, CFTC positioning, etc.) and explicitly states when to use it ('Use when a question asks how oil or energy futures can transmit cash pressure into dollar funding'). This distinguishes it from sibling tools like 'funding_stress_now' and 'money_market_context' by focusing on oil-specific transmission mechanics.
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 an explicit when-to-use condition ('Use when...') which serves as clear usage guidance. However, it does not explicitly mention when not to use it or suggest alternative tools, but the condition is precise enough. The exclusions (e.g., 'Ballast is not an observed margin call') are more about data interpretation than tool selection, so they don't fully cover usage alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
proof_backtestPROOF: the honest track recordARead-onlyIdempotentInspect
The backtest scoreboard, stated honestly: recall and precision with 95% confidence intervals over labelled funding events, an orthogonal robustness test, every named episode (hits and misses), and the caveats. Use to judge how much to trust the readings.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| as_of | No | |
| reason | No | |
| sample | No | |
| status | No | |
| caveats | No | |
| reading | No | |
| category | No | |
| episodes | No | |
| orthogonal | No | |
| event_capture | No | |
| historical_evidence | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive. The description adds content details (recall, precision, confidence intervals, robustness test, episodes, caveats) and honesty framing, which goes beyond the safety profile without contradicting it.
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?
Single well-structured sentence that front-loads 'backtest scoreboard' and lists components concisely. Every element earns its place, 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?
Given the tool has an output schema (not shown but assumed) and annotations cover safety, the description fully explains what the tool provides: metrics, episodes, caveats. No missing information for an agent to decide invocation.
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?
No parameters exist, so schema coverage is trivially 100%. Baseline for 0 params is 4, and description doesn't need to add parameter info. It doesn't, so score is 4.
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?
Explicitly states it's a 'backtest scoreboard' with specific metrics (recall, precision, confidence intervals) and components (robustness test, episodes, caveats). Clearly distinct from sibling tools like crypto_stress_now or latest_article by focusing on the track record.
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?
Provides a clear when-to-use directive ('Use to judge how much to trust the readings'), but does not explicitly state exclusions or name alternative tools. The context is clear enough, though not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
research_networkDiscover datasets and sibling research toolsARead-onlyIdempotentInspect
Discover which published datasets and sibling-product tools can answer a research question. Choose this for catalog discovery and handoff links, not for market observations: use world_markets_context for a market overview or market_workbench for supported FX and China histories. Explore the Palimpsest dataset catalog by topic, with source clocks, rights, freshness and pagination. Includes Seiche's separately completed funding context and explicit research steps into institution filings, exit liquidity and NarcoScope's granular global data. Source metadata and funding interpretations stay distinct. May fetch the published catalog; does not retrieve underlying dataset values or call the suggested sibling tools. No source collection, score changes, causal joins or trading authority.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum dataset metadata entries per page; suggested research steps are separate from this page size. | |
| topic | No | Research topic used to filter dataset metadata and select suggested sibling-product tools. This does not query those tools or retrieve dataset values. | all |
| offset | No | Zero-based offset within the filtered catalog. Use the returned next_offset while keeping topic and limit unchanged. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | False for a tool failure. |
| reason | No | |
| schema | No | |
| source | No | |
| status | No | |
| category | No | |
| datasets | No | |
| selection | No | |
| next_steps | No | |
| context_only | No | |
| funding_context | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld=false/idempotent/non-destructive, and the description adds real behavioral boundaries beyond them: 'May fetch the published catalog; does not retrieve underlying dataset values or call the suggested sibling tools' plus 'No source collection, score changes, causal joins or trading authority.' It also flags an output distinction ('Source metadata and funding interpretations stay distinct').
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?
Front-loads purpose and alternatives in the first two sentences, and every sentence carries distinct scope information. Dense but not padded; the middle sentence listing funding/institution/liquidity data is the least readable but still informative.
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 read-only discovery tool with a full output schema, the description covers scope, exclusions, alternatives, and explicit non-behaviors. Return values need not be explained since an output schema exists, so nothing an agent needs 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?
Schema coverage is 100%, so the baseline is 3. The description adds semantic mapping the enum alone lacks, tying topics to meaning ('funding context', 'institution filings, exit liquidity and NarcoScope's granular global data') and describing pagination intent via the catalog-by-topic framing.
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 and resource ('Discover which published datasets and sibling-product tools can answer a research question') and names the sibling tools it is distinct from (world_markets_context, market_workbench). An agent can route to or away from it without opening any schema.
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?
Explicitly frames the selection condition: 'Choose this for catalog discovery and handoff links, not for market observations,' then names alternatives for each excluded case. Both when-to-use and when-not-to-use are covered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trade_safety_risk_contextRead cached funding metadata for automated guardsARead-onlyIdempotentInspect
Read a small, fixed funding-state payload for an automated guard's freshness and coverage checks. Choose this only when that integration needs the bounded metadata contract; use funding_stress_now for research explanations and data_health for per-source diagnostics. A deterministic, bounded projection of the last completed Seiche board: funding regime, 0-100 stress index, coverage, source staleness counts, snapshot clock, and conservative evidence clock. It repeats the rights check and never collects, fits, calls a network source, reads a notary ledger, or contacts a broker. This is metadata-only derived context, not order-bound, non-executable, never real-money eligible, and it does not evaluate stream attestations or treat them as per-order authority.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| state | No | |
| clocks | No | |
| reason | No | |
| regime | No | |
| schema | No | |
| status | No | |
| category | No | |
| staleness | No | |
| disclaimer | No | |
| executable | No | |
| source_url | No | |
| attestation | No | |
| fault_count | No | |
| limitations | No | |
| context_only | No | |
| coverage_pct | No | |
| stress_index | No | |
| rights_status | No | |
| evidence_class | No | |
| projection_mode | No | |
| canonicalization | No | |
| executable_quote | No | |
| attestation_state | No | |
| projection_sha256 | No | |
| can_authorize_order | No | |
| real_money_eligible | No | |
| request_time_broker | No | |
| request_time_notary | No | |
| request_time_network | No | |
| request_time_collection | No | |
| source_snapshot_version | No | |
| request_time_model_fitting | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, closed-world, but the description adds substantial context beyond them: it 'repeats the rights check' and never collects, fits, calls a network source, reads a notary ledger, or contacts a broker. It also declares the payload is metadata-only, non-executable, non-order-bound, and never real-money eligible.
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?
Front-loaded with purpose and routing before the payload enumeration, and the operational constraints are grouped sensibly. The final clause on stream attestations and per-order authority is dense and somewhat redundant with the earlier 'not order-bound / non-executable' phrasing, costing a little efficiency.
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?
An output schema exists, so return values need not be spelled out, yet the description still enumerates the payload fields for routing purposes. Combined with the explicit safety and non-execution guarantees, an agent has everything needed to call it correctly.
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?
Zero parameters, so the baseline is 4. The schema coverage is 100% and additionalProperties is false, and the description correctly implies a no-argument call by describing the payload as a fixed, deterministic projection.
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 and resource ('Read a small, fixed funding-state payload') and scopes it to automated guard freshness/coverage checks. It then names the payload contents (funding regime, stress index, coverage, staleness, clocks), making it unmistakable relative to siblings.
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?
Explicit routing: 'Choose this only when that integration needs the bounded metadata contract; use funding_stress_now for research explanations and data_health for per-source diagnostics.' Both the condition for use and the alternatives with their own conditions are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
world_markets_contextSummarize cross-market conditions and coverageARead-onlyIdempotentInspect
Summarize the available money-market, FX, macro-capital and China evidence when a question spans markets or its scope is not yet clear. Start with section='summary', then select a relevant section. For detailed funding metrics use money_market_context; for dated FX/accepted China observations use market_workbench; for external dataset discovery use research_network. This chartless overview is not a time-series query. It projects only completed/public state into money_markets, forex, macro-capital transmission, China macro evidence, official references, methodology, or a compact summary. Every response carries snapshot/as-of clocks, canonical Seiche citation URLs, and explicit observed, derived, structural, restricted, and unavailable boundaries. The China structural catalog is unsigned; only status=restricted represents a verified Seiche owner-attested revision; both states keep NBS values, raw evidence, and history withheld. A separately operator-accepted economic_context may publish licensed World Bank WDI values with annual/structural freshness, distinct release, Palimpsest collection, and Seiche acceptance clocks. Those values are context only and never a live print, score, gauge, forecast, or signal. The sources selector is reference-only; use all when verified China context and its NBS source linkage must appear together. Coverage is curated and partial rather than exhaustive or uniformly live. It never triggers collection, repository history reads, or model fitting. Its named-field whitelist omits chart and history arrays for data minimization; that is not a per-record licensing audit. Capital coverage is limited to public positioning proxies, Treasury primary-market absorption, market stress, official liquidity and global dollar credit—not a security master, issuer-data service or consolidated tape. Use Undertow instead when the question is specifically about executable depth, liquidity-provider concentration, or position-sized exit cost.
| Name | Required | Description | Default |
|---|---|---|---|
| section | No | Projection to return; defaults to the compact cross-market summary. | summary |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| as_of | No | |
| forex | No | |
| scope | No | |
| clocks | No | |
| reason | No | |
| schema | No | |
| status | No | |
| sources | No | |
| summary | No | |
| category | No | |
| citation | No | |
| coverage | No | |
| selection | No | |
| disclaimer | No | |
| china_macro | No | Metadata-only NBS catalog. Structural is an unsigned code-owned catalog; restricted means a Seiche owner-attested revision was verified. A separate optional economic_context contains only operator-accepted annual World Bank WDI observations and remains ineligible for scores and gauges. |
| methodology | No | |
| context_only | No | |
| generated_at | No | |
| money_markets | No | |
| canonical_urls | No | |
| capital_markets | No | |
| status_definitions | No | |
| available_selectors | No | |
| chart_history_included | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive/closed-world, but the description adds substantial context: it never triggers collection, history reads, or model fitting; it carries snapshot/as-of clocks and citation URLs; the China structural catalog is unsigned and only status=restricted is owner-attested; NBS values and history are withheld; and capital coverage is explicitly bounded. This is rich disclosure well beyond the structured hints.
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?
Front-loaded with purpose and usage in the first two sentences, with routing and boundaries following. Every sentence carries information, but the middle section is dense with licensing/clock/WDI minutiae that an agent selecting (not interpreting) the tool could skim, so it is slightly over-full rather than wasteful.
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?
An output schema exists, so return values need not be explained, and the description still covers coverage limits, data-minimization whitelist, confidentiality boundaries, and sibling exclusions. For a multi-section overview tool with a single optional enum parameter, nothing needed to call it correctly 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?
Schema coverage is 100%, so the baseline is 3, but the description adds genuine selection semantics: default to section='summary', then pick a relevant section, and 'sources is reference-only; use all when verified China context and its NBS source linkage must appear together.' That is meaningful guidance the enum description alone does not provide.
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?
Opens with a specific verb and resource: 'Summarize the available money-market, FX, macro-capital and China evidence' for cross-market or ambiguous-scope questions. It explicitly distinguishes itself from named siblings (money_market_context, market_workbench, research_network, Undertow), so an agent can route without opening schemas.
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 explicit when-to-use ('question spans markets or its scope is not yet clear') and a recommended entry sequence ('Start with section=summary'). It names three alternatives with the exact conditions that select each, plus a fourth (Undertow) for executable-depth/liquidity questions, so when-not-to-use is also covered.
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.
2 tool updates
- Changed
market_workbench5 fields changed- added
Input schema / properties / base / descriptionAdded value: +"Base currency: each returned value is quote-currency units per one base unit. Must differ from quote." - added
Input schema / properties / china_series / descriptionAdded value: +"Optional exact cn.wdi.* identifier from the response's china.series catalog. Omit to select the first accepted series, if available; never invent an ID or infer withheld values." - added
Input schema / properties / days / descriptionAdded value: +"Calendar-day FX lookback from today, not an observation count. Only cached observations on shared dates are returned; gaps are not filled." - added
Input schema / properties / provider / descriptionAdded value: +"Official FX reference source. Both currencies must be supported by this provider; the response lists its currencies." - added
Input schema / properties / quote / descriptionAdded value: +"Quote currency for the selected pair's dated history; must be supported by provider and differ from base."
- Changed
research_network3 fields changed- added
Input schema / properties / limit / descriptionAdded value: +"Maximum dataset metadata entries per page; suggested research steps are separate from this page size." - added
Input schema / properties / offset / descriptionAdded value: +"Zero-based offset within the filtered catalog. Use the returned next_offset while keeping topic and limit unchanged." - added
Input schema / properties / topic / descriptionAdded value: +"Research topic used to filter dataset metadata and select suggested sibling-product tools. This does not query those tools or retrieve dataset values."
1 tool update
- Changed
money_market_context4 fields changed- added
Input schema / properties / metric_idAdded value: +{ + "description": "Exact ID from the India summary metric_catalog; required only for view=metric.", + "maxLength": 128, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / viewAdded value: +{ + "default": "full", + "description": "India only: legacy full desk, compact findings/catalog, or one exact metric card.", + "enum": [ + "full", + "summary", + "metric" + ], + "type": "string" +} - added
Output schema / properties / india / descriptionAdded value: +"Legacy full India desk, or opt-in summary with metric_catalog and freshness_summary, or exact metric with selection_status and selection_context. Missing/restricted cards retain their original status." - added
Output schema / properties / india / propertiesAdded value: +{ + "freshness_summary": { + "type": "object" + }, + "metric": { + "type": [ + "object", + "null" + ] + }, + "metric_catalog": { + "type": "array" + }, + "selection_context": { + "type": "object" + }, + "selection_status": { + "enum": [ + "found", + "not_found" + ], + "type": "string" + }, + "view": { + "enum": [ + "summary", + "metric" + ], + "type": "string" + } +}
1 tool update
- Changed
money_market_context6 fields changed- added
Input schema / properties / countryAdded value: +{ + "description": "Country code for section=countries only. Omit to list supported countries; UK aliases GB.", + "pattern": "^[A-Za-z]{2}$", + "type": "string" +} - changed
Input schema / properties / section / enumPrevious value: -[ - "summary", - "india", - "diagnostics", - "policy_corridor", - "secured_distributions", - "repo_segments", - "unsecured_funding", - "bills_cash_curve", - "liquidity_buffers", - "mmf_plumbing", - "sources", - "methodology", - "all" -]New value: +[ + "summary", + "india", + "countries", + "diagnostics", + "policy_corridor", + "secured_distributions", + "repo_segments", + "unsecured_funding", + "bills_cash_curve", + "liquidity_buffers", + "mmf_plumbing", + "sources", + "methodology", + "all" +] - changed
Output schema / descriptionPrevious value: -"Chartless USD money-market and India funding envelopes for supported selectors."New value: +"Chartless USD, India and country funding envelopes for supported selectors." - changed
Output schema / properties / available_selectors / items / enumPrevious value: -[ - "summary", - "india", - "diagnostics", - "policy_corridor", - "secured_distributions", - "repo_segments", - "unsecured_funding", - "bills_cash_curve", - "liquidity_buffers", - "mmf_plumbing", - "sources", - "methodology", - "all" -]New value: +[ + "summary", + "india", + "countries", + "diagnostics", + "policy_corridor", + "secured_distributions", + "repo_segments", + "unsecured_funding", + "bills_cash_curve", + "liquidity_buffers", + "mmf_plumbing", + "sources", + "methodology", + "all" +] - added
Output schema / properties / countriesAdded value: +{ + "type": "object" +} - changed
Output schema / properties / selection / enumPrevious value: -[ - "summary", - "india", - "diagnostics", - "policy_corridor", - "secured_distributions", - "repo_segments", - "unsecured_funding", - "bills_cash_curve", - "liquidity_buffers", - "mmf_plumbing", - "sources", - "methodology", - "all" -]New value: +[ + "summary", + "india", + "countries", + "diagnostics", + "policy_corridor", + "secured_distributions", + "repo_segments", + "unsecured_funding", + "bills_cash_curve", + "liquidity_buffers", + "mmf_plumbing", + "sources", + "methodology", + "all" +]
1 tool update
- Changed
money_market_context5 fields changed- changed
Input schema / properties / section / enumPrevious value: -[ - "summary", - "diagnostics", - "policy_corridor", - "secured_distributions", - "repo_segments", - "unsecured_funding", - "bills_cash_curve", - "liquidity_buffers", - "mmf_plumbing", - "sources", - "methodology", - "all" -]New value: +[ + "summary", + "india", + "diagnostics", + "policy_corridor", + "secured_distributions", + "repo_segments", + "unsecured_funding", + "bills_cash_curve", + "liquidity_buffers", + "mmf_plumbing", + "sources", + "methodology", + "all" +] - changed
Output schema / descriptionPrevious value: -"Chartless USD money-market desk envelope for every supported selector."New value: +"Chartless USD money-market and India funding envelopes for supported selectors." - changed
Output schema / properties / available_selectors / items / enumPrevious value: -[ - "summary", - "diagnostics", - "policy_corridor", - "secured_distributions", - "repo_segments", - "unsecured_funding", - "bills_cash_curve", - "liquidity_buffers", - "mmf_plumbing", - "sources", - "methodology", - "all" -]New value: +[ + "summary", + "india", + "diagnostics", + "policy_corridor", + "secured_distributions", + "repo_segments", + "unsecured_funding", + "bills_cash_curve", + "liquidity_buffers", + "mmf_plumbing", + "sources", + "methodology", + "all" +] - added
Output schema / properties / indiaAdded value: +{ + "type": "object" +} - changed
Output schema / properties / selection / enumPrevious value: -[ - "summary", - "diagnostics", - "policy_corridor", - "secured_distributions", - "repo_segments", - "unsecured_funding", - "bills_cash_curve", - "liquidity_buffers", - "mmf_plumbing", - "sources", - "methodology", - "all" -]New value: +[ + "summary", + "india", + "diagnostics", + "policy_corridor", + "secured_distributions", + "repo_segments", + "unsecured_funding", + "bills_cash_curve", + "liquidity_buffers", + "mmf_plumbing", + "sources", + "methodology", + "all" +]
2 tool updates
- Added
gift_city_context - Added
gold_inventory_carry
1 tool update
- Changed
trade_safety_risk_context3 fields changed- added
Output schema / properties / clocks / properties / all_provenance_as_ofAdded value: +{ + "type": [ + "string", + "null" + ] +} - added
Output schema / properties / clocks / properties / retired_sourcesAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "as_of": { + "type": "string" + }, + "last_observation": { + "type": "string" + }, + "mnemonic": { + "type": "string" + }, + "replacement": { + "type": "string" + }, + "retired_from": { + "type": "string" + }, + "source": { + "type": "string" + }, + "source_url": { + "type": "string" + } + }, + "required": [ + "source", + "mnemonic", + "as_of", + "last_observation", + "retired_from", + "replacement", + "source_url" + ], + "type": "object" + }, + "type": "array" +} - changed
Output schema / properties / clocks / requiredPrevious value: -[ - "snapshot_generated_at", - "evidence_as_of", - "evaluated_at", - "snapshot_age_seconds", - "evidence_age_seconds", - "basis" -]New value: +[ + "snapshot_generated_at", + "evidence_as_of", + "evaluated_at", + "snapshot_age_seconds", + "evidence_age_seconds", + "all_provenance_as_of", + "retired_sources", + "basis" +]
Publisher details
- Operator
- LIQUILENS PRIVATE LIMITED · Publisher source
- Operator website
- https://liquilens.in/ · Publisher source
- Vendor relationship
- First-party · Publisher source
- Trust center
- Not available
- Restrictions
- Free AGPL public core; preserve market-specific source rights, clocks and missingness. · Publisher source
Related MCP Connectors
Point-in-time macro, central bank rates and sentiment, COT positioning, from official sources.
China macro: PBOC Loan Prime Rate, headline NBS indicators (via Eastmoney's data centre), 70-city…
Macroeconomic and other official data from 170+ publishers, resolved from natural language with provenance.
Pay-per-call China macro and supply monitors: revisions, FDI, LEI changes, 1688 suppliers.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables querying China's official foreign exchange reserves, balance of payments, and external debt data from SAFE's English-language data pages, including publication-date metadata for freshness.9 npmMIT
- AlicenseAqualityBmaintenanceDaily source-attributed gold and macro readings from xaudaily.com — gold price, CPI, payrolls, Treasury yields, FOMC odds, central-bank gold buying. Every field carries its own source and as-of date. No API key.2CC BY-4.0

@pipeworx/china-macroofficial
AlicenseNot gradedqualityBmaintenanceProvides live China PBOC Loan Prime Rate (LPR) data for 1-year and 5-year benchmark lending rates, including historical monthly announcements and the latest print with reference dates. Enables querying current and recent LPR rates via MCP tools.8 npmMIT- AlicenseNot gradedqualityBmaintenanceProvides live data for Chinese A-shares (Shanghai, Shenzhen, STAR, ChiNext): real-time quotes, daily OHLCV history with forward/backward adjustment, the daily limit-up pool, market-wide turnover rankings, company earnings guidance, and analyst consensus estimates. Runs keyless against public upstream endpoints and can be used as an MCP server or called over HTTP.283 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.