VelaDeck
Server Details
AI-driven US equity strategies: catalog, returns, drawdowns, pricing and blog. Read-only.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 4 tools
Each tool targets a clearly distinct information need: pricing, a single strategy detail, a strategy list/comparison, or blog search. The list vs. detail split for strategies is explicitly described, and pricing and blog are unrelated to those.
All four tools follow a consistent verb_noun convention: get_pricing, get_strategy, list_strategies, search_blog. No mixed casing or vague standalone verbs.
Four tools is well-scoped for a public-facing informational server covering pricing, strategy details, strategy lists, and blog search. Each tool has a distinct role and none feels redundant.
The surface covers the main public information needs: pricing, strategy comparison, strategy detail, and blog search. Minor gaps remain, such as no tool to retrieve full blog article content and no direct holdings lookup (explicitly excluded from get_strategy).
Available Tools
4 toolsget_pricingVelaDeck pricingARead-onlyIdempotentInspect
Subscription plans and the Alpaca account balance range each one covers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds useful content context — it discloses that the payload maps plans to Alpaca balance ranges — but says nothing about freshness, source, or completeness of the pricing data.
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?
A single clause with no filler, and the two key payload elements (plans, balance ranges) are front-loaded. Nothing here could be cut without losing 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?
For a zero-parameter, read-only tool with full annotations and no output schema, the description conveys the essential shape of the return value. Only minor gaps remain, such as whether prices are static or fetched live, which an agent might want before relying on 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 tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. Schema coverage is moot at 100% with an empty properties object.
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 and its contents — subscription plans plus the Alpaca account balance range each plan covers — which is enough to distinguish it from siblings like get_strategy and list_strategies. It lacks an explicit verb ('returns'/'lists'), but the noun phrase is unambiguous about what data comes back.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus alternatives, no prerequisites, and no exclusions. The agent must infer usage purely from the resource name; no sibling is referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_strategyGet one strategyARead-onlyIdempotentInspect
Full public detail of one strategy by code (e.g. US20, IT15): description, rebalance frequency, holdings count, launch date, returns, drawdown, Sharpe/Sortino and benchmark when available. Does not include the holdings themselves.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Strategy code from list_strategies, e.g. US20. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and non-destructive, so the safety profile is covered; the description adds real value by disclosing the exact field set returned and explicitly excluding holdings, which prevents a common misuse. Minor gap: 'when available' flags optional fields but doesn't say what is omitted or what an unknown code returns.
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, zero filler: the resource and scope come first, the field inventory second, and the holdings exclusion last where it is most useful as a guardrail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description carries the return-value burden and does so by naming nearly every field (frequency, holdings count, launch date, returns, drawdown, Sharpe/Sortino, benchmark). Combined with the explicit omission of holdings, an agent has everything it needs to call this 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?
Schema coverage is 100% and the schema already gives an example code and points at list_strategies as the source. The description's inline examples (US20, IT15) merely reinforce the schema, so 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?
States a specific verb and resource ('Full public detail of one strategy by code') and enumerates the returned fields, so an agent knows exactly what it gets. The singular 'one strategy ... by code' implicitly separates it from sibling list_strategies, but never names that sibling or states the distinction outright.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: 'by code' plus the schema note that codes come from list_strategies suggests a two-step flow, but the description never says when to call this versus list_strategies. The only explicit scoping is the negative one ('Does not include the holdings themselves').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_strategiesList VelaDeck strategiesARead-onlyIdempotentInspect
List every public VelaDeck strategy with its rebalance frequency, number of holdings and performance: 1-year and 5-year total return, annualized return and max drawdown (decimals: 0.12 = 12%). Use it to compare strategies.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds valuable output-level context by enumerating the returned fields (rebalance frequency, holdings count, 1y/5y returns, annualized return, max drawdown) and the decimal convention, which is meaningful beyond 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?
Single sentence, front-loaded with the verb and resource, followed by the exact fields and a compact decimal clarification. Every clause adds information; nothing is repetitive or 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 no output schema, the description carries the burden of explaining returned values, and it does list the core metrics and decimal convention. It does not describe the overall response shape (e.g., array of strategy objects) or ordering, leaving a small but real gap for a list 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?
There are zero parameters, so the baseline is 4. The description's only parameter-like detail is the decimal formatting note, which pertains to return values rather than inputs; no input semantics are needed for this tool.
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 (list) and resource (public VelaDeck strategies) plus the returned scope: all strategies. It implies distinction from the sibling get_strategy by emphasizing 'every', but never names the sibling, so the differentiation is inferred rather than explicit.
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?
'Use it to compare strategies' provides a positive use case, but there is no guidance on when not to use it or when to prefer get_strategy for a single strategy, or get_pricing. The usage condition is implied rather than fully specified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_blogSearch the VelaDeck blogARead-onlyIdempotentInspect
Search VelaDeck blog articles about automated investing, AI equity strategies and Alpaca. Matches words in the title, excerpt and tags; an empty query returns the latest posts.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | Words to look for. Optional. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely new behavior: matching is against title, excerpt and tags, and empty queries fall back to the newest posts.
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 with zero filler, and the matching semantics are front-loaded before the empty-query fallback.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter search with no output schema, the description covers what is searched and the fallback behavior. Only the result ordering/volume (the limit parameter) is left implicit, which is a minor gap.
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 50% — the query parameter is documented and limit is self-describing via default/min/max. The description clarifies what query actually matches against and what an empty query does, but says nothing about limit's role or default.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ("Search VelaDeck blog articles") plus topical scope (automated investing, AI equity strategies, Alpaca). It is obviously distinct from the product/pricing siblings, though it never names an alternative explicitly.
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?
"An empty query returns the latest posts" implies a browse-latest mode, which is a useful usage signal. However, there is no explicit when-to-use versus when-not guidance and no reference to get_pricing/list_strategies for non-article questions.
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.
4 tool updates
- First observed
get_pricing - First observed
get_strategy - First observed
list_strategies - First observed
search_blog
Related MCP Connectors
Portfolio analytics + US-equity market research for AI clients. ChatGPT deep-research compat.
The data and trading platform for AI: decades of US market data, backtests in seconds.
Point-in-time, survivorship-free SEC EDGAR fundamentals + smart-money signals for AI agents.
Point-in-time US equity fundamentals for quants and AI agents. Free tier, no API key needed.
Related MCP Servers
- AlicenseAqualityAmaintenanceInvestment decision tools for AI agents: portfolio status, isolated multi-agent committee analysis, auditable verdict history, and lookahead-protected backtests. Advisory only, no auto-trading; negative research results published.36842 PyPI133MIT
- AlicenseAqualityBmaintenancePre-computed financial market intelligence for AI agents. Stocks, crypto, and ETFs.976 npm5MIT
- AlicenseCqualityBmaintenanceHistorical stock pattern intelligence for AI agents. Search 24M pre-computed chart pattern embeddings across 15K stocks and 10 years. 19 tools: pattern similarity search, forward returns, regime analysis, anomaly detection, sector rotation, earnings reactions, correlation shifts, scenario analysis, and more. Returns what happened historically when charts looked like this — compliance-safe2257 PyPI22MIT
- AlicenseAqualityBmaintenanceInstitutional-grade quantitative stock analysis and research signals for AI agents via the Model Context Protocol (MCP).10176 PyPI1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.