UNIALL RWA Index
Server Details
Sourced RWA index: find assets, AUM, issuers, transfer standards on 30+ chains.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
- ChatGPT
- –
- Claude
- UNIALL RWA Index
TDQS
Scored across 5 tools
Each tool has a mostly distinct role: free-text search, per-asset fact sheet, aggregate stats, underlying comparison, and transfer-restriction simulation. The main ambiguity is between find_assets with an `underlying` filter and compare_underlying, which both return deployments of a spot underlier; descriptions hint at the difference (issuer grouping, verified-first ordering) but an agent could plausibly pick either.
All five names follow a clean snake_case verb_noun pattern (check_, compare_, find_, get_, get_) with concrete nouns. No style mixing or vague verbs; the two get_ tools are clearly separated by their noun targets.
Five tools is well within the ideal range and each covers a distinct query need (search, detail, stats, comparison, transferability). Nothing is redundant filler and no obvious operation is split into multiple near-duplicate tools.
As a read-only RWA index, the surface covers search, per-asset sourcing, aggregate coverage, cross-issuer comparison, and transfer restrictions, which is the core lifecycle for this domain. Minor gaps exist: no standalone issuer/category/chain listing tools, so enumeration depends on find_assets with a blank or broad query.
Available Tools
5 toolscheck_transferabilityCheck transferabilityARead-onlyIdempotentInspect
Returns the on-chain transfer restriction standard for a token and, when a wallet address is provided, whether that address can receive it (simulates a transfer TO the wallet from a known holder, or a whitelist recipient check). Returns transferable="unknown" when a receive check cannot be performed. Never reports sender-balance failures as receive=false. Transfer-control facts only — not legal eligibility.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Blockchain name, e.g. ethereum, base, polygon, solana | |
| asset_id | Yes | UNIALL asset id from find_assets results | |
| wallet_address | No | Optional EVM address to check whether it can receive the token |
Output Schema
| Name | Required | Description |
|---|---|---|
| facts | Yes | Sourced scalar facts. Each item has field, value, source_url, source_type, as_of. |
| answer | Yes | Short natural-language summary of the result. |
| assets | No | Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools. |
| disclaimer | Yes | Fixed data-only disclaimer; not investment advice. |
| request_id | Yes | Request correlation id. |
| index_as_of | Yes | ISO timestamp for index freshness. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/idempotent annotations by disclosing failure semantics: transferable="unknown" when a receive check cannot be performed, and the guarantee that sender-balance failures are never reported as receive=false. It also delimits scope ('transfer-control facts only — not legal eligibility'), which prevents a real class of misinterpretation.
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-loads the primary output, then the conditional wallet behavior, then the edge-case guarantees. Every sentence carries distinct information — the 'unknown' rule and the sender-balance caveat are not redundant with each other, and there is 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 3-parameter read-only tool with a full output schema, the description covers the remaining ambiguity: which wallet semantics are simulated, what happens when the check fails, and the limit of the tool's claim. Nothing needed to invoke or interpret it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description still adds value by clarifying that wallet_address drives a receive-only simulation rather than a general transfer check, and that an unknown result is a valid outcome. It adds no meaning for asset_id or chain beyond the schema, so it stops short of a 5.
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 ('returns the on-chain transfer restriction standard for a token') plus the conditional second output (whether a wallet can receive it). The purpose is immediately distinguishable from siblings like find_assets, get_asset_summary, compare_underlying, and get_index_stats.
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 frames the two modes: omit wallet_address for the restriction standard, supply it to get a receive check. It also names the mechanism used ('simulates a transfer TO the wallet from a known holder, or a whitelist recipient check'), which implicitly tells the agent when this tool's answer is meaningful. No explicit when-not or sibling-routing guidance, keeping it below a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_underlyingCompare underlying wrappersARead-onlyIdempotentInspect
Lists every tokenized deployment of one spot underlying ticker (e.g. QQQ, SPY, NVDA), grouped by issuer with verified-first ordering. Uses the same issuer-suffix peel as taxonomy integrity (ON / x / B / Reality R). Excludes leveraged and inverse products of that underlier.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max deployments to return (default 30). | |
| underlying | Yes | Spot underlying ticker, e.g. QQQ, SPY, NVDA, IBIT | |
| verified_only | No | When true, only verified deployments. Default false. |
Output Schema
| Name | Required | Description |
|---|---|---|
| facts | Yes | Sourced scalar facts. Each item has field, value, source_url, source_type, as_of. |
| answer | Yes | Short natural-language summary of the result. |
| assets | No | Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools. |
| disclaimer | Yes | Fixed data-only disclaimer; not investment advice. |
| request_id | Yes | Request correlation id. |
| index_as_of | Yes | ISO timestamp for index freshness. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds genuine beyond-schema behavior: results are grouped by issuer, ordered verified-first, and normalized via the same issuer-suffix peel as taxonomy integrity (ON / x / B / Reality R). It does not discuss rate limits or failure modes for an unknown ticker, but the ordering and grouping disclosure is substantive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core behavior before the normalization detail and the exclusion rule. The 'issuer-suffix peel as taxonomy integrity' phrasing is jargon-heavy but carries real meaning; 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?
An output schema exists and annotations cover the safety profile, so the description only needs to explain selection and ordering semantics, which it does. The one remaining ambiguity is how limit interacts with the issuer grouping, but that is minor for a three-parameter read 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?
Schema description coverage is 100%, with limit, underlying, and verified_only each documented in the schema, so the baseline is 3. The description's mention of 'verified-first ordering' adds a little color relevant to verified_only but does not explain parameter interactions, such as how limit truncates within or across issuer groups.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ('Lists every tokenized deployment of one spot underlying ticker') with concrete examples (QQQ, SPY, NVDA) and names the grouping and ordering behavior. The exclusion of leveraged and inverse products implicitly separates it from a general asset search like find_assets, but no sibling tool is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is clear: reach for this when you want all wrappers around a single spot underlier. The exclusion clause ('Excludes leveraged and inverse products of that underlier') acts as a when-not rule, telling the agent this is not a leveraged/inverse discovery tool. It stops short of naming an alternative tool for those cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_assetsFind tokenized assetsARead-onlyIdempotentInspect
Searches the UNIALL index of tokenized real-world assets by free-text query (name, ticker, issuer) and filters for category, chain, issuer, underlying ticker, AUM, transfer standard and verification. Use underlying (e.g. QQQ) to return only wrappers of that spot underlier — leveraged/inverse products (TQQQ, SQQQ, PSQ, QLD, QQQI) are excluded. Results include verified and unverified assets; verified assets rank first. Set verified_only=true to return verified assets only. Category keys: equities, real_estate, etfs_funds, commodities_precious_metals, private_credit, treasuries (includes money market funds), money_market, commodities_other, structured_products, collectibles, corporate_bonds.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Blockchain name, e.g. ethereum, base, polygon, solana | |
| limit | No | Max matches to return (default 5). | |
| query | No | Free-text search over asset name, symbol, underlying name/ticker, and issuer name (e.g. BUIDL, BlackRock). | |
| issuer | No | Issuer name or alias, case-insensitive, e.g. BlackRock, Ondo | |
| category | No | Asset category key or list of keys. One of: equities, real_estate, etfs_funds, commodities_precious_metals, private_credit, treasuries, money_market, commodities_other, structured_products, collectibles, corporate_bonds. | |
| underlying | No | Spot underlying ticker (e.g. QQQ). Matches stored underlying fields and issuer-suffixed symbols (QQQON, QQQx, QQQB, RQQQ). Excludes leveraged/inverse products of that underlier. | |
| min_aum_usd | No | Minimum assets under management in USD | |
| verified_only | No | When true, only verified assets. Default false — includes indexed (unverified) assets; verified still rank first. | |
| transfer_standard | No | On-chain transfer restriction standard filter (e.g. securitize-ds, erc1404). |
Output Schema
| Name | Required | Description |
|---|---|---|
| facts | Yes | Sourced scalar facts. Each item has field, value, source_url, source_type, as_of. |
| answer | Yes | Short natural-language summary of the result. |
| assets | No | Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools. |
| disclaimer | Yes | Fixed data-only disclaimer; not investment advice. |
| request_id | Yes | Request correlation id. |
| index_as_of | Yes | ISO timestamp for index freshness. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description adds genuine behavior beyond them: default result set mixes verified and unverified with verified ranked first, and leveraged/inverse products are excluded from `underlying` matches. It does not discuss result volume beyond the schema's limit or what an empty match means, but the ranking and inclusion semantics are the parts an agent could not otherwise infer.
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 purpose and the highest-value caveat (underlying exclusions) before the enumeration. The trailing list of eleven category keys duplicates the schema enum verbatim and is the least efficient sentence, though it remains scannable.
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 needn't be explained, and all nine parameters are documented in-schema. For a multi-filter search tool the definition covers the decisions an agent must make; only cross-tool routing to siblings is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3 and the description largely restates it — the QQQ example and the leveraged/inverse exclusion appear in both places. The one real addition is the parenthetical 'treasuries (includes money market funds)', which disambiguates two overlapping enum values, but that is a small increment over an already complete 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?
Opens with a specific verb and resource: 'Searches the UNIALL index of tokenized real-world assets', then enumerates both the free-text fields and the filter dimensions. It is clearly distinguishable from siblings like get_index_stats and compare_underlying, which do aggregate/comparison work rather than asset lookup.
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 decision guidance for ambiguous cases: use `underlying` for spot wrappers, set verified_only=true when unverified assets must be excluded, and notes verified assets rank first by default. It does not explicitly route the agent away from this tool toward a sibling (e.g. get_asset_summary for a known asset), so it stops short of full when/when-not coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_asset_summaryGet asset summaryARead-onlyIdempotentInspect
Returns a sourced fact sheet for one UNIALL asset by id, including missing_fields and unsourced_fields. Verified legal_entity / issuer_jurisdiction / issuer include source_url and evidence when the verification system has them; otherwise source_url is null and the field is listed in unsourced_fields. Useful when you need citable fields for a single asset without inventing data.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | UNIALL asset id from find_assets results |
Output Schema
| Name | Required | Description |
|---|---|---|
| facts | Yes | Sourced scalar facts. Each item has field, value, source_url, source_type, as_of. |
| answer | Yes | Short natural-language summary of the result. |
| assets | No | Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools. |
| disclaimer | Yes | Fixed data-only disclaimer; not investment advice. |
| request_id | Yes | Request correlation id. |
| index_as_of | Yes | ISO timestamp for index freshness. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and non-destructive, so the description only needs to add behavioral context beyond that, and it does: it explains the null-vs-populated behavior of source_url and how unverified fields surface in unsourced_fields. It omits what happens for an unknown id or whether missing_fields is always present, which keeps it below 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 sentences, front-loaded with the return contract before the sourcing caveat and the use case. Dense and largely waste-free, with only mild overlap between 'sourced fact sheet' and the later sourcing explanation.
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?
The tool is simple (one required id) and an output schema exists, so return values need not be re-explained; the description still adds the sourced/unsourced semantics that make the output interpretable. Only error/failure behavior for an invalid id is 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?
The schema has a single parameter at 100% description coverage and already states the id comes from find_assets results. The description adds no format, validity or fallback guidance for the id beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ('Returns a sourced fact sheet for one UNIALL asset by id') and explicitly enumerates the distinctive payload fields (missing_fields, unsourced_fields). Saying 'one ... asset by id' cleanly separates it from the sibling find_assets list/search tool, and the term 'sourced/citable' distinguishes it from generic summary tools.
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 a clear selection cue: 'Useful when you need citable fields for a single asset without inventing data,' which tells the agent to pick this tool for citation-grade single-asset data. It stops short of naming alternatives (find_assets, compare_underlying) or stating when not to use it, so it falls just below the explicit-alternatives bar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_index_statsGet index statsARead-onlyIdempotentInspect
Returns aggregate UNIALL index counts for assets, verified assets, issuers, chains, deployments, and categories. Useful for a high-level snapshot of index coverage.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| facts | Yes | Sourced scalar facts. Each item has field, value, source_url, source_type, as_of. |
| answer | Yes | Short natural-language summary of the result. |
| assets | No | Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools. |
| disclaimer | Yes | Fixed data-only disclaimer; not investment advice. |
| request_id | Yes | Request correlation id. |
| index_as_of | Yes | ISO timestamp for index freshness. |
TDQS
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 and idempotency profile is fully covered. The description adds no further behavioral context — nothing about freshness of the counts, caching, or cost — and the return shape is covered by the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with what is returned and followed by the use case. No filler, no restatement of the title.
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 parameters, an existing output schema and rich annotations, the description covers what an agent needs to select and invoke it. The only missing element is whether counts are live or cached, which matters for a stats tool but is not essential to invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies. The description correctly does not invent parameter discussion.
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 a specific verb ('Returns') and resource ('aggregate UNIALL index counts') and enumerates exactly which entity counts come back (assets, issuers, chains, deployments, categories). That enumeration implicitly separates it from find_assets and get_asset_summary, which operate on individual records, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Useful for a high-level snapshot of index coverage' hints at the use case but gives no explicit when-to-use/when-not guidance and never names an alternative such as find_assets for per-asset detail. An agent can infer the role but must reason about it.
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.
2 tool updates
- Added
compare_underlying - Changed
find_assets1 field changed- added
Input schema / properties / underlyingAdded value: +{ + "description": "Spot underlying ticker (e.g. QQQ). Matches stored underlying fields and issuer-suffixed symbols (QQQON, QQQx, QQQB, RQQQ). Excludes leveraged/inverse products of that underlier.", + "type": "string" +}
4 tool updates
- Changed
check_transferability4 fields changed- changed
Input schema / properties / asset_id / descriptionPrevious value: -"UNIALL asset id."New value: +"UNIALL asset id from find_assets results" - changed
Input schema / properties / chain / descriptionPrevious value: -"Chain slug where the token is deployed."New value: +"Blockchain name, e.g. ethereum, base, polygon, solana" - changed
Input schema / properties / wallet_address / descriptionPrevious value: -"Optional 0x wallet to run the on-chain transfer restriction check against."New value: +"Optional EVM address to check whether it can receive the token" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "answer": { + "description": "Short natural-language summary of the result.", + "type": "string" + }, + "assets": { + "description": "Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools.", + "items": { + "additionalProperties": true, + "properties": { + "aum_usd": { + "type": [ + "number", + "null" + ] + }, + "category": { + "type": [ + "string", + "null" + ] + }, + "chains": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "type": "string" + }, + "issuer": { + "type": [ + "string", + "null" + ] + }, + "name": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "transfer_standard": { + "type": [ + "string", + "null" + ] + }, + "uniall_url": { + "type": "string" + }, + "verified": { + "type": "boolean" + } + }, + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "description": "Fixed data-only disclaimer; not investment advice.", + "type": "string" + }, + "facts": { + "description": "Sourced scalar facts. Each item has field, value, source_url, source_type, as_of.", + "items": { + "additionalProperties": true, + "properties": { + "as_of": { + "type": [ + "string", + "null" + ] + }, + "field": { + "type": "string" + }, + "source_type": { + "type": "string" + }, + "source_url": { + "type": [ + "string", + "null" + ] + }, + "value": {} + }, + "type": "object" + }, + "type": "array" + }, + "index_as_of": { + "description": "ISO timestamp for index freshness.", + "type": "string" + }, + "request_id": { + "description": "Request correlation id.", + "type": "string" + } + }, + "required": [ + "answer", + "facts", + "disclaimer", + "index_as_of", + "request_id" + ], + "type": "object" +}
- Changed
find_assets6 fields changed- changed
Input schema / properties / chain / descriptionPrevious value: -"Chain slug filter (e.g. ethereum, base, polygon)."New value: +"Blockchain name, e.g. ethereum, base, polygon, solana" - changed
Input schema / properties / issuer / descriptionPrevious value: -"Issuer alias or brand name (e.g. BlackRock → BUIDL issuer). Does not match Ondo/xStock wrappers that mention the brand."New value: +"Issuer name or alias, case-insensitive, e.g. BlackRock, Ondo" - changed
Input schema / properties / min_aum_usd / descriptionPrevious value: -"Minimum sourced AUM in USD."New value: +"Minimum assets under management in USD" - changed
Input schema / properties / query / descriptionPrevious value: -"Free-text search over asset name, symbol, underlying name/ticker, and issuer name."New value: +"Free-text search over asset name, symbol, underlying name/ticker, and issuer name (e.g. BUIDL, BlackRock)." - changed
Input schema / properties / transfer_standard / descriptionPrevious value: -"On-chain transfer restriction standard filter."New value: +"On-chain transfer restriction standard filter (e.g. securitize-ds, erc1404)." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "answer": { + "description": "Short natural-language summary of the result.", + "type": "string" + }, + "assets": { + "description": "Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools.", + "items": { + "additionalProperties": true, + "properties": { + "aum_usd": { + "type": [ + "number", + "null" + ] + }, + "category": { + "type": [ + "string", + "null" + ] + }, + "chains": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "type": "string" + }, + "issuer": { + "type": [ + "string", + "null" + ] + }, + "name": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "transfer_standard": { + "type": [ + "string", + "null" + ] + }, + "uniall_url": { + "type": "string" + }, + "verified": { + "type": "boolean" + } + }, + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "description": "Fixed data-only disclaimer; not investment advice.", + "type": "string" + }, + "facts": { + "description": "Sourced scalar facts. Each item has field, value, source_url, source_type, as_of.", + "items": { + "additionalProperties": true, + "properties": { + "as_of": { + "type": [ + "string", + "null" + ] + }, + "field": { + "type": "string" + }, + "source_type": { + "type": "string" + }, + "source_url": { + "type": [ + "string", + "null" + ] + }, + "value": {} + }, + "type": "object" + }, + "type": "array" + }, + "index_as_of": { + "description": "ISO timestamp for index freshness.", + "type": "string" + }, + "request_id": { + "description": "Request correlation id.", + "type": "string" + } + }, + "required": [ + "answer", + "facts", + "disclaimer", + "index_as_of", + "request_id" + ], + "type": "object" +}
- Changed
get_asset_summary2 fields changed- changed
Input schema / properties / id / descriptionPrevious value: -"UNIALL asset id (cuid)."New value: +"UNIALL asset id from find_assets results" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "answer": { + "description": "Short natural-language summary of the result.", + "type": "string" + }, + "assets": { + "description": "Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools.", + "items": { + "additionalProperties": true, + "properties": { + "aum_usd": { + "type": [ + "number", + "null" + ] + }, + "category": { + "type": [ + "string", + "null" + ] + }, + "chains": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "type": "string" + }, + "issuer": { + "type": [ + "string", + "null" + ] + }, + "name": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "transfer_standard": { + "type": [ + "string", + "null" + ] + }, + "uniall_url": { + "type": "string" + }, + "verified": { + "type": "boolean" + } + }, + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "description": "Fixed data-only disclaimer; not investment advice.", + "type": "string" + }, + "facts": { + "description": "Sourced scalar facts. Each item has field, value, source_url, source_type, as_of.", + "items": { + "additionalProperties": true, + "properties": { + "as_of": { + "type": [ + "string", + "null" + ] + }, + "field": { + "type": "string" + }, + "source_type": { + "type": "string" + }, + "source_url": { + "type": [ + "string", + "null" + ] + }, + "value": {} + }, + "type": "object" + }, + "type": "array" + }, + "index_as_of": { + "description": "ISO timestamp for index freshness.", + "type": "string" + }, + "request_id": { + "description": "Request correlation id.", + "type": "string" + } + }, + "required": [ + "answer", + "facts", + "disclaimer", + "index_as_of", + "request_id" + ], + "type": "object" +}
- Changed
get_index_stats1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "additionalProperties": false, + "properties": { + "answer": { + "description": "Short natural-language summary of the result.", + "type": "string" + }, + "assets": { + "description": "Matched assets when applicable (find_assets). Empty or omitted for stats/summary tools.", + "items": { + "additionalProperties": true, + "properties": { + "aum_usd": { + "type": [ + "number", + "null" + ] + }, + "category": { + "type": [ + "string", + "null" + ] + }, + "chains": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "type": "string" + }, + "issuer": { + "type": [ + "string", + "null" + ] + }, + "name": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "transfer_standard": { + "type": [ + "string", + "null" + ] + }, + "uniall_url": { + "type": "string" + }, + "verified": { + "type": "boolean" + } + }, + "type": "object" + }, + "type": "array" + }, + "disclaimer": { + "description": "Fixed data-only disclaimer; not investment advice.", + "type": "string" + }, + "facts": { + "description": "Sourced scalar facts. Each item has field, value, source_url, source_type, as_of.", + "items": { + "additionalProperties": true, + "properties": { + "as_of": { + "type": [ + "string", + "null" + ] + }, + "field": { + "type": "string" + }, + "source_type": { + "type": "string" + }, + "source_url": { + "type": [ + "string", + "null" + ] + }, + "value": {} + }, + "type": "object" + }, + "type": "array" + }, + "index_as_of": { + "description": "ISO timestamp for index freshness.", + "type": "string" + }, + "request_id": { + "description": "Request correlation id.", + "type": "string" + } + }, + "required": [ + "answer", + "facts", + "disclaimer", + "index_as_of", + "request_id" + ], + "type": "object" +}
4 tool updates
- Changed
check_transferability6 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / properties / asset_id / descriptionAdded value: +"UNIALL asset id." - removed
Input schema / properties / asset_id / minLengthRemoved value: -1 - added
Input schema / properties / chain / descriptionAdded value: +"Chain slug where the token is deployed." - removed
Input schema / properties / chain / minLengthRemoved value: -1 - added
Input schema / properties / wallet_address / descriptionAdded value: +"Optional 0x wallet to run the on-chain transfer restriction check against."
- Changed
find_assets14 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - removed
Input schema / properties / category / anyOfRemoved value: -[ - { - "enum": [ - "equities", - "real_estate", - "etfs_funds", - "commodities_precious_metals", - "private_credit", - "treasuries", - "money_market", - "commodities_other", - "structured_products", - "collectibles", - "corporate_bonds" - ], - "type": "string" - }, - { - "items": { - "$ref": "#/properties/category/anyOf/0" - }, - "maxItems": 11, - "minItems": 1, - "type": "array" - } -] - added
Input schema / properties / category / descriptionAdded value: +"Asset category key or list of keys. One of: equities, real_estate, etfs_funds, commodities_precious_metals, private_credit, treasuries, money_market, commodities_other, structured_products, collectibles, corporate_bonds." - added
Input schema / properties / category / oneOfAdded value: +[ + { + "enum": [ + "equities", + "real_estate", + "etfs_funds", + "commodities_precious_metals", + "private_credit", + "treasuries", + "money_market", + "commodities_other", + "structured_products", + "collectibles", + "corporate_bonds" + ], + "type": "string" + }, + { + "items": { + "enum": [ + "equities", + "real_estate", + "etfs_funds", + "commodities_precious_metals", + "private_credit", + "treasuries", + "money_market", + "commodities_other", + "structured_products", + "collectibles", + "corporate_bonds" + ], + "type": "string" + }, + "maxItems": 11, + "minItems": 1, + "type": "array" + } +] - added
Input schema / properties / chain / descriptionAdded value: +"Chain slug filter (e.g. ethereum, base, polygon)." - added
Input schema / properties / issuer / descriptionAdded value: +"Issuer alias or brand name (e.g. BlackRock → BUIDL issuer). Does not match Ondo/xStock wrappers that mention the brand." - added
Input schema / properties / limit / descriptionAdded value: +"Max matches to return (default 5)." - added
Input schema / properties / min_aum_usd / descriptionAdded value: +"Minimum sourced AUM in USD." - added
Input schema / properties / query / descriptionAdded value: +"Free-text search over asset name, symbol, underlying name/ticker, and issuer name." - removed
Input schema / properties / query / maxLengthRemoved value: -200 - removed
Input schema / properties / query / minLengthRemoved value: -1 - added
Input schema / properties / transfer_standard / descriptionAdded value: +"On-chain transfer restriction standard filter." - changed
Input schema / properties / transfer_standard / enumPrevious value: -[ - "permissionless", - "erc1404", - "securitize-ds", - "whitelist" -]New value: +[ + "erc1404", + "securitize-ds", + "whitelist", + "permissionless" +] - added
Input schema / properties / verified_only / descriptionAdded value: +"When true, only verified assets. Default false — includes indexed (unverified) assets; verified still rank first."
- Changed
get_asset_summary3 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / properties / id / descriptionAdded value: +"UNIALL asset id (cuid)." - removed
Input schema / properties / id / minLengthRemoved value: -1
- Changed
get_index_stats2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
1 tool update
- Changed
find_assets3 fields changed- added
Input schema / properties / category / anyOfAdded value: +[ + { + "enum": [ + "equities", + "real_estate", + "etfs_funds", + "commodities_precious_metals", + "private_credit", + "treasuries", + "money_market", + "commodities_other", + "structured_products", + "collectibles", + "corporate_bonds" + ], + "type": "string" + }, + { + "items": { + "$ref": "#/properties/category/anyOf/0" + }, + "maxItems": 11, + "minItems": 1, + "type": "array" + } +] - removed
Input schema / properties / category / typeRemoved value: -"string" - added
Input schema / properties / queryAdded value: +{ + "maxLength": 200, + "minLength": 1, + "type": "string" +}
4 tool updates
- First observed
check_transferability - First observed
find_assets - First observed
get_asset_summary - First observed
get_index_stats
Related MCP Connectors
Agent-native scoring, search and routing for tokenized real-world assets across multi-chain.
Source-linked RWA tokenization knowledge for any AI: security tokens, regulation and standards.
Tokenized asset data for agents: treasury yields, stablecoin rates, tokenized stocks, alerts.
Chinese RWA data: verification, scorecards, issuances, licenses, market, regulatory via x402.
Related MCP Servers
- AlicenseAqualityDmaintenanceConnects AI agents to Real World Asset (RWA) data, enabling queries about tokenized assets, market trends, TVL analytics, token holders, and portfolio tracking across multiple blockchains.181MIT

Realmint MCPofficial
AlicenseNot gradedqualityDmaintenanceAgent-native access to tokenized RWAs: scoring, market data, route support, price history, and a keyless x402 buy on-ramp via MCP tools.MIT- FlicenseAqualityDmaintenanceComplete DeFi intelligence — Yield, Staking, Restaking, RWA, Perps, Gas Optimization & Contract Security. One answer, not raw data.17-
- AlicenseAqualityDmaintenanceProvides cryptographically verifiable RWA trust attestations and multi-chain DeFi data (TVL, top protocols, positioning scorecards) via MCP tools for AI assistants.111MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.