_ registry / mcp http-sse · checked 38m ago

snowstorm-mcp-server

https://snowstorm-mcp.snomedtools.org

Registry code: 47e4e1a37b37a1ac

api record

Use the available tools to query SNOMED terminologies via Snowstorm. Each terminology represents a SNOMED edition (e.g. 'snomedct', 'snomedct-us'). If you omit the 'terminology' parameter, the server's default terminology is used. You may optionally pass a backend 'target' to constrain routing/disambiguate. Call list_terminologies first to discover available editions. ECL (Expression Constraint Language) queries are supported via snomed_expand: pass an ECL expression as value_set_url using the format 'http://snomed.info/sct?fhir_vs=ecl/<ECL>' (e.g.…

endpoint
https://snowstorm-mcp.snomedtools.org/mcp
protocol
http-sse ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is snowstorm-mcp-server live?
Yes — it answered the hub's last check (checked 38m ago). It answered 100% of checks over the last 30 days.
Is snowstorm-mcp-server free to use?
Yes — the hub reached it with no key and no payment.
What tools does snowstorm-mcp-server have?
15 tools: snowstorm_get_concept_native, snowstorm_list_versions, snowstorm_search_concepts, snomed_get_descendants, snomed_get_ancestors, snomed_get_children, snomed_lookup, snomed_subsumes, ….
Is snowstorm-mcp-server safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 99.7%· all time 99.7%

latency
325ms

last good check

priced tools
0

of 15 tools

_ answered our checks, 90 days 595 checks · signed record
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • query snomed terminologies
  • expand snomed value sets
  • get snomed concept details
  • validate snomed concept ids
  • browse snomed hierarchy
takes → gives
text, data → data
tools
15 reads
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 15 tools
6 open 9 never probed 6 of 15 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • fhir_metadata reads open 12h ago

    Return a parsed FHIR CapabilityStatement summary for a terminology's backend. Set include_raw=true (default) to also include the raw CapabilityStatement payload. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "fhir_metadataArguments",
      "properties": {
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "include_raw": {
          "type": "boolean",
          "title": "Include Raw",
          "default": true
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 35 lines
  • snomed_expand reads open 7h ago

    Expand a SNOMED CT value set using FHIR ValueSet/$expand. The primary tool for retrieving concept sets via ECL (Expression Constraint Language) queries. Works on Snowstorm and Lite when FHIR is available. WHEN TO USE: retrieving concepts matching an ECL expression (most common use case), getting members of a reference set, counting concepts in a subhierarchy (use summary_only=true), text-filtering within a concept set, or retrieving attribute values across a concept set (dotted notation). VALUE SET URL FORMAT: Subtype query: http://snomed.info/sct?fhir_vs=ecl/<<CONCEPTID Attribute query: http://snomed.info/sct?fhir_vs=ecl/<<CONCEPTID:ATTR=<<VALUE Refset members: http://snomed.info/sct?fhir_vs=ecl/^REFSETID Full ECL: http://snomed.info/sct?fhir_vs=ecl/<YOUR ECL EXPRESSION> PERFORMANCE RULES (follow on every query): These rules protect the server from overload. Violating them causes timeouts, degraded performance, and may affect other users on shared infrastructure. 1. SCOPE FIRST. Never root a constrained query at a top-level hierarchy concept without narrowing scope first. These roots are TOO BROAD on their own: <<404684003 Clinical finding (~350k concepts) <<71388002 Procedure (~100k concepts) <<105590001 Substance (~70k concepts) <<123037004 Body structure (~40k concepts) Always narrow to a subhierarchy (e.g. <<195967001 Asthma) before adding attribute constraints, filters, or MINUS operations. 2. COUNT BEFORE FETCHING. Always use summary_only=true as the first call to check the total size. If total > 1000, stop and confirm with the user before fetching pages. Never assume a result set is small. 3. DO NOT PAGINATE AUTONOMOUSLY. Fetch the first page, summarise the results, and ask the user whether they need more. Never loop through all pages of a large result set without explicit user instruction. 4. NO TOP-LEVEL MINUS ON LARGE SETS. X MINUS Y at the top level requires materialising both sets in full and will time out on large hierarchies. Always prefer MINUS inside an attribute value expression: GOOD: <<X:{attr=(<<A MINUS <<B)} BAD: (<<X:attr=<<A) MINUS (<<X:attr=<<B) 5. NO WILDCARD QUERIES ON LARGE SETS. Expressions like <<404684003:*=* or <<71388002:attr=* against top-level hierarchies are extremely expensive. Scope to a subhierarchy before using wildcards. 6. NO RECURSIVE CHILDREN CALLS. Never call snomed_get_children in a loop to traverse a hierarchy. Use <<CONCEPTID ECL for transitive closure in one call. 7. NO REPEATED snomed_lookup ACROSS A CONCEPT SET. Use dotted attribute notation (<<X.attrId) to retrieve attribute values across a set in one call instead of calling snomed_lookup for each concept individually. ECL QUICK REFERENCE: Hierarchy operators: <<X Subtype of X (including X) <X Strict subtype of X (excluding X) >>X Supertype of X (including X) >!X Direct parents of X only (ECL 1.4) <!X Direct children of X only (ECL 1.4) ^X Member of reference set X Set operators (use at top level between expressions): X OR Y Union X AND Y Intersection X MINUS Y Difference WARNING: Top-level MINUS between two large expansions will TIME OUT. Prefer MINUS inside an attribute value expression instead. Attribute constraints: <<X : attr=<<Y Ungrouped (attribute may be in any role group) <<X : {attr1=<<Y, attr2=<<Z} Grouped (BOTH attributes in the SAME role group) WARNING: Grouped vs ungrouped returns DIFFERENT results. Always choose deliberately. MINUS inside attribute value (PREFERRED for performance): <<X : {246075003=(<<105590001 MINUS <<410942007), 363698007=<<80891009} Wildcards: <<X : *=<<Y Any attribute with value Y <<X : attr=* Any value for a specific attribute CARDINALITY (constrain how many times an attribute appears): <<X : [0..0] attr=* Concepts with NO instances of attr (content QA) <<X : [1..1] {attr=<<Y} Exactly one instance of attr in the same role group <<X : [2..*] {attr=*} Two or more instances of attr NOTE: [0..0] does not require braces. [1..*] and above should use grouped syntax { }. DOTTED ATTRIBUTE NOTATION (returns attribute VALUES, not filtered concepts): <<X . attrId Returns the SET OF VALUES of attrId across all subtypes of X This is the INVERSE of filtering: it returns destination concepts, not source. Use for: exploring attribute value ranges, building value set pickers, content coverage analysis, verifying modelling scope. DESCRIPTION FILTERS (ECL 1.5/1.6): <<X {{ term = "mild" }} Concepts with "mild" in any description <<X {{ term = "mild", language = en }} English descriptions only <<X {{ typeId = 900000000000003001 }} FSN filter <<X {{ typeId = 900000000000013009 }} Synonym filter Multiple filters are ANDed together. CONCEPT FILTERS (ECL 1.6): <<X {{ active = false }} Inactive concepts only <<X {{ active = true }} Active concepts only (default) <<X {{ effectiveTime > "20200101" }} Modified after Jan 2020 (YYYYMMDD) <<X {{ effectiveTime = "20230901" }} Exact release date <<X {{ effectiveTime >= "20200101", effectiveTime <= "20231001" }} Date range NOTE: Concept filters on very large sets will TIME OUT. Scope first. HISTORY SUPPLEMENTS (ECL 2.0): NOT SUPPORTED on this server (returns HTTP 500). Use snomed_validate_code to check individual inactive codes instead. FUZZY MATCHING: Set fuzzy=true to enable approximate/fuzzy matching on the filter text for misspelled or partial terms (Snowstorm Lite only; silently ignored on full Snowstorm). PAGINATION: ALWAYS use summary_only=true first to check total before fetching. If total > 1000, confirm with user before paginating. Default count=20. Raise explicitly for larger pages. max_contains caps the internal buffer (default 100). Use offset for pagination. EXAMPLES: Count respiratory disorders first (always do this before fetching): value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<50043002', summary_only=true All subtypes of Asthma: value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<195967001' Disorders by finding site (heart), ungrouped: value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<404684003:363698007=<<80891009' Disorders caused by substance on heart, grouped (same role group): value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<404684003:{246075003=<<105590001,363698007=<<80891009}' Excluding drug-caused (MINUS in attribute value, no timeout): value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<404684003:{246075003=(<<105590001 MINUS <<410942007),363698007=<<80891009}' Concepts added to asthma hierarchy since Jan 2020: value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<195967001 {{ effectiveTime > "20200101" }}' Inactive asthma concepts (for EHR legacy code handling): value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<195967001 {{ active = false }}' Asthma concepts with "mild" in any description: value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<195967001 {{ term = "mild" }}' Finding sites across all asthma subtypes (dotted notation, one call not many lookups): value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<195967001.363698007' Clinical findings with exactly one cardiac finding site: value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<404684003:[1..1]{363698007=<<80891009}' Clinical findings with NO finding site modelled (content QA): value_set_url='http://snomed.info/sct?fhir_vs=ecl/<<404684003:[0..0]363698007=*' Reference set members: value_set_url='http://snomed.info/sct?fhir_vs=ecl/^723264001'

    mcp-tool

    {
      "type": "object",
      "title": "snomed_expandArguments",
      "properties": {
        "count": {
          "type": "integer",
          "title": "Count",
          "default": 20
        },
        "fuzzy": {
          "type": "boolean",
          "title": "Fuzzy",
          "default": false
        },
        "filter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Filter",
          "default": null
        },
        "offset": {
          "type": "integer",
          "title": "Offset",
          "default": 0
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        },
        "max_contains": {
          "type": "integer",
          "title": "Max Contains",
          "default": 100
        },
        "summary_only": {
          "type": "boolean",
          "title": "Summary Only",
          "default": false
        },
        "value_set_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Value Set Url",
          "default": null
        }
      }
    }
    arguments 79 lines
  • snowstorm_list_codesystems reads open 7h ago

    List Snowstorm code systems with summarized latest version info. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snowstorm_list_codesystemsArguments",
      "properties": {
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 30 lines
  • list_terminologies reads open 12h ago

    List the SNOMED CT editions and branches available on the connected server. WHEN TO USE: before running edition-specific queries to confirm available terminology keys, checking which release version is loaded, or verifying server connectivity.

    mcp-tool

    {
      "type": "object",
      "title": "list_terminologiesArguments",
      "properties": {}
    }
    arguments 5 lines
  • server_capabilities reads open 12h ago

    Return backend classification and capabilities for a terminology. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "server_capabilitiesArguments",
      "properties": {
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 30 lines
  • server_health reads open 7h ago

    Return reachability and basic backend capability flags. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "server_healthArguments",
      "properties": {
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 30 lines
  • snowstorm_get_concept_native reads unknown 20h ago

    Snowstorm-native concept detail by conceptId. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snowstorm_get_concept_nativeArguments",
      "required": [
        "concept_id"
      ],
      "properties": {
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "concept_id": {
          "type": "string",
          "title": "Concept Id"
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        },
        "max_synonyms": {
          "type": "integer",
          "title": "Max Synonyms",
          "default": 15
        },
        "include_synonyms": {
          "type": "boolean",
          "title": "Include Synonyms",
          "default": true
        }
      }
    }
    arguments 47 lines
  • snowstorm_list_versions reads unknown 20h ago

    List versions for a Snowstorm code system short name. Optionally specify terminology and/or target for routing; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snowstorm_list_versionsArguments",
      "required": [
        "code_system_short_name"
      ],
      "properties": {
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        },
        "code_system_short_name": {
          "type": "string",
          "title": "Code System Short Name"
        }
      }
    }
    arguments 37 lines
  • snowstorm_search_concepts reads unknown 20h ago

    Snowstorm-native concept search by term. Optionally specify terminology and/or target; defaults to the server's default terminology. Terms need at least 3 searchable characters (letters/digits); shorter terms return zero hits with a notice (not an error), e.g. prefer a longer phrase for acronyms.

    mcp-tool

    {
      "type": "object",
      "title": "snowstorm_search_conceptsArguments",
      "required": [
        "term"
      ],
      "properties": {
        "term": {
          "type": "string",
          "title": "Term"
        },
        "limit": {
          "type": "integer",
          "title": "Limit",
          "default": 10
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "active_only": {
          "type": "boolean",
          "title": "Active Only",
          "default": true
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 47 lines
  • snomed_get_descendants reads unknown 15h ago

    Get all descendant concepts of a SNOMED concept (children, grandchildren, etc. via IS-A hierarchy). Transitive closure downward, equivalent to <<X in ECL but returned as a hierarchy structure. Use snomed_expand with ECL if you need a flat concept list with attribute constraints instead. Use count and offset to paginate large result sets. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snomed_get_descendantsArguments",
      "required": [
        "concept_id"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "title": "Count",
          "default": 50
        },
        "offset": {
          "type": "integer",
          "title": "Offset",
          "default": 0
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "concept_id": {
          "type": "string",
          "title": "Concept Id"
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 47 lines
  • snomed_get_ancestors reads unknown 15h ago

    Get ancestor concepts of a SNOMED concept (parents, grandparents, etc. via IS-A hierarchy). Traverses upward through IS-A to find the classification position of a concept. Set direct_only=true to return only immediate parents. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snomed_get_ancestorsArguments",
      "required": [
        "concept_id"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "title": "Count",
          "default": 50
        },
        "offset": {
          "type": "integer",
          "title": "Offset",
          "default": 0
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "concept_id": {
          "type": "string",
          "title": "Concept Id"
        },
        "direct_only": {
          "type": "boolean",
          "title": "Direct Only",
          "default": false
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 52 lines
  • snomed_get_children reads unknown 15h ago

    Get direct IS-A children of a SNOMED concept (one level down in the hierarchy). More efficient than ECL for simple hierarchy browsing when you only need immediate children. WHEN TO USE: exploring the shape of a subhierarchy before writing an ECL query, understanding how a concept is subdivided at the next level, or lightweight hierarchy browsing without full ECL overhead. NOT FOR: transitive closure (all descendants) — use snomed_expand with <<CONCEPTID. Not for attribute-based queries — use snomed_expand with ECL. Not for filtering by description or metadata — use snomed_expand with filters. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snomed_get_childrenArguments",
      "required": [
        "concept_id"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "title": "Count",
          "default": 50
        },
        "offset": {
          "type": "integer",
          "title": "Offset",
          "default": 0
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "concept_id": {
          "type": "string",
          "title": "Concept Id"
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 47 lines
  • snomed_lookup reads unknown 22h ago

    Retrieve full concept details via FHIR CodeSystem/$lookup for a known SNOMED CT concept ID. Returns the FSN, synonyms, parent concepts, and all defining attributes with their values. WHEN TO USE: verifying a concept ID before using it in an ECL expression, inspecting the full attribute modelling of a specific concept, retrieving all synonyms and descriptions for a concept, checking whether a concept is active or inactive, or confirming the correct concept ID for a common attribute (e.g. finding site). If the code does not exist, returns found=false with a message (not an error). NOT FOR: searching by text (use snomed_expand with a {{ term = "..." }} filter) or retrieving a concept set (use snomed_expand with ECL). Optionally specify terminology (e.g. 'snomedct-us') and/or target; defaults to the server's default terminology when omitted.

    mcp-tool

    {
      "type": "object",
      "title": "snomed_lookupArguments",
      "required": [
        "code"
      ],
      "properties": {
        "code": {
          "type": "string",
          "title": "Code"
        },
        "system": {
          "type": "string",
          "title": "System",
          "default": "http://snomed.info/sct"
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "version": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Version",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 54 lines
  • snomed_subsumes reads unknown 22h ago

    FHIR CodeSystem/$subsumes for two SNOMED codes. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snomed_subsumesArguments",
      "required": [
        "code_a",
        "code_b"
      ],
      "properties": {
        "code_a": {
          "type": "string",
          "title": "Code A"
        },
        "code_b": {
          "type": "string",
          "title": "Code B"
        },
        "system": {
          "type": "string",
          "title": "System",
          "default": "http://snomed.info/sct"
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "version": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Version",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 59 lines
  • snomed_validate_code reads unknown 22h ago

    Validate whether a SNOMED CT concept ID exists and is currently active via FHIR CodeSystem/$validate-code. Returns true/false with the display name if valid and active. WHEN TO USE: confirming a concept ID is valid and active before storing or querying, checking whether a concept has been inactivated (retired/replaced), handling legacy codes from EHR data (check status before using in ECL), or verifying a code belongs to a specific edition or version. Preferred approach when history supplements are unavailable (they are NOT supported on this server). Use this to check individual inactive codes instead. Optionally specify terminology and/or target; defaults to the server's default terminology.

    mcp-tool

    {
      "type": "object",
      "title": "snomed_validate_codeArguments",
      "required": [
        "code"
      ],
      "properties": {
        "code": {
          "type": "string",
          "title": "Code"
        },
        "system": {
          "type": "string",
          "title": "System",
          "default": "http://snomed.info/sct"
        },
        "target": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Target",
          "default": null
        },
        "version": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Version",
          "default": null
        },
        "terminology": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Terminology",
          "default": null
        }
      }
    }
    arguments 54 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 47e4e1a37b37a1ac.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/47e4e1a37b37a1ac/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/47e4e1a37b37a1ac/badge.svg)](https://brick.blue/agent/47e4e1a37b37a1ac?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.