Skip to main content
Glama

AsOf Demo

Server Details

No-sign-up demo: recorded historical crypto wallet holdings, prices and CSV exports. Fixed examples.

Ownership verified
Status
Healthy
Uptime
99.8% over 27 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

B3.1/5.0

Scored across 6 tools

Disambiguation2/5

get_holdings and retrieve_holdings are explicitly the same data, so an agent has no basis to choose between them and may call both. export_holdings_csv also overlaps in content (assets, quantities, values) differing only in output format, adding further selection ambiguity.

Naming Consistency3/5

All names are snake_case verb_noun, which is readable, but the verb vocabulary is inconsistent: 'get' and 'retrieve' denote identical operations, and 'list_demo_wallets' embeds a qualifier the other tools omit. The synonym pair undermines an otherwise predictable pattern.

Tool Count4/5

Six tools is well within a sensible range for a fixed-snapshot demo. The only slack is the redundant retrieve_holdings alias, which adds a slot without adding capability.

Completeness3/5

The demo covers wallet listing, holdings read, historical price, CSV export, and a scope/guide tool, which is coherent for the stated purpose. Gaps remain: no way to filter holdings or prices by date or token, and no metadata/coverage detail beyond the summary in list_demo_wallets.

Available Tools

6 tools
export_holdings_csvDemo: Export holdings csvB
Read-onlyIdempotent
Inspect

Export every sample asset, quantity and USD value as CSV, including unpriced tokens.

NameRequiredDescriptionDefault
walletYes
as_of_dateYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare this as a read-only, idempotent, non-destructive, closed-world operation. The description adds useful scope about including unpriced tokens, but does not describe permissions, edge cases, or how unpriced assets appear in the export.

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

Conciseness5/5

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

The definition is a single front-loaded sentence with no wasted words. It efficiently communicates the output format and included data.

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

Completeness3/5

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

The tool is simple and has an output schema plus rich annotations, so much context is already structured. However, with 0% schema description coverage, the missing explanation of wallet and as_of_date leaves the definition only minimally complete for correct invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description needs to compensate for undocumented parameters. It does not mention wallet or as_of_date at all, leaving format expectations for both required parameters unclear.

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

Purpose4/5

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

The description states a specific verb and resource: export holdings as CSV, and specifies the included fields plus unpriced-token handling. It is clear what the tool does, though it does not explicitly distinguish itself from siblings like get_holdings or retrieve_holdings.

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

Usage Guidelines2/5

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

There is no guidance on when to use this export tool versus the sibling holdings retrieval tools. The description implies a CSV export use case but offers no exclusions, prerequisites, or alternative-routing advice.

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

get_demo_guideDemo: Get demo guideB
Read-onlyIdempotent
Inspect

Explain fixed-snapshot scope and how to connect the separate paid service.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is fully covered by structured data. The description adds topical scope (snapshot semantics, paid-service connection) but says nothing about the form, depth, or freshness of the returned content; with an output schema present, that omission is acceptable rather than critical.

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

Conciseness4/5

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

A single short sentence with no filler and the key topics front-loaded. It is efficiently sized, though its brevity edges into under-specification rather than tight conciseness.

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

Completeness4/5

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

With no parameters, full annotation coverage, and an output schema that documents the return value, the description only needs to frame what the guide is about, which it does. The gaps are that 'fixed-snapshot scope' and 'separate paid service' are left as unexplained jargon with no indication of the surrounding domain.

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

Parameters4/5

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 for a parameterless tool is 4.

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

Purpose3/5

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

The description names the subject matter ('fixed-snapshot scope', 'the separate paid service') but never states the concrete action or artifact: it does not say this returns a static explanatory guide/document, and it does not distinguish itself from sibling demo tools like list_demo_wallets. 'Explain ... and how to connect' describes content topics rather than a tool operation, so an agent gets only a vague sense of purpose.

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

Usage Guidelines2/5

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

There is no when-to-use or when-not-to-use guidance and no reference to any alternative tool. An agent must infer from the topic words alone that this is the place to look for demo/snapshot documentation.

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

get_historical_priceDemo: Get historical priceB
Read-onlyIdempotent
Inspect

Read a recorded sample price by symbol or exact contract; no market lookup.

NameRequiredDescriptionDefault
assetYes
chainNo
walletNo
as_of_dateYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and openWorld=false, which matches 'no market lookup' and reinforces that no external call occurs. The description usefully signals that the returned price is a recorded sample (potentially stale/demo), but says nothing about behavior on unknown symbols, missing records, or date-range limits.

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

Conciseness4/5

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

A single tight sentence with the core action front-loaded and the 'no market lookup' qualifier at the end where it reads as a constraint. Nothing is wasted, though the extreme brevity leaves little room for the parameter detail this tool needs.

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

Completeness2/5

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. But with 4 parameters at 0% schema coverage and only a passing mention of symbol/contract, the description leaves format for 'as_of_date', the meaning of chain vs wallet, and error behavior unspecified.

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

Parameters2/5

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

Schema description coverage is 0% across 4 parameters, so the description must carry the semantics. It only hints at 'asset' (symbol) and 'chain'/'wallet' ('exact contract'), and gives no meaning for 'as_of_date' or the relationship between chain and wallet. Most parameters remain undocumented.

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

Purpose4/5

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

States a specific verb ('Read') and resource ('a recorded sample price') and narrows the source with 'by symbol or exact contract; no market lookup,' which lets an agent tell it apart from a live-quote tool. It does not explicitly differentiate from the holdings/wallet siblings, but those are clearly different resources.

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

Usage Guidelines3/5

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

'No market lookup' and 'recorded sample price' imply the usage context: this retrieves stored/demo data rather than fetching live prices. However, no alternative tool is named and no explicit when-not condition is stated, so the routing guidance is inferred rather than declared.

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

get_holdingsDemo: Get holdingsB
Read-onlyIdempotent
Inspect

Read one listed wallet's precomputed report, paginated; never scan or refresh.

NameRequiredDescriptionDefault
limitNo
offsetNo
walletYes
as_of_dateYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuine context beyond them: the data is precomputed (not computed on demand), results are paginated, and no scan/refresh occurs, which tells the agent about staleness and cost.

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

Conciseness4/5

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

A single front-loaded sentence with no filler, and the key constraint (precomputed, never scan/refresh) is placed where an agent will see it. It is slightly telegraphic, which costs a little readability but not length.

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

Completeness2/5

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, but for a 4-parameter tool with 0% schema coverage the description leaves required inputs (as_of_date format, wallet identifier form) and sibling routing unexplained.

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

Parameters2/5

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

Schema description coverage is 0% across 4 parameters, so the description carries the full burden. It only implies pagination (limit/offset) and wallet scope; it says nothing about the required as_of_date semantics, accepted date format, or what a 'listed' wallet means.

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

Purpose4/5

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

States a specific verb (Read) and resource (one listed wallet's precomputed report), plus a scoping attribute (precomputed, paginated). It does not, however, distinguish itself from the similarly named sibling retrieve_holdings or export_holdings_csv, leaving an agent to guess which holdings tool applies.

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

Usage Guidelines3/5

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

'never scan or refresh' implies this tool only serves cached/precomputed data and should not be reached for fresh computation, which is useful implied guidance. But no alternative tool is named for the refresh/scan case, and no explicit when-to-use condition is stated.

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

list_demo_walletsDemo: List demo walletsA
Read-onlyIdempotent
Inspect

List the fixed public wallets, snapshot dates and recorded coverage.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered structurally. The description adds that the wallets are "fixed public" and that snapshot dates/coverage are included, which is modest extra context but not much beyond the annotations and the existing output schema.

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

Conciseness5/5

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

A single front-loaded sentence with no filler. The verb and the returned content are stated in the first few words and nothing is repeated from the title or schema.

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

Completeness4/5

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

For a zero-parameter read-only list tool with full annotations and a declared output schema, the description covers what is needed to invoke it. It could be slightly richer about what the demo dataset represents, but the return-value burden is already carried by the output schema.

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

Parameters4/5

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

The tool takes zero parameters, so the schema-level baseline of 4 applies. The description correctly does not invent parameters, though it also offers no scoping or filtering semantics because none exist.

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

Purpose4/5

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

States a specific verb ("List") and concrete resources (fixed public wallets, snapshot dates, recorded coverage), so an agent can predict the shape of the result. It does not explicitly contrast itself with siblings like get_holdings or get_demo_guide, so it falls short of the sibling-differentiating 5.

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

Usage Guidelines2/5

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 such as get_holdings, retrieve_holdings, or get_demo_guide. The "demo" naming hints at a demo-data context, but no explicit trigger, prerequisite, or exclusion is given.

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

retrieve_holdingsDemo: Retrieve holdingsC
Read-onlyIdempotent
Inspect

Retrieve saved sample assets, quantities and values; same data as get_holdings.

NameRequiredDescriptionDefault
limitNo
offsetNo
walletYes
as_of_dateYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description does add one useful piece of context beyond them — that the values are saved sample/demo assets — but says nothing about pagination behavior despite limit/offset, nor about data freshness relative to as_of_date.

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

Conciseness4/5

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

One tight sentence with the resource and its equivalence to get_holdings front-loaded; nothing is wasted. Brevity works against it only in that the space saved was needed for parameter and usage detail.

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

Completeness2/5

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, but with four fully undocumented parameters (including two required ones) and no usage routing against get_holdings, the definition leaves an agent guessing about inputs and intent.

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

Parameters2/5

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

Schema description coverage is 0% and there are four parameters (wallet, as_of_date, limit, offset), none of which the description explains. 'quantities and values' describes returned fields, not the inputs, so the description does not compensate for the documentation gap in the schema.

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

Purpose4/5

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

States a specific verb and resource ('Retrieve saved sample assets, quantities and values') and explicitly equates the payload to get_holdings, so an agent can tell it returns holdings data rather than something else. It does not, however, clarify the demo/sample scope as the mechanism that distinguishes it from get_holdings beyond the title.

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

Usage Guidelines2/5

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

The clause 'same data as get_holdings' implies an alternative exists but gives no condition for choosing one over the other. There is no statement about when demo data is appropriate versus the live tool, and no mention of related siblings like list_demo_wallets or export_holdings_csv.

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.

  1. 6 tool updates
    • First observedexport_holdings_csv
    • First observedget_demo_guide
    • First observedget_historical_price
    • First observedget_holdings
    • First observedlist_demo_wallets
    • First observedretrieve_holdings

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Local-first crypto portfolio aggregation across exchanges (Bybit, Binance), EVM and Solana wallets, and Polymarket. Read-only credentials, runs as a local MCP server. Data aggregation only, not financial advice.
    15
    177 npm
    6
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides read-only portfolio management and analytics across Binance, Coinbase, and Kraken exchanges. It enables users to track holdings, analyze risk, and monitor market intelligence through 18 specialized tools.
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources