Signed signals from 425 sectors. Every output carries an Ed25519 attestation verifiable offline.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Find groups of active signals measuring the same metric (e.g. BTC price from multiple exchanges). High disagreement_pct (>1%) suggests arbitrage or a data-source discrepancy.
This tool takes no arguments.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http volatiai https://volatiai-mcp.fourieranalys.workers.dev/mcp
Find groups of active signals measuring the same metric (e.g. BTC price from multiple exchanges). High disagreement_pct (>1%) suggests arbitrage or a data-source discrepancy.
No arguments.
{
"type": "object",
"properties": {}
}Return anchor-log status for a snapshot date: was an anchor entry recorded, what was the file SHA-256 at anchor time vs now, is a FreeTSA .tsr present. Detects post-hoc rewrites that signature verification alone cannot.
| Argument | Type | Description |
|---|---|---|
| date* | string | Snapshot date YYYY-MM-DD. |
{
"type": "object",
"required": [
"date"
],
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Snapshot date YYYY-MM-DD."
}
}
}Return the single canonical 'what is current' pointer: snapshot date, hash, signed_at, pubkey_id, and previous revision. Use this before querying a specific snapshot date to know what's freshest.
No arguments.
{
"type": "object",
"properties": {}
}Compare two snapshots. Returns regressions (worked yesterday, broken today), recoveries (broken yesterday, working today), new sectors, and disappeared sectors. Default: compares current day to previous day.
| Argument | Type | Description |
|---|---|---|
| to_date | string | YYYY-MM-DD (default: today) |
| from_date | string | YYYY-MM-DD (default: yesterday) |
{
"type": "object",
"properties": {
"to_date": {
"type": "string",
"description": "YYYY-MM-DD (default: today)"
},
"from_date": {
"type": "string",
"description": "YYYY-MM-DD (default: yesterday)"
}
}
}Get current data for one sector. Sector slugs from list_active_signals output.
| Argument | Type | Description |
|---|---|---|
| sector* | string | e.g. nvd-new-cves-count, kraken-btc-usd |
{
"type": "object",
"required": [
"sector"
],
"properties": {
"sector": {
"type": "string",
"description": "e.g. nvd-new-cves-count, kraken-btc-usd"
}
}
}One-call discovery: returns all URLs, algorithms, tools, and the 4-step verification chain a consumer needs to independently verify VolatiAI data. No snapshot fetch. Use first to learn where everything lives.
No arguments.
{
"type": "object",
"properties": {}
}List ranked active signals from VolatiAI (severity x confidence x magnitude x novelty). Filter by severity or category.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| category | string | Security, Crypto, Environment, Tech, Markets, Health, Governance, or Other |
| severity | string |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1
},
"category": {
"type": "string",
"description": "Security, Crypto, Environment, Tech, Markets, Health, Governance, or Other"
},
"severity": {
"enum": [
"info",
"notice",
"warning",
"alert",
"critical"
],
"type": "string"
}
}
}List signal categories with counts.
| Argument | Type | Description |
|---|---|---|
| envelope | object | Optional inline envelope JSON. If provided, verified against the baked-in pubkey with zero network fetch. Response gains _verification.source = "inline-baked". |
{
"type": "object",
"properties": {
"envelope": {
"type": "object",
"description": "Optional inline envelope JSON. If provided, verified against the baked-in pubkey with zero network fetch. Response gains _verification.source = \"inline-baked\"."
}
}
}List all canonical entities in the VolatiAI entity registry. Use to discover what entities are known and which sectors map to them. Optional type filter (e.g. "asset", "organization", "product", "game").
| Argument | Type | Description |
|---|---|---|
| type | string | Optional filter: asset, organization, product, game, etc. |
{
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Optional filter: asset, organization, product, game, etc."
}
}
}Resolve a slug, alias, or entity ID to a canonical VolatiAI entity. Returns the entity metadata, all sectors it appears in, external ID mappings (CoinGecko, Wikidata), and evidence links from the entity registry. Warnings flag metric incomparability (e.g. btc-exchange-spread and eth-exchange-spread share metric "spread_pct" but measure different assets โ do NOT compare their values).
| Argument | Type | Description |
|---|---|---|
| query* | string | Entity ID (e.g. "bitcoin"), alias (e.g. "BTC"), or sector slug (e.g. "btc-exchange-spread") |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Entity ID (e.g. \"bitcoin\"), alias (e.g. \"BTC\"), or sector slug (e.g. \"btc-exchange-spread\")"
}
}
}Verify a VolatiAI snapshot's chain integrity and return its signature fields for independent verification. Use this to prove the data hasn't been tampered with.
| Argument | Type | Description |
|---|---|---|
| date* | string | YYYY-MM-DD snapshot date |
{
"type": "object",
"required": [
"date"
],
"properties": {
"date": {
"type": "string",
"description": "YYYY-MM-DD snapshot date"
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 11, 2026.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.