VARRD — Statistically Validated Trading Edges + AI Research Engine
Server Details
Validated trading edges across futures, equities, crypto. Live signals, full audit trail.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- augiemazza/varrd
- GitHub Stars
- 16
- Server Listing
- Varrd
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 9 of 9 tools scored.
Each tool has a clearly distinct purpose: exploration (autonomous_varrd_ai), specific testing (varrd_ai), details (get_hypothesis), search, library browsing (varrd_edges), briefing (get_briefed), and credit management (buy_credits, check_balance) plus session reset (reset_session). No ambiguity between any tools.
Most tools follow a verb_noun pattern (buy_credits, check_balance, get_briefed, get_hypothesis, reset_session, search). The two AI tools diverge: 'varrd_ai' and 'autonomous_varrd_ai' break the pattern slightly with 'autonomous' prefix. Overall, minor inconsistency.
With 9 tools covering credit management, research (both exploratory and directed), results browsing, and session management, the set is well-scoped for an AI trading research platform. No unnecessary tools and each serves a clear function.
Core CRUD operations for hypotheses are present: create (varrd_ai), read (get_hypothesis, search, varrd_edges), but no explicit update or delete tools for hypotheses. However, the system likely handles updates through the research process. Minor gap for complete lifecycle management.
Available Tools
9 toolsautonomous_varrd_aiAInspect
Point VARRD's autonomous AI in a direction and let it discover edges for you. Give it a topic and it draws from one of the most comprehensive market structure knowledge graphs ever built — containing ideologies and theories, not statistics — so it generates genuinely novel hypotheses rather than overfitting to what already worked.
BEST FOR: Exploring a space broadly. Give it 'momentum on grains' and it might test wheat seasonal patterns, corn spread reversals, or soybean crush ratio momentum. It propagates from your seed idea into related concepts you might not think of.
Returns a complete result — edge or no edge, stats, trade setup. Each call tests ONE hypothesis through the full pipeline (~$0.25/idea). Call again for another idea.
Use 'varrd_ai' instead when YOU have a specific idea to test and want full control over each step.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | Yes | Research topic or trading idea (e.g. 'BTC 240min short setups', 'momentum on grains', 'mean reversion after VIX spikes'). | |
| context | No | Prior conversation context — recent user queries to use as research inspiration. Optional. | |
| markets | No | Focus on specific markets (e.g. ['ES', 'NQ']). Omit for VARRD to choose. | |
| test_type | No | Type of statistical test. Default: event_study. | event_study |
| search_mode | No | focused = stay close to topic. explore = creative freedom. Default: focused. | focused |
| asset_classes | No | Limit to specific asset classes. Default: all. |
Output Schema
| Name | Required | Description |
|---|---|---|
| text | No | Full research result with edge verdict |
| context | No | has_edge, edge_verdict, workflow_state |
| widgets | No | Chart, test results, trade setup |
| session_id | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral details beyond annotations: it returns a complete result (edge or no edge, stats, trade setup), each call tests one hypothesis, requires credits, and uses a knowledge graph. Annotations state openWorldHint=true, which aligns. Slight deduction because it doesn't describe failure modes or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a concise opening, a 'BEST FOR' section, and sibling guidance. It is slightly verbose but still clear and front-loaded with key information.
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 no output schema, the description adequately explains what is returned (edge or no edge, stats, trade setup) and that each call tests one hypothesis. It could mention output format or limits, but overall it is fairly complete for a complex 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?
Input schema has 100% description coverage, so the description does not need to add much. The description does not explain parameters beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to let the AI autonomously explore a topic and discover trading edges using a knowledge graph. It distinguishes itself from sibling tool 'varrd_ai' by specifying that this tool is for broad exploration while the other is for specific testing with full control.
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 tells when to use this tool ('BEST FOR: Exploring a space broadly') and when to use the alternative ('Use 'varrd_ai' instead when YOU have a specific idea to test and want full control over each step.'). This provides clear guidance for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
buy_creditsAInspect
Buy credits for the edge library and AI research. Default $5 minimum. Free — no credits consumed to call this.
TWO PAYMENT METHODS: card (default): Returns a Stripe Checkout link for your user to click and pay. After payment, call check_balance to confirm credits were added. crypto: USDC on Base. Fully autonomous — no human needed. Three steps: 1. buy_credits(payment_method='crypto') → returns deposit address + payment_intent_id 2. Send USDC to the deposit address (use your wallet tool) 3. buy_credits(payment_intent_id='pi_...') → confirms payment, credits added instantly If you have wallet access, this is the fastest path — fully machine-to-machine.
| Name | Required | Description | Default |
|---|---|---|---|
| amount_cents | No | Amount in cents (default 500 = $5.00). Minimum $5. | |
| payment_method | No | Payment method: 'card' (default, Stripe Checkout) or 'crypto' (USDC on Base). | card |
| payment_intent_id | No | For crypto: Stripe PaymentIntent ID from a previous buy_credits call. Pass after sending USDC to confirm. |
Output Schema
| Name | Required | Description |
|---|---|---|
| deposit | No | USDC deposit address for crypto payment |
| checkout_url | No | Stripe Checkout link for card payment |
| current_balance_cents | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds crucial context beyond annotations: identifies Stripe as processor, Base as network, USDC as currency, and notes 'Free — no credits consumed to call this'. Explains the two-phase commit pattern (deposit address generation vs confirmation) which annotations (readOnlyHint=false, openWorldHint=true) only hint at.
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?
Highly efficient structure: one sentence for purpose, numbered list for modes, final sentence for cost structure. Every clause provides actionable information with zero 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 no output schema, adequately explains return values implicitly ('get a Stripe deposit address', 'receive credits') and documents the external dependency chain (Stripe → Base). Minor gap: could explicitly document error states or timeout behavior for the pending transaction.
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?
While schema coverage is 100%, the description adds cross-parameter workflow semantics by framing usage as 'Two modes'—explaining the temporal relationship between amount_cents (applies to both) and payment_intent_id (absence=pending, presence=confirmation). This interaction logic isn't captured in isolated schema field descriptions.
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?
Description states specific verb (buy) + resource (credits) + payment method (USDC on Base). Clearly distinguishes from siblings like check_balance or research tools by focusing on payment acquisition.
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 documents the two-step workflow: 'Call without payment_intent_id' vs 'call again with the payment_intent_id'. Provides clear temporal sequencing for when to use each parameter state.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_balanceARead-onlyIdempotentInspect
Check your credit balance and see available credit packs. Free — no credits consumed. Also auto-detects completed payments — call this after your user pays via a checkout link to confirm credits were added. If payment went through, the response includes recovered_cents.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| credit_packs | No | Available credit packs for purchase |
| balance_cents | No | Current credit balance in cents |
| recovered_cents | No | Credits recovered from completed payments (if any) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, non-destructive, idempotent behavior. The description adds valuable domain-specific context that no credits are consumed and describes what data is returned (balance and available packs), enhancing understanding beyond the structured 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?
Three sentences efficiently structured: purpose declaration, cost disclosure, and usage timing. Every clause earns its place with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read operation, the description adequately explains what data is returned despite the lack of an output schema. It covers purpose, cost behavior, and usage timing, though it could specify the exact structure of returned balance information.
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?
Tool accepts zero parameters, meeting the baseline expectation for this dimension. No additional parameter documentation is required or present.
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?
Description clearly states the tool checks credit balance and shows available packs using specific verbs. It effectively distinguishes from siblings like buy_credits (checking vs. purchasing) and research/scan (viewing vs. consuming credits).
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 clear temporal guidance ('Call this before heavy operations') and cost context ('Free — no credits consumed'). While it implies prerequisites for expensive operations, it does not explicitly name alternatives or negative conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_briefedARead-onlyInspect
Get a personalized market news briefing based on your validated edge library. Profiles your strategies, searches today's news for the instruments and setups you actually trade, and writes a concise digest connecting each headline to your specific book.
Each news item includes a ↳ line tying it to your actual positions and edges (e.g. 'your ES momentum setups', 'your GC mean-reversion edge').
Requires at least 5 strong edges in your library. Costs credits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| news | No | Personalized market news digest |
| profile | No | Trader profile based on edge library |
| strong_count | No | Number of strong edges in library |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, openWorld, non-idempotent), the description adds critical behavioral context: the credit cost, the minimum edge prerequisite, and the specific output format with ↳ lines connecting news to positions. It also clarifies the temporal nature by mentioning 'today's news', aligning with idempotentHint=false.
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 efficiently structured in three distinct paragraphs: core functionality, output format example, and constraints. Every sentence provides unique value without redundancy, and the content is front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the absence of an output schema, the description adequately describes the return value format (concise digest with ↳ lines linking to edges). Combined with the prerequisite and cost disclosures, it provides sufficient context for invocation, though explicit return type structure would improve it further.
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 contains zero parameters. According to scoring rules, zero-parameter tools receive a baseline score of 4, as there are no parameters requiring semantic clarification beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs ('profiles', 'searches', 'writes') and clearly identifies the resource as a 'personalized market news briefing based on your validated edge library'. It distinguishes itself from generic research siblings by emphasizing personalization tied to the user's specific trading positions and edge library.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear prerequisites ('Requires at least 5 strong edges in your library') and cost implications ('Costs credits'), which act as usage constraints. However, it does not explicitly name alternative tools (like 'research' or 'search') for when the user lacks sufficient edges.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_hypothesisARead-onlyIdempotentInspect
Get full detail for a specific hypothesis/strategy. Returns formula, entry/exit rules, direction, performance metrics (win rate, Sharpe, profit factor, max drawdown), version history, and trade levels. Everything an agent needs to understand and act on a strategy.
| Name | Required | Description | Default |
|---|---|---|---|
| hypothesis_id | Yes | The hypothesis ID (from search or scan results). |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | No | |
| formula | No | |
| win_rate | No | |
| direction | No | |
| hypothesis_id | No | |
| horizon_results | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no output schema provided, the description adds significant value by exhaustively listing return contents (formula, entry/exit rules, performance metrics, version history). This disclosure of data richness helps the agent anticipate the result structure. The annotations already establish safety (readOnly/idempotent), which the description does not contradict.
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 efficiently structured: purpose declaration, detailed return specification, and value proposition. The final sentence ('Everything an agent needs...') is slightly repetitive but justifies the comprehensiveness of the previous sentence. No significant waste.
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 absence of an output schema, the description compensates well by enumerating specific return fields (Sharpe, profit factor, drawdown, etc.). With only one simple parameter and clear annotations, the description fulfills its burden, though it could mention error cases (e.g., invalid ID) for completeness.
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% (the hypothesis_id parameter is fully documented in the schema). The description mentions 'specific hypothesis/strategy' which aligns with the parameter purpose, but does not add syntax, format constraints, or semantic details beyond what the schema already provides. Baseline 3 is appropriate.
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 verb (Get) and resource (hypothesis/strategy) and specifies scope as 'full detail' which distinguishes it from presumed summary/list siblings like 'search' or 'get_briefed'. However, it does not explicitly name sibling tools or explicitly contrast 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?
The description provides clear context for when to use the tool: when the agent needs to 'understand and act on a strategy' and requires comprehensive data (formula, metrics, rules). The parameter schema further contextualizes this by noting the ID comes 'from search or scan results', implying a workflow. It lacks explicit '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.
reset_sessionADestructiveIdempotentInspect
Kill a broken research session and start fresh. Use this when a session gets stuck, produces errors, or enters a bad state. Free — no credits consumed. After resetting, call research without a session_id to start a new clean session.
| Name | Required | Description | Default |
|---|---|---|---|
| session_id | Yes | The session_id to reset. |
Output Schema
| Name | Required | Description |
|---|---|---|
| reset | No | |
| message | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations establish the destructive/idempotent profile, while the description adds complementary behavioral context: cost transparency ('Free — no credits consumed'), specificity about error states handled, and integration workflow with sibling tools. Does not contradict 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?
Four efficient sentences cover purpose, trigger conditions, cost policy, and next-step workflow without redundancy. Information is front-loaded with the destructive action declaration.
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 single-parameter destructive operation with rich annotations, the description is complete. It addresses purpose, prerequisites (broken state), side effects (free of charge), and subsequent workflow integration.
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 input schema fully documents the session_id parameter. The description validates this by mentioning the parameter indirectly via the post-reset workflow instruction, but does not need to add syntax details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with the specific action 'Kill a broken research session and start fresh' - a concrete verb-resource combination that clearly distinguishes this cleanup/recovery tool from research-creation siblings like 'research' and 'autonomous_research'.
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 explicit trigger conditions ('when a session gets stuck, produces errors, or enters a bad state') and clear post-action workflow ('After resetting, call research without a session_id'), effectively guiding the agent through the full recovery lifecycle.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchARead-onlyIdempotentInspect
Search your saved hypotheses by keyword or natural language query. Returns matching strategies ranked by relevance, with key stats (win rate, Sharpe, edge status). Use this to find strategies you've already validated.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results to return. | |
| query | Yes | Search query — keywords or natural language (e.g. 'momentum strategies', 'RSI oversold'). | |
| market | No | Optional market filter. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | |
| method | No | Search method: embedding or keyword |
| results | No | Matching strategies with win rate, Sharpe, similarity |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, idempotent, non-destructive). Description adds valuable behavioral context by specifying return format: 'ranked by relevance, with key stats (win rate, Sharpe, edge status),' compensating for the lack of output 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?
Three distinct sentences with zero waste: purpose (sentence 1), return behavior (sentence 2), usage context (sentence 3). Well-structured and front-loaded.
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 simple 3-parameter schema with full coverage and strong annotations, the description adequately covers tool behavior. It describes return values despite no output schema, though it omits error handling or empty result behaviors.
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%, establishing baseline 3. Description reinforces the 'query' parameter's purpose ('keyword or natural language') but does not add significant semantic detail beyond the schema for 'limit' or 'market' parameters.
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?
Description uses specific verb 'Search' with clear resource 'saved hypotheses' and distinguishes scope by specifying 'keyword or natural language query' and 'already validated,' differentiating it from sibling tools like 'research' or 'get_hypothesis'.
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?
Clear context provided by 'Use this to find strategies you've already validated,' implying when to use (retrieving saved work) versus creating new hypotheses. However, it does not explicitly name alternative tools for other scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
varrd_aiAInspect
Talk to VARRD AI (~$0.25/turn). Describe any trading idea in plain language and the system handles everything — loading decades of market data, charting your pattern, running statistical tests, backtesting with stops, and generating exact trade setups.
MULTI-TURN: First call creates a session. Keep calling with the same session_id, following context.next_actions each time.
Your idea -> VARRD charts pattern
'test it' -> statistical test (event study or backtest)
'show me the trade setup' -> exact entry/stop/target prices
HYPOTHESIS INTEGRITY (critical): VARRD tests ONE hypothesis at a time — one formula, one setup. Never combine multiple setups into one formula or ask to 'test all' — each idea must be tested as a separate hypothesis for the statistics to be valid. Say 'start a new hypothesis' between ideas to reset cleanly.
ALLOWED: Test the SAME setup across multiple markets ('test this on ES, NQ, and CL') — same formula, different data.
NOT ALLOWED: Test multiple DIFFERENT formulas/setups at once — each is a separate hypothesis requiring its own chart-test-result cycle. If ELROND council returns 4 setups, test each one separately: chart setup 1 -> test -> results -> 'start new hypothesis' -> chart setup 2 -> etc.
KEY CAPABILITIES you can ask for:
'Use the ELROND council on [market]' -> 8 expert investigators
'Optimize the stop loss and take profit' -> SL/TP grid search
'Test this on ES, NQ, and CL' -> multi-market testing
'Simulate trading this with 1.5 ATR stop' -> backtest with stops
EDGE VERDICTS in context.edge_verdict after testing:
STRONG EDGE: Significant vs zero AND vs market baseline
MARGINAL: Significant vs zero only (beats nothing, but real signal)
PINNED: Significant vs market only (flat returns but different from market)
NO EDGE: Neither significant test passed
TERMINAL STATES: Stop when context.has_edge is true (edge found) or false (no edge — valid result). Always read context.next_actions.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | Your trading idea, research question, or instruction (e.g. 'test it', 'show trade setup'). | |
| session_id | No | Session ID from a previous call. Omit to start a new research session. |
Output Schema
| Name | Required | Description |
|---|---|---|
| text | No | AI response text |
| context | No | Workflow state, edge verdict, next actions |
| widgets | No | Chart, event study, backtest, or trade setup widgets |
| session_id | No | Session ID for multi-turn conversation |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are limited, but the description richly discloses behavioral traits: session management, credit requirement, hypothesis testing constraints, edge verdicts, and terminal states. No contradictions 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 quite long and detailed, which is necessary for a complex conversational tool, but it could be better structured (e.g., bullet points). It is front-loaded with the main purpose but then becomes dense. Adequate but not concise.
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?
Covers all necessary aspects for a complex multi-turn tool: workflow, hypothesis rules, edge verdicts, terminal states, and key capabilities. No output schema, but the description explains what to expect in context (edge verdicts, next_actions). Complete for the complexity level.
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?
Input schema covers both parameters with 100% description coverage. The description adds little beyond the schema: message is elaborated with examples from the schema, and session_id is similarly described. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Talk to VARRD AI' and explains it handles trading ideas end-to-end. It is a specific verb+resource description. However, it does not explicitly distinguish from the sibling 'autonomous_varrd_ai', leaving some ambiguity about when to use which.
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 explicit step-by-step multi-turn workflow, hypothesis integrity rules (allowed vs. not allowed), and specific instructions for handling ELROND council outputs. Clearly states when to start new hypotheses and terminal states.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
varrd_edgesARead-onlyIdempotentInspect
THE PRIMARY TOOL — start here. FREE at depth=0, always safe to call.
Live feed of statistically validated trading edges running 24/7 against real market data. See what's firing right now, get trade levels, or audit the full methodology.
THREE TIERS: depth=0 (FREE — call this first): See which markets have edges firing right now, pending bar close, or actively in trades. Markets and status only — no direction, no stats. Get a sense of what's live. depth=1 ($0.50): Unlock direction, occurrence count, EV/trade, stop-loss, take-profit, hold horizon, and current entry prices for ALL active edges in one request. depth=2 ($1 per edge, $5 for all): Full methodology — the actual formula, setup code, how the edge was discovered, edge decay analysis, complete performance analytics (Sharpe, drawdown, equity curve, profit factor). Machine-readable so any AI can audit the statistical rigor. Includes drill-down sections (free after purchase): setup_code, horizons, analytics, occurrences, and view (interactive chart link for your user, 15 min).
Every edge in this library is Bonferroni-corrected, tested against both zero returns and market baseline, with K-tracking to prevent p-hacking. Out-of-sample validated. Full transparency.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | 0=free (markets + status), 1=$0.50 (direction, stats, trade levels for ALL active edges), 2=$1/edge or $5/all (full methodology + performance). Cheaper than a coffee. | |
| market | No | Filter by market symbol (e.g. 'ES', 'GC'). Omit to see all. | |
| status | No | Filter by status: 'firing', 'pending', 'active', or omit for all. | |
| edge_id | No | Specific edge ID for depth 1 or 2 detail. Omit to see all edges. | |
| section | No | Drill into a specific section of a depth=2 edge (free after purchase). Options: setup_code, horizons, analytics, occurrences, view. Omit to get the overview directory. | |
| direction | No | Filter by direction: 'LONG' or 'SHORT'. | |
| timeframe | No | Filter by timeframe: '60min', '120min', '240min', '480min', 'daily', 'weekly'. | |
| asset_class | No | Filter by asset class: 'futures', 'equities', 'crypto'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| text | No | Formatted edge data (depth 0/1) or directory overview (depth 2) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description provides extensive context beyond annotations: it explains the statistical methodology (Bonferroni correction, K-tracking, out-of-sample validation) and the idempotent, read-only nature. Annotations already indicate readOnlyHint=true and destructiveHint=false, and the description aligns perfectly without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections ('THREE TIERS:'), bolded levels, and bullet points. Every sentence adds value—covering tiers, pricing, filtering, and methodology. It is succinct yet comprehensive, with no wasted words.
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?
Despite having no output schema, the description adequately explains what each depth returns (markets/status at depth 0, direction/stats at depth 1, full methodology at depth 2). It also covers filtering and statistical rigor. Minor gap: does not explicitly state the output is a list of edges, but this is implied. Overall, it is complete for effective 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 input schema already covers all parameters with descriptions (100% coverage), meeting the baseline. The description adds some context about the tiers but does not significantly enhance parameter meaning beyond what the schema provides. Thus, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Browse VARRD's library of statistically validated trading edges'. It uses a specific verb ('Browse') and resource ('library of edges'), and distinguishes itself from siblings like 'autonomous_varrd_ai' (AI assistant) and 'buy_credits' (purchasing tool).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the three pricing tiers and what each depth returns, implying when to use each. It also mentions filtering options (market, status, edge_id). However, it does not explicitly state when not to use this tool versus alternatives like 'varrd_ai', leaving some ambiguity for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
its pretty sweet
Your Connectors
Sign in to create a connector for this server.