Skip to main content
Glama

OneQAZ Trading Intelligence

get_macro_causality_graph_tool

Read-onlyIdempotent

Purpose: Lag-aware causal graph between macro categories (bonds / vix / forex / credit / inflation / liquidity / commodities). Returns only statistically significant lead-lag pairs (e.g. forex -> vix 7d rho=-0.41). Triggers (casual questions too): "what happens to VIX when bonds move?", "금리 오르면 뭐가 움직여?", "which macro leads which?", "거시 지표끼리 인과관계 있어?", "does the dollar lead volatility?". When to call: assess pre-emptive cross-category impact after a macro event. Prerequisites: none. Next steps: get_macro_influence_map for category -> market impact. Caveats: Pearson-based; requires >= 30 samples; p < 0.05 filter.

Args: min_abs_corr: Minimum |corr| (default 0.15) max_p_value: Maximum p-value (default 0.05)

Disclaimer: Information only, not investment advice.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
max_p_valueNo
min_abs_corrNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds statistical caveats: Pearson-based, requires >=30 samples, p<0.05 filter, and notes that only statistically significant pairs are returned. This is useful beyond annotations, though no other behavioral traits (e.g., time range semantics) are mentioned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with clear headings (Purpose, Triggers, When to call, Prerequisites, Next steps, Caveats, Args) and is front-loaded with purpose. It is somewhat verbose with example queries, but every section earns its place, offering actionable guidance without excessive repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema (so return values are covered elsewhere), the description provides complete context for a read-only analytical tool: what it does, when to use it, prerequisites, caveats, and next steps. It leaves no significant gaps for an agent to misuse the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides only types and defaults (0% coverage), so the description carries the full burden. It explicitly defines each parameter: 'min_abs_corr: Minimum |corr|' and 'max_p_value: Maximum p-value', adding meaning the schema lacks. This fully compensates for the missing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: 'Lag-aware causal graph between macro categories' and specifies the categories. It clearly differentiates from siblings like get_macro_influence_map by focusing on lead-lag pairs among macro categories, not category-to-market impact.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly provides triggers ('what happens to VIX when bonds move?'), the specific context ('assess pre-emptive cross-category impact after a macro event'), prerequisites ('none'), and a next step (get_macro_influence_map) for an alternative use case. This distinguishes when to use this tool versus others.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.3/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, but there are overlapping areas such as get_feature_governance_state vs get_feature_governance_status_tool and the convenience wrappers for losing/winning positions/trades. Descriptions clarify relationships well, so confusion is limited.

Naming Consistency4/5

The vast majority follow a consistent 'get_' prefix with descriptive nouns, but inconsistencies exist: some tools have '_tool' suffix (e.g., get_macro_causality_graph_tool) while similar ones do not, and governance tools use 'state' vs 'status_tool'. Overall, the pattern is predictable.

Tool Count2/5

39 tools is excessive for the apparent scope. Many are redundant convenience wrappers (get_losing_positions, get_winning_trades, etc.) that duplicate filters on other tools, and there are near-duplicate governance tools. The count could be significantly consolidated.

Completeness5/5

The tool surface is remarkably comprehensive, covering signals, trades, predictions, positions, macro relationships, news causality, strategies, structure, governance, and ledger integrity. There are no obvious functional gaps, and the tools form a well-integrated evidence chain.