Rayana AI
Server Details
Read-only impersonal market research: portfolio rankings, ticker scores, signals, daily briefs.
- Status
- Healthy
- Uptime
- 95.6% over 40 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 20 tools
Many tools target distinct research layers, but boundaries blur among rankings, signals, consensus, and trends/trends_detail, as well as portfolio vs portfolios and the various ticker tools. Descriptions are detailed and help, but the sheer number of similar research endpoints creates misselection risk.
All names use snake_case with a consistent rayana_ai_ prefix and follow a predictable resource-based convention. Minor inconsistency: two action-oriented names (start_checkout, complete_setup) break the otherwise noun-phrase pattern.
20 tools is on the heavy side for a single MCP server, exceeding the typical well-scoped range of 3-15. While each endpoint appears to serve a distinct purpose, the volume feels burdensome and could potentially be consolidated.
The surface covers a broad research domain: articles, briefs, consensus, portfolios, rankings, signals, trends, ticker details, and subscription setup. Minor gaps exist, such as no explicit account/subscription status tool and no historical snapshots for several research layers, but core workflows are well-covered.
Available Tools
20 toolsrayana_ai_analyst_briefPortfolio analyst briefCRead-onlyInspect
The portfolio-analyst brief with its per-ticker views — the broadcast opinion layer, identical for every caller.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| brief | Yes | |
| views | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the safety and external-data profile is covered. The description adds genuine context beyond that: the brief is a broadcast layer, identical for every caller, meaning no caller-specific personalization or auth-dependent variation. It does not add caveats about staleness, rate limits, or the per-ticker return shape, but with an output schema present that omission is tolerable.
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 tight sentence with no filler; the differentiating qualifiers ('per-ticker views', 'broadcast opinion layer') come before the aside about callers. It is concise, though thin content means brevity is partly the result of under-specification rather than editorial discipline.
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 tool with an output schema and one optional parameter, the description covers the conceptual nature of the brief, and return values need not be explained since the output schema exists. However, the date parameter's semantics and any routing guidance against the many overlapping siblings are missing, leaving the definition minimally viable.
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 is one optional 'date' parameter with 0% schema description coverage, and the description never mentions it — no format, no default behavior, no statement of what happens when it is omitted. With low coverage the description was the only place to compensate, and it does not.
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 identifies the resource ('portfolio-analyst brief') and differentiates it from siblings by scope ('per-ticker views', 'broadcast opinion layer'), but it never states the verb — whether the tool fetches, generates, or returns a brief. The main clause largely restates the title, so an agent can only infer the action from convention.
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 when-to-use guidance, no prerequisites, and no named alternative among the 19 siblings (e.g., rayana_ai_market_brief or rayana_ai_portfolio). 'Identical for every caller' hints at a broadcast scope but does not tell the agent when to prefer this tool over the ticker- or portfolio-specific variants.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_articlesResearch articlesARead-onlyInspect
The public articles feed, newest first, when slug is omitted; one
published article's full body when slug is given.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | ||
| limit | No | ||
| offset | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description does add real behavior beyond that: result ordering ('newest first'), the difference in payload size (feed summary vs 'full body'), and the restriction to 'published' articles. It omits pagination behavior and what happens for an unknown or unpublished slug, so it is adequate but not rich.
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 sentence that front-loads the default behavior (feed, newest first) before the conditional override. Every clause carries information and nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return-value detail is unnecessary, and the description covers the key behavioral branch plus ordering. The remaining gap is pagination semantics for limit/offset, which matters for a feed tool but is minor relative to what is stated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning; it explains `slug` well (omitted = feed, given = single article) but says nothing about `limit` or `offset`, leaving two of three parameters undocumented anywhere. It partially compensates for the coverage gap rather than fully closing it.
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 the resource (public articles feed / a single published article's body) and the condition that switches between the two modes. It is clear and specific, but it never distinguishes itself from the sibling rayana_ai_ticker_articles, which an agent could easily confuse with this 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?
It tells the agent which mode is selected by the presence or absence of `slug`, which is genuinely useful routing within the tool. However, it gives no guidance on when to prefer this tool over rayana_ai_ticker_articles or rayana_ai_search, so alternative selection 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.
rayana_ai_complete_setupRedeem a pairing codeADestructiveInspect
For clients that connect with an API key rather than OAuth: exchanges a pairing code from the user's account page for an API key. Destructive: it issues a new key and immediately revokes the account's previous one, so any other client still using the old key stops working. OAuth connections are not affected.
The key is returned once and cannot be retrieved later; only a hash of it
is stored. It is sent as the X-API-Key header on MCP and REST
requests. Codes are single-use, expire after 15 minutes, and are
invalidated after a few wrong attempts.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | Yes | |
| tier | Yes | |
| api_key | Yes | |
| mcp_url | Yes | |
| header_name | Yes | |
| rest_base_url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the destructiveHint=true annotation: it explains that a new key immediately revokes the previous one so other clients break, that the key is shown once and only a hash is stored, that it is sent as the X-API-Key header, and that codes are single-use, expire in 15 minutes, and are invalidated after a few wrong attempts. This is exactly the operational context an agent needs before an irreversible action.
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 tight paragraphs, front-loaded with the purpose and the destructive consequence before the mechanics. Nearly every sentence adds decision-relevant information; nothing is 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 one-parameter destructive auth tool with an output schema, the description covers purpose, safety consequence, credential handling, and code lifecycle. An agent has everything required to call it correctly and warn the user beforehand.
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 0%, so the description must carry the parameter. It does: it tells the agent the lone 'code' comes from the user's account page, is single-use, expires after 15 minutes, and is invalidated after wrong attempts. It omits any format/length detail, which is a minor gap.
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: 'exchanges a pairing code from the user's account page for an API key.' It also scopes who this is for ('clients that connect with an API key rather than OAuth'), which cleanly separates it from every read-only analyst sibling.
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 gives the condition for use ('For clients that connect with an API key rather than OAuth') and rules out impact on OAuth connections. It does not name an alternative tool to use instead, but for a setup/auth tool the usage context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_consensusPer-source consensus snapshotsARead-onlyInspect
Per-source consensus snapshots (insider trades, congressional trades,
earnings beats, dated catalysts, on-chain flows, 13F filings, AI
news-beneficiary reads). Omit source for every source at once, or
pass one of the slugs returned in a rankings/signals row's source list.
limit caps rows per source. The sources are very unevenly sized —
institutional holdings runs to ~1700 rows where on-chain flows may have
two — so a source that comes back with exactly limit rows probably has
more, and narrowing with source and raising limit reads that one
layer deeply for far less context than raising limit across all
seven.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| source | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| onchain-flows | No | |
| event-calendar | No | |
| ai-news-analysis | No | |
| insider-activity | No | |
| earnings-surprise | No | |
| congressional-trading | No | |
| institutional-holdings | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds real behavioral insight beyond that: sources are very unevenly sized (~1700 institutional-holding rows vs. two on-chain rows) and a source returning exactly `limit` rows is probably truncated — a diagnostic heuristic the annotations never convey.
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?
What the tool returns is front-loaded, followed by the source/limit mechanics; every sentence carries information. The closing sentence is long and runs across several wrapped lines, but it earns its place by explaining the truncation signal and the cheaper deep-read tactic.
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. For a two-optional-parameter retrieval tool, the description covers what is fetched, how to scope it, and how to detect and work around truncation — enough for correct invocation, though it could be clearer about how this differs from the signals/rankings tools that feed its slugs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry both parameters, and it does: `limit` caps rows per source, `source` omitted means all sources or can be a slug drawn from a rankings/signals source list. It does not enumerate the valid slug values themselves, but it points the agent to where they come from.
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 the resource concretely and enumerates the seven sources it covers (insider trades, congressional trades, earnings beats, dated catalysts, on-chain flows, 13F filings, AI news-beneficiary reads). An agent can tell what data comes back, but it never distinguishes itself from siblings like rayana_ai_signals or rayana_ai_rankings beyond referencing their source lists, so it falls short of a 5.
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 usage guidance: omit `source` to fetch all seven at once, or pass a slug taken from a rankings/signals row, and it recommends narrowing with `source` plus a higher `limit` for deep single-source reads. It stops short of saying when to prefer this tool over rayana_ai_signals/rayana_ai_rankings, so no alternatives are explicitly excluded.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_lanesAvailable ranking lanesBRead-onlyInspect
Which lanes (daily/turtle/mr) currently have a batch available.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds that availability is 'currently' determined, signalling dynamic, time-sensitive data that goes beyond the annotations. It does not mention auth, rate limits, or caching.
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 front-loaded fragment with no wasted words, appropriate for a no-parameter tool. The phrasing is slightly elliptical but still immediately intelligible.
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, no-parameter discovery tool with an output schema and read-only annotations, the description adequately conveys what is being queried. A minor gap is that 'batch' is not defined, but the output schema likely covers that.
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 lane names in the description provide context about possible outputs, not inputs, so no parameter semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (ranking lanes) and the condition (batch available), and names the lane values (daily/turtle/mr). It is clear what the tool returns conceptually, but lacks an explicit verb and does not differentiate from sibling tools like rayana_ai_rankings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to call this versus alternatives. The description gives no conditions, exclusions, or sibling comparisons; usage is only implied by the query phrasing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_market_briefDaily market briefARead-onlyInspect
The daily market brief: a generic engine-wide read with no
recommendations, descriptive only. Latest by default; pass
date (YYYY-MM-DD) for a specific day.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| brief | Yes | |
| notes | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, lowering the bar. The description adds genuinely useful traits beyond those: the result is descriptive only, carries no recommendations, and is engine-wide (not scoped to a portfolio/ticker). That tells the agent what kind of output to expect without relying on the 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?
Front-loaded with the resource name, then purpose, then parameter behavior. Two tight sentences with no filler; slightly telegraphic but every clause 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?
For a simple one-parameter read with an output schema present (so return values need not be described), the description covers purpose, nature of output, and parameter usage. The only real gap is sibling differentiation, which is left implicit.
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 0% (the 'date' property has no description), so the description carries the burden and does a good job: it gives the format (YYYY-MM-DD) and the semantics (specific day vs. latest default). This compensates well for a single-parameter 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?
The description states a specific resource ('daily market brief') and characterizes it as a 'generic engine-wide read with no recommendations, descriptive only,' which signals what it does and implicitly distinguishes it from recommendation-oriented siblings like analyst_brief or signals. However, it never explicitly names the contrast, so an agent must infer the boundary.
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 clarifies the default behavior ('Latest by default') and the override ('pass date for a specific day'), which is useful invocation guidance. But it gives no when-to-use / when-not, nor names an alternative among the many siblings, so usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_plansPlans and pricingARead-onlyInspect
Rayana AI's subscription tiers: price, rate limits, and what each tier includes. Works without signing in or an API key.
The research tools on this server require the Pro tier or higher. Prices
are USD; annual billing is ten months' price for twelve.
rayana_ai_start_checkout returns a subscription link for a tier listed
here.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| plans | Yes | |
| currency | Yes | |
| access_note | Yes | |
| annual_note | Yes | |
| pricing_url | Yes | |
| checkout_url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely useful non-structured context: no sign-in or API key needed, prices are USD, and annual billing is ten months' price for twelve. It does not describe freshness or caching of pricing data, so it falls short of 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 short sentences, front-loaded with what the tool returns, followed by access requirements and the pricing/billing caveat. Every sentence carries decision-relevant information and nothing is 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 input parameters and an output schema already present, the description need not explain return shape. It covers access requirements, cost semantics, and the handoff to rayana_ai_start_checkout, which is everything an agent needs 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?
The tool takes zero parameters, so the baseline of 4 applies with no schema semantics to compensate for. The description correctly adds no parameter chatter, keeping the focus on the returned pricing 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?
States a specific resource (Rayana AI's subscription tiers) and enumerates what it returns: price, rate limits, and tier inclusions. It also distinguishes itself from sibling endpoints by noting it works without sign-in or an API key, which the research tools on this server do not.
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?
Clearly signals when this is callable (no auth required) and routes to the correct follow-up tool, rayana_ai_start_checkout, for purchasing a listed tier. It also tells the agent that research siblings need Pro or higher, which is useful routing context, though it never states an explicit 'do not use this for X' exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_portfolioModel portfolio detailARead-onlyInspect
One model portfolio's full detail: holdings, overlay legs, event feed, NAV series, and windowed returns. Returns an error if the book's tier (e.g. an Elite-only book) is above the caller's own subscription tier.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| nav | No | |
| asof | No | |
| book | Yes | |
| slug | Yes | |
| events | No | |
| metrics | No | |
| overlay | No | |
| windows | No | |
| holdings | No | |
| delayed_to | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds real behavioral value: it enumerates the five sections in the response and, unusually, discloses that the call errors when the book's tier (e.g. Elite-only) exceeds the caller's subscription tier — an authorization constraint the agent cannot infer from the 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?
Two sentences, zero filler, and the payload enumeration is front-loaded ahead of the caveat. Every clause 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?
An output schema exists, so return values needn't be spelled out, yet the description still gives a useful preview of the response shape plus the tier-gating failure mode. The remaining gap is the slug's origin/format, which is the one thing an agent needs to actually invoke the 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?
One required parameter (slug) at 0% schema description coverage, so the description carries the full burden — and it says nothing about what a slug is, its format, or where to obtain it (presumably from rayana_ai_portfolios). The only hint is the indirect mention of 'the book', which does not explain the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('one model portfolio's full detail') and enumerates the payload it returns (holdings, overlay legs, event feed, NAV series, windowed returns). The singular 'one model portfolio' implicitly contrasts with the plural sibling rayana_ai_portfolios, but that sibling is never named, so the agent must infer the split itself.
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: fetch this when you need the detailed view of a single book rather than a list. There is no explicit 'use this instead of rayana_ai_portfolios when...' routing, no prerequisite about needing a slug from the list call first, and no guidance about the tier gate beyond the error condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_portfoliosModel portfolio shelfCRead-onlyInspect
The full shelf of Rayana AI's broadcast model portfolios as merchandising cards, with each card's tier/openable/delayed flags.
| Name | Required | Description | Default |
|---|---|---|---|
| include_retired | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| tier | Yes | |
| count | Yes | |
| portfolios | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=true), so the description only needs to add context. It does disclose the returned card fields (tier/openable/delayed), but it never explains what those flags mean or whether retired portfolios are excluded by default, which is the one behavior an agent most needs 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?
One sentence, front-loaded with the resource and immediately followed by the payload contents. No filler, although the metaphorical 'shelf' wording costs a little precision for the tokens it saves.
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, and annotations carry the read-only profile. What is missing for a correct invocation is the meaning of include_retired and the boundary against rayana_ai_portfolio, so it is adequate but incomplete.
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% and the single parameter include_retired is never mentioned in the description. With only one param and no schema documentation, the description had a small burden to carry and failed it; an agent cannot tell what setting include_retired=true changes.
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?
It states the resource (Rayana AI's model portfolios) and hints at the payload shape (cards with tier/openable/delayed flags), so the agent knows roughly what comes back. But the verbs 'shelf' and 'merchandising cards' are figurative jargon rather than a concrete operation, and nothing distinguishes this from the singular sibling rayana_ai_portfolio, which a reader would reasonably assume returns the same content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to call this versus rayana_ai_portfolio, rayana_ai_plans, rayana_ai_rotation or other portfolio-adjacent siblings. There are no stated prerequisites or exclusions, and the singular/plural naming collision is left entirely unaddressed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_rankingsRanked candidates by laneARead-onlyInspect
Latest ranked candidate batch for a lane: daily (the main research lane), turtle (breakout system), or mr (mean-reversion). Rows come back in rank order, best first, so the default page is the top of the batch.
total in the response is the batch size; when it exceeds count,
later rows are reached with offset. include_assessment adds each
row's technical detail (pattern and cluster validation, volume profile)
and roughly triples the response; rayana_ai_ticker returns the same
detail for a single name.
| Name | Required | Description | Default |
|---|---|---|---|
| lane | No | daily | |
| limit | No | ||
| offset | No | ||
| include_assessment | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| lane | Yes | |
| count | Yes | |
| total | No | |
| asof_hint | No | |
| truncated | No | |
| candidates | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=true), so the bar is lower, and the description still adds real behavior: rank ordering, the total/count/offset pagination contract, and the notable cost signal that include_assessment roughly triples the response. That cost disclosure is exactly the kind of context annotations cannot carry.
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 short paragraphs, front-loaded with what the tool returns before moving to pagination and the optional detail flag. Every sentence carries distinct information; nothing repeats the title or restates the enum.
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 explains the key response fields (total, count) that drive pagination behavior. Combined with the lane and cost guidance, an agent has what it needs to call this correctly; only the limit parameter and lane-selection heuristics remain unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description has to compensate, and it largely does: it defines all three lane values, explains offset via the total/count relationship, and describes include_assessment's effect and cost. The one gap is `limit`, which is only implied by the pagination sentence rather than named as the page size.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('latest ranked candidate batch for a lane') and immediately disambiguates the lane enum by naming and defining each value (daily = main research lane, turtle = breakout, mr = mean-reversion). It also names a sibling, rayana_ai_ticker, as the single-name equivalent, so an agent can place it in the toolset without opening a 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?
Gives concrete operating context: rows arrive in rank order so the default page is the batch top, and later rows require offset when total exceeds count. It also routes the agent to rayana_ai_ticker when it needs assessment detail for one name. It stops short of saying when to pick one lane over another, which is left entirely to the caller.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_rotationCluster rotationARead-onlyInspect
Cluster-rotation layer. summary: latest per-cluster RRG
quadrant/rank rows with deltas, plus the most recent quadrant-crossing
events (days controls the window both are computed over).
laggards: members trailing a firing cluster's leader. discovered:
unsupervised cluster-discovery cohorts the structural taxonomy misses.
members: structural cluster membership.
On summary, two blocks are trimmed because together they are 80% of
the response while answering a narrower question than the rows do.
include_trajectory adds each cluster's full rank series — a chart
payload, off by default. events returns the newest 25 crossings; if
exactly 25 come back there are probably older ones, and a wider days
is not what returns them.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| view | No | summary | |
| include_trajectory | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the safety profile (readOnlyHint, openWorldHint), so the description carries the behavioral load and does it well: it discloses that two summary blocks are trimmed (80% of payload), that `include_trajectory` is a chart payload, and the critical gotcha that a wider `days` will not return older crossing events. It is slightly muddled about whether `events` is a parameter or a response block, which keeps it 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?
The view definitions are front-loaded and information-dense with little waste. The trailing sentence about the 25-event cap is a valuable gotcha but phrased in a somewhat tangled way ('a wider days is not what returns them').
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 re-explained, and the description covers the windowing, payload-trimming, and event-cap behaviors an agent needs to call this correctly. Ambiguity around `events` as param vs response block and absent sibling differentiation are the only lacunae.
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, and it does: `days` is defined as the window both blocks are computed over, `include_trajectory` adds the full rank series, and each `view` enum value is explained semantically. Every parameter gets meaning beyond the bare 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 names the resource (cluster-rotation layer) and enumerates exactly what each `view` returns (summary, laggards, discovered, members), so an agent can tell the four modes apart. It stops short of distinguishing this tool from any of the many sibling analysis tools, which is the one clear gap.
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 per-view descriptions effectively act as selection guidance (which view answers which question) and it notes `include_trajectory` is off by default. However there is no explicit when-to-use vs when-not, and no routing to any sibling tool for overlapping questions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_searchSymbol searchARead-onlyInspect
Resolve free text (ticker or company name) to known Rayana AI symbols, best match first. Pure resolution — never accrues signal.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds real behavioral value beyond that: results are returned 'best match first' (result ordering) and the call 'never accrues signal' (no side effects or signal tracking). It still omits pagination/truncation behavior, but it adds context annotations don't provide.
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 padding. The core resolution behavior is front-loaded before the clarifying 'never accrues signal' clause.
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 annotations carry the safety profile. The description covers purpose, ordering, and no-accrual behavior. The only gap is the undocumented 'limit' parameter, which is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning. It clarifies the 'q' format by naming 'ticker or company name', and 'best match first' hints at ranking, but the 'limit' parameter (default 8) is never addressed. Partial compensation only.
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+resource: 'Resolve free text (ticker or company name) to known Rayana AI symbols.' That is precise and distinguishable from the analysis-oriented siblings (signals, trends, consensus). It stops short of explicitly naming a sibling, so it's clear but not maximally differentiated.
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 explicit when-to-use or when-not guidance and no alternative tool is named. The phrase 'Pure resolution — never accrues signal' implies this is a lookup-only step, which hints at usage, but the agent must infer when to call it versus rayana_ai_ticker or rayana_ai_signals.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_signalsSignal consensus batchBRead-onlyInspect
Latest aggregator-consensus batch for one asset lane: which tickers cleared the signal pipeline, blended agg_score, confirming source count.
| Name | Required | Description | Default |
|---|---|---|---|
| lane | No | equity | |
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| lane | Yes | |
| count | Yes | |
| signals | Yes | |
| truncated | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds the batch-oriented, 'latest'-snapshot nature and the data contents, but says nothing about freshness windows, batch sizing, or auth. With annotations carrying the safety burden, this is a modest but real addition.
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 front-loaded sentence that names the resource first and then its contents, with no filler. The jargon ('blended agg_score') is dense but earns its place as content description.
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 described, and annotations cover read-only semantics. However, for a tool whose parameters are entirely undocumented, the description leaves limit behavior, freshness, and the relationship to rayana_ai_consensus unaddressed.
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 0%, so the description must carry the parameter burden. 'for one asset lane' usefully signals that lane is a single value, and 'batch' loosely implies limit is a batch size, but the limit parameter (default 60) and its effect are never explained, and the enum values are left to 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 names a specific resource (aggregator-consensus batch) and enumerates its contents: tickers that cleared the pipeline, blended agg_score, confirming source count. It is clear what the tool returns for 'one asset lane'. It stops short of differentiating itself from the sibling rayana_ai_consensus, which an agent might reasonably confuse it with.
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 use this versus rayana_ai_consensus, rayana_ai_lanes, or rayana_ai_rankings, nor any prerequisite or exclusion. The 'latest' framing implies a recency use case but gives no actionable routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_start_checkoutStart a subscriptionARead-onlyInspect
Returns a subscription link for a tier, which the user opens in a browser. Works without signing in or an API key. The tool itself takes no payment: the user signs in, accepts the Terms of Service and pays on Stripe's hosted checkout page.
Standard does not include access to this server's research tools; Pro and
Elite do. After payment, a connection that signs in with OAuth (as
Claude's connectors do) reaches the research tools once the user signs in
with the same account. A client that connects with an API key instead gets
one through a pairing code on the account page (see
rayana_ai_complete_setup).
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | pro | |
| interval | No | month |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| tier | Yes | |
| interval | Yes | |
| price_usd | Yes | |
| next_steps | Yes | |
| pairing_note | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint/openWorldHint; the description adds substantial context beyond them: no sign-in or API key is needed, the tool itself takes no payment, and the actual sign-in/ToS/payment happens on Stripe's hosted page. It does not say whether the returned link expires, is single-use, or can be regenerated, which would be useful for a checkout link.
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: the core behavior and the scope of access for each tier come first, and the setup/connection details follow. The Stripe/ToS sentence runs a little long relative to its value, but every sentence is on-topic and 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?
An output schema exists, so return values need not be explained, and the description covers auth model, payment flow, and tier entitlements — the things an agent must reason about before calling. The gaps are the unmentioned `interval` parameter and the lack of a pointer to `rayana_ai_plans` for choosing a tier.
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 0%, so the description carries the full burden. It does add meaning for `tier` — Standard lacks research tools while Pro and Elite include them — but says nothing about `interval` (month/year) and never mentions the 'pro' default for tier. Half the parameters remain undocumented.
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 first sentence names a specific verb and resource ('Returns a subscription link for a tier') and states the delivery mechanism (opened in a browser), which cleanly separates it from every sibling, all of which are read-only research endpoints. An agent can tell immediately this is the commerce/checkout entry point.
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 implies the trigger well — a user who wants to subscribe gets a link — and explicitly routes API-key clients to `rayana_ai_complete_setup`, which is a real alternative-aware pointer. It does not, however, mention `rayana_ai_plans` (the likely sibling for comparing tiers before checkout), nor state any explicit when-not condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_tickerTicker research viewBRead-onlyInspect
Full per-ticker research view: score, lane membership, per-source signals, virality, consensus, cluster-rotation position, forward returns.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | No | |
| detail | No | |
| ticker | Yes | |
| truncated | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds content scope by listing the data domains included, but it does not disclose any further behavioral traits such as authentication needs, rate limits, or caching. 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 definition is a single front-loaded sentence that names the tool's scope and then lists included data domains. It is appropriately sized and contains no redundant or filler language.
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 annotations cover the safety profile. However, the input parameter remains undocumented and no usage guidance is provided, leaving meaningful gaps for an agent selecting among many sibling tools. Minimum viable overall.
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% and the sole required parameter 'symbol' is undocumented in both schema and description. The word 'per-ticker' loosely implies the parameter is a ticker symbol, but format, examples, or constraints are absent, so the description does not compensate for the schema gap.
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 clear resource and scope: a full per-ticker research view, and enumerates its components (score, lane membership, signals, virality, consensus, rotation, forward returns). This distinguishes it from narrower siblings like ticker_price or ticker_articles, though it does not explicitly name those alternatives.
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 no when-to-use or when-not-to-use guidance. With many ticker-specific siblings, an agent receives no explicit instruction on choosing this comprehensive view over rayana_ai_ticker_analyst, rayana_ai_ticker_price, or rayana_ai_consensus.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_ticker_analystTicker AI analyst readARead-onlyInspect
Today's cached AI ticker-analyst read (lean, conviction, thesis, evidence for/against, invalidation condition). Never triggers a new model call; 404s if nothing was generated today for this ticker.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| lean | No | |
| model | No | |
| cached | No | |
| thesis | No | |
| ticker | Yes | |
| cost_usd | No | |
| conviction | No | |
| created_at | No | |
| evidence_for | No | |
| invalidation | No | |
| analysis_date | Yes | |
| evidence_against | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only and open-world behavior. The description adds valuable non-obvious traits: it is cached, never triggers a new model call, and returns 404 when nothing was generated today for the ticker.
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. The core resource definition comes first, followed by the key behavioral caveats, with 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 simple read tool with an output schema and read-only/open-world annotations, the description adequately covers purpose, cache behavior, and the 404 condition. Return values can be deferred to the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the burden for the sole symbol parameter. It only says 'for this ticker,' which adds little beyond the schema's 'Symbol' title and gives no format, exchange, or casing guidance.
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 exact resource returned — today's cached AI ticker-analyst read — including its components (lean, conviction, thesis, evidence, invalidation). It distinguishes this from sibling ticker tools like rayana_ai_ticker and rayana_ai_ticker_articles by emphasizing the analyst read.
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 operational conditions (cached, today-only, 404 if absent, no new model call), which implies when it is useful. However, it never names a sibling alternative or explicitly says when to choose this over rayana_ai_ticker or another analysis tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_ticker_articlesTicker article historyBRead-onlyInspect
One ticker's published article history, newest first.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| limit | No | |
| total | No | |
| offset | No | |
| articles | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the agent knows this is a safe, external-facing read. The description adds the useful ordering trait ('newest first'), but says nothing about pagination, result caps, or how far back history goes, which matters for a history endpoint.
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 front-loaded clause with zero filler, and the ordering guarantee is placed where it will be read. It is arguably too terse for the missing usage and parameter detail, but there is no wasted text.
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 shape need not be described. However, with 20 sibling tools including a generic articles endpoint, the definition leaves the agent without enough context to route correctly or to format the symbol argument.
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% and the single parameter 'symbol' has no description, so meaning must come from elsewhere. The phrase 'One ticker's' implies the symbol identifies the ticker, but format (exchange-qualified? case? ID vs. ticker) is never clarified.
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 the resource precisely (one ticker's published article history) and adds the ordering, so an agent knows exactly what comes back. It implicitly distinguishes itself from the sibling rayana_ai_articles by scoping to a single ticker, but never says so explicitly, so the differentiation is inferred rather than stated.
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 when-to-use guidance: nothing says to pick this over rayana_ai_articles (broader article feed), rayana_ai_ticker, or rayana_ai_ticker_analyst. No prerequisites, no note about symbol format or coverage limits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_ticker_priceTicker price historyARead-onlyInspect
Daily close-price history for one ticker over the given period.
Long periods are evenly sampled down to max_points bars rather than
cut short, so the series still spans the whole period — 5Y and MAX
return the shape of the history, not its last year. last_close,
change_pct and the range_low/range_high extremes are computed
over every bar regardless of sampling.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | 1Y | |
| symbol | Yes | ||
| max_points | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| period | Yes | |
| points | Yes | |
| ticker | Yes | |
| range_low | No | |
| change_pct | No | |
| last_close | No | |
| range_high | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already give readOnlyHint and openWorldHint, so safety is covered. The description adds genuinely non-obvious behavior: long periods are evenly downsampled to max_points rather than truncated, so 5Y/MAX preserve the whole-period shape, and last_close/change_pct/range extremes are computed over all bars pre-sampling. This is real value beyond annotations, though auth/rate-limit context is absent.
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 one-line purpose followed by two tight sentences covering the only genuinely surprising behaviors. No filler, no restatement of the title or schema, and the edge case that matters (downsampling) is stated up front.
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 described. For a 3-parameter read tool, the description covers purpose, the non-obvious sampling contract, and how derived metrics interact with sampling — enough for an agent 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?
Schema description coverage is 0%, so the description must carry the burden. It successfully explains max_points' effect (downsampling target) and clarifies period semantics (5Y/MAX span the whole window), but says nothing about symbol's format or the period enum values beyond examples and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'Daily close-price history for one ticker over the given period.' This separates it from rayana_ai_ticker (profile), rayana_ai_ticker_analyst, and rayana_ai_ticker_articles by resource type. However it never names or contrasts those siblings explicitly, so differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no routing to alternatives like rayana_ai_ticker or rayana_ai_ticker_analyst. The sampling note hints at how to pick long periods but never frames itself as usage advice or an exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_trendsAttention leaderboardCRead-onlyInspect
The attention leaderboard: latest virality snapshot ranked by VScore, with the full intensity/breadth/slope/vramp decomposition.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| asof | No | |
| count | Yes | |
| leaders | Yes | |
| truncated | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and open-world scope are covered. The description adds that this is a 'latest' snapshot (temporal freshness) and that it returns a decomposed set of metrics, but says nothing about refresh cadence, data recency, or rate limits — modest added value over 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?
Two tight sentences with no filler, and the identifying resource ('attention leaderboard') is front-loaded. It is efficient, though the jargon density slightly reduces immediate comprehension.
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 described, and the annotation covers the safety profile. Still missing are the meaning of the limit parameter and any routing cue distinguishing this from rayana_ai_rankings and rayana_ai_trends_detail, which is a notable gap for a single-purpose lookup in a crowded sibling set.
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% and the single parameter (limit, default 40) is completely undocumented in the schema, so the description carries the burden of explaining it. It never mentions the limit or any result-count behavior, leaving the parameter undocumented in both places.
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 — an attention/virality leaderboard ranked by VScore with an intensity/breadth/slope/vramp decomposition — so the agent can tell it produces a ranked snapshot list. However, it never differentiates itself from close siblings like rayana_ai_rankings or rayana_ai_trends_detail, and terms like 'VScore' and 'vramp' are undefined jargon.
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 use this tool versus alternatives — nothing distinguishes it from rayana_ai_rankings (another ranking tool) or rayana_ai_trends_detail (a detail expansion of the same concept). Usage is only implied by the word 'leaderboard'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rayana_ai_trends_detailAttention detailARead-onlyInspect
The attention layer's raw texture. sources: per-source reach today.
heat: per-(ticker, source) attention contributions. search:
rising/breakout consumer search queries. video: rising video-view
velocity. limit applies to search/video only; omit it to use that
view's own default.
| Name | Required | Description | Default |
|---|---|---|---|
| view | Yes | ||
| limit | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds one genuine behavioral fact beyond the schema: `limit` is scoped to the search and video views, and omitting it falls back to each view's own default. It says nothing about auth, rate limits, or freshness beyond the per-view 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?
Four compact clauses, one per view, then the limit rule last. Every sentence earns its place and the view-by-view mapping is easy to scan. The telegraphic phrasing ('raw texture') costs a bit of immediate comprehension.
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 not be described, and the annotations cover the read-only profile. For a two-parameter read tool the view semantics and limit behavior are sufficient to invoke correctly; the only real gap is routing relative to the sibling `rayana_ai_trends`.
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 carries the full burden and largely discharges it: it defines the semantics of all four `view` enum members and the conditional applicability plus default behavior of `limit`. Only the numeric bounds/range of `limit` are left unstated, but the shape and meaning are clear.
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 the resource (the attention layer) and enumerates exactly what each `view` yields: per-source reach, per-(ticker, source) contributions, rising search queries, and video velocity. That is concrete content-level clarity. It never states a verb (retrieve/return) and never distinguishes itself from the sibling `rayana_ai_trends`, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only inferable: an agent can pick a view by matching the content it wants, and the note that `limit` applies only to search/video gives partial guidance. There is no explicit when-to-use statement, no mention of when to prefer this over `rayana_ai_trends`, and no exclusions.
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.
3 tool updates
- Added
rayana_ai_complete_setup - Added
rayana_ai_plans - Added
rayana_ai_start_checkout
17 tool updates
- First observed
rayana_ai_analyst_brief - First observed
rayana_ai_articles - First observed
rayana_ai_consensus - First observed
rayana_ai_lanes - First observed
rayana_ai_market_brief - First observed
rayana_ai_portfolio - First observed
rayana_ai_portfolios - First observed
rayana_ai_rankings - First observed
rayana_ai_rotation - First observed
rayana_ai_search - First observed
rayana_ai_signals - First observed
rayana_ai_ticker - First observed
rayana_ai_ticker_analyst - First observed
rayana_ai_ticker_articles - First observed
rayana_ai_ticker_price - First observed
rayana_ai_trends - First observed
rayana_ai_trends_detail
Related MCP Connectors
Read-only US stock research: scores with their math, statements, ratios and playbooks, all dated.
Read-only market research: index funds, event cards, CLOB data, fund analytics. No orders.
Read-only stock research: company scores, the Monthly Top 10, the screener and your own portfolio.
Read-only stock research; OAuth unlocks your own portfolio, watchlist, and Smart Alerts.
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceHosted, read-only MCP server for US market intelligence: US market mood, per-stock sentiment and the SentiSense Score, sentiment-tagged market-moving news, analyst ratings, and institutional 13F flows.MIT- AlicenseNot gradedqualityCmaintenanceEnables read-only, remote access to a crypto and AI news archive: fetching the latest articles, searching by keyword, retrieving full machine-readable article text, market ticker snapshots, and a public scoreboard of graded calls. No authentication or local installation is required.MIT
- AlicenseAqualityCmaintenanceA read-only MCP server that lets individual investors ask AI chat clients about their own brokerage and crypto futures accounts alongside public market data, SEC filings, and ticker research, without any order or transfer capabilities.28MIT
- AlicenseAqualityAmaintenanceProvides read-only tools to retrieve source-linked catalyst evidence dossiers for public-company tickers, including deterministic catalyst scores and paged source records.237 PyPIMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.