IoMarkets.tech ISO 20022 Test Bench
REMOTE · IOMARKETS.TECH
Check ISO 20022 messages (pacs.008, pain.001, camt.053, seev.031) against schema and rules.
Available components
Last scanned (6 hours ago)
Scores higher than 64% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Finance and Payments
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability74
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2528 tokens (~109/item across 23 items; 23 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management20
- Stability observed for 6 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 23 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 24 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 3 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Oct 26 0
- Stability: unverified → 0.03 ▲ functional
- 30 Oct 26 72
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://iomarkets.tech/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=iomarkets.tech | CN=WE1,O=Google Trust Services,C=US | 29 Oct 2026 | 27 Jan 2027 | ECDSA 256 | ECDSA-SHA256 | 2087c1f6657becfd130c175444fd6644 |
| SANs: iomarkets.tech | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of iomarkets.tech. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| tech. | present | 2185 | 13 | Verified |
| iomarkets.tech. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=300 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://iomarkets.tech/mcp | Verified | 200 | |
| http (plaintext) | http://iomarkets.tech/mcp | HTTPS enforced | 301 | https://iomarkets.tech/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
check_token_contract Is this the real tokenized security? ~147
Check a token contract against the Tokenized Asset Map: is it the issuer's own contract for a tokenized fund or security on that chain? Verdicts: official, other-chain (the address is listed, but on another chain), impostor (a listed symbol on this chain, a different contract), unknown (not in the map, which says nothing either way).
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | The contract: 0x address, Solana mint, Stellar CODE:ISSUER, Aptos/Sui type tag, … |
| chain | string | yes | The chain the contract is on. |
| symbol | string | – | The symbol the token shows (optional), to catch impostors. |
No output schema declared.
No examples provided.
estimate_data_api_cost Estimate Data API spend ~161
What a monthly volume of Data API calls costs at the per-call x402 prices, against the indicative subscription plans. Give calls per month for each route; routes left out count as zero.
| Name | Type | Req | Description |
|---|---|---|---|
| candles | number | – | Calls a month to /v1/candles (Candles). |
| proof_execution | number | – | Calls a month to /v1/proof/execution (Execution proof). |
| proof_price | number | – | Calls a month to /v1/proof/price (Price proof). |
| signal_imbalance | number | – | Calls a month to /v1/signal/imbalance (Order imbalance). |
| signal_vwap | number | – | Calls a month to /v1/signal/vwap (VWAP signal). |
No output schema declared.
No examples provided.
explain_execution_request How to call the execution-quality audit ~188
Exactly how to call POST https://api.iomarkets.tech/v1/proof/execution, the paid best-execution audit: the body (pair, one of BTC-USDC, ETH-USDC, SOL-USDC, and fills: ts, fill_price, qty, side), the limits (fills per call, how old a fill may be, how close the market trade must be), the price, what comes back, and the answers that are not charged (400 for a bad body or an unsupported pair, 422 when no fill matches a trade). Give a draft body to check it with the API's own validation first. Read from the API's code; this tool calls nothing and pays nothing.
| Name | Type | Req | Description |
|---|---|---|---|
| body | string | – | A draft request body as JSON text, { "pair": "BTC-USDC", "fills": [...] }, to check before paying (optional). |
No output schema declared.
No examples provided.
explain_issue Explain a Test Bench issue code ~60
What a Test Bench issue code (such as IBAN_CHECKSUM, BALANCE_MISMATCH or OUT_OF_ORDER) means and how to fix it. Without a code, lists every code.
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | – | The issue code from a report. |
No output schema declared.
No examples provided.
explain_term Explain a word or an ISO 20022 tag ~102
A plain-English meaning of a word used on the site (ISO 20022, schema, IBAN, BIC, LEI, ISIN, UETR, CBPR+, x402, signed proof, MCP…) or of an ISO 20022 XML tag abbreviation such as GrpHdr, CdtrAcct or IntrBkSttlmAmt. Without a term, lists the words.
| Name | Type | Req | Description |
|---|---|---|---|
| term | string | – | The word or tag to explain. |
No output schema declared.
No examples provided.
get_api_status Is the Data API up? ~33
Whether the Data API at https://api.iomarkets.tech is answering right now, from its /health check.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_corporate_action One corporate action, with its seev.031 message ~86
One event in full: every date and term, the filing and the sentence or table row it came from, tokenized versions in the Asset Map, and the event as an ISO 20022 seev.031.001.14 notification (checked by the Test Bench).
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | The event id, from list_corporate_actions or holdings_calendar. |
No output schema declared.
No examples provided.
get_guide How to do something on the site ~68
Step-by-step instructions, with the exact button names, for one task on iomarkets.tech (checking a message, CI, verifying a proof, calling the Data API…). Without a task, lists the tasks.
| Name | Type | Req | Description |
|---|---|---|---|
| task | string | – | Which task. Leave out to list them all. |
No output schema declared.
No examples provided.
get_overview What IoMarkets.tech is ~53
What IoMarkets.tech is and what is built: the ISO 20022 Test Bench, the Data API (market data for AI agents, paid per request over x402), the main pages, and what comes next.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_roadmap What is built and what is next ~34
What IoMarkets.tech has built and is building next, in the same words as iomarkets.org/roadmap.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_sample One sample message ~52
The XML of one sample message from list_samples, to use as a starting point or in tests. Every party and account in it is made up.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | The sample id, from list_samples. |
No output schema declared.
No examples provided.
get_tokenized_asset One tokenized security ~58
One Asset Map entry in full: the security, every token contract chain by chain, the issuer sources each comes from, and whether its IoMarkets signature verifies.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | The entry id, from list_tokenized_assets. |
No output schema declared.
No examples provided.
holdings_calendar What affects my holdings this week ~122
For a list of holdings (tickers, CIKs or FIGIs), every ex-date, record date, payment date and effective date in one week, day by day. The week holding `day`, Monday to Sunday; this week by default. Ends with an iCalendar (webcal) subscription URL for those holdings, to give the user for their calendar app.
| Name | Type | Req | Description |
|---|---|---|---|
| day | string | – | Any day in the week, YYYY-MM-DD (optional; today by default). |
| holdings | array | yes | Tickers, SEC CIKs or FIGIs. |
No output schema declared.
No examples provided.
list_corporate_actions Dividends, splits and mergers ~214
Corporate actions of US-listed companies from their own SEC EDGAR filings (8-Ks of US companies, 6-Ks of foreign private issuers): cash dividends (amount in the stated currency, per share or per ADS, ex, record and payment dates), stock splits, reverse splits and completed mergers (cash or shares per share). Filter by holdings (tickers, CIKs or FIGIs), by days (any of an event's dates between from and to) and by type. Each event links its filing and the sentence or table row it was read from. Also gives the iCalendar subscription URL for the same holdings and types (calendarUrl in structuredContent).
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | – | First day, YYYY-MM-DD (optional). |
| holdings | array | – | Tickers, SEC CIKs or FIGIs (optional; none means every company). |
| to | string | – | Last day, YYYY-MM-DD (optional). |
| types | array | – | Kinds of event (optional). |
No output schema declared.
No examples provided.
list_data_endpoints Data API routes and prices ~55
The Data API routes at https://api.iomarkets.tech, what each returns and its price per call in USDC, with how an AI agent pays (x402 on Algorand mainnet, no account).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_messages Messages the Test Bench checks ~28
The ISO 20022 message types and versions the Test Bench checks, with what each is for.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_samples Sample messages ~54
The Test Bench sample library: a valid message of each type and broken ones, each with the issue code it raises. Use get_sample for the XML.
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | – | Only samples of this message type (optional). |
No output schema declared.
No examples provided.
list_tokenized_assets Tokenized securities in the map ~71
The securities in the Tokenized Asset Map with their identifiers (FIGI, ISIN where the issuer gives it) and the chains they are tokenized on. Optionally filter by issuer, name, symbol, ticker, ISIN or FIGI.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | – | Filter text (optional). |
No output schema declared.
No examples provided.
token_corporate_actions What is coming for the stock behind this token ~101
For a token contract that the Asset Map lists as a tokenized stock or ETF (such as an xStock): the security it tracks, and that security's dividends, splits and mergers from the corporate actions feed, each with what it does to the token. Answers 'I hold this token; what is coming?' in one call.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | The token contract. |
| chain | string | yes | The chain the token is on. |
No output schema declared.
No examples provided.
validate_message Check an ISO 20022 message ~227
Check one ISO 20022 XML message (pacs.008.001.08, pacs.009.001.08, pacs.002.001.10, pacs.004.001.09, pain.001.001.09, camt.053.001.08, camt.054.001.08 or seev.031.001.14) against the official base schema, then business rules (check digits, totals, cross-element rules, market practice). Returns valid or not, and every problem with its line, element path, stable code and a plain reason. The message type is read from the namespace. The message is checked and not stored. Same code as https://iomarkets.tech/test-bench.
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | – | Check as this message type instead of the one its namespace names (optional). |
| schema_only | boolean | – | Skip business rules (optional, default false). |
| xml | string | yes | The whole message, as XML text. A <Document> inside an envelope with an AppHdr is fine. |
No output schema declared.
No examples provided.
verify_asset_with_issuer Check an entry against the issuer, live ~66
Fetch the issuer's own sources for one Asset Map entry now (its contracts page, its public API, or its stellar.toml) and confirm every listed contract is still there, so trust needn't rest on IoMarkets.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | The entry id. |
No output schema declared.
No examples provided.
verify_execution_report Check an execution-quality report ~204
Check the whole JSON that POST https://api.iomarkets.tech/v1/proof/execution returned ({ audit, summary, attestation }): that the ed25519 signature matches the published IoMarkets key, that its USDC payment is confirmed on Algorand mainnet (a public indexer IoMarkets does not run), that the rows hash to the signed audit_sha256, and that every row and the summary recompute with the API's own scoring, against the last trade and against the arrival mid (side-aware cost, qty-weighted averages, spread, matched and unmatched fills). The same checks as the page at https://iomarkets.tech/execution-check. Returns each check, and the recomputed summary as structured data.
| Name | Type | Req | Description |
|---|---|---|---|
| report | string | yes | The response body as JSON text, exactly as received: { "audit": [...], "summary": {...}, "attestation": { "payload": {...}, "signature": "…" } }. |
No output schema declared.
No examples provided.
verify_proof Check a Data API proof ~96
Check a signed proof (the { payload, signature } JSON a Data API proof route returns): that the ed25519 signature matches the published IoMarkets key, and that its USDC payment is confirmed on Algorand mainnet (looked up on a public indexer IoMarkets does not run).
| Name | Type | Req | Description |
|---|---|---|---|
| proof | string | yes | The proof as JSON text: { "payload": {…}, "signature": "…" }. |
No output schema declared.
No examples provided.
How do I install the IoMarkets.tech ISO 20022 Test Bench MCP server?
IoMarkets.tech ISO 20022 Test Bench is a hosted endpoint at https://iomarkets.tech/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · iomarkets.tech
claude mcp add --transport http sergovashakmadze-iomarkets-tech 'https://iomarkets.tech/mcp'
What is the IoMarkets.tech ISO 20022 Test Bench MCP server?
IoMarkets.tech ISO 20022 Test Bench is an MCP server listed in the public MCP registry as io.github.SergoVashakmadze/iomarkets-tech. Check ISO 20022 messages (pacs.008, pain.001, camt.053, seev.031) against schema and rules. This page covers its hosted endpoint (https://iomarkets.tech/mcp).
Is the IoMarkets.tech ISO 20022 Test Bench MCP server safe to use?
IoMarkets.tech ISO 20022 Test Bench scores 75 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the IoMarkets.tech ISO 20022 Test Bench MCP server expose?
IoMarkets.tech ISO 20022 Test Bench exposes 23 tools: get_overview, get_guide, explain_term, list_messages, validate_message, and 18 more. Their descriptions and schemas cost roughly 2,280 tokens of context every time the server is loaded.
Does the IoMarkets.tech ISO 20022 Test Bench MCP server require authentication?
No. We connected to IoMarkets.tech ISO 20022 Test Bench without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the IoMarkets.tech ISO 20022 Test Bench MCP server still maintained?
IoMarkets.tech ISO 20022 Test Bench is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.