Meridian Trace — Medical Device Registrations
by meridiantrace.com · remote · no sign-in to list tools · v1.0.0 · published by com.meridiantrace
Medical device registrations across 25 markets: coverage gaps, 510(k) predicates, classification
14 tools: 5 change things and 9 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things5Claude Code: ask: see these tools
- Only reads9Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http medical-device-registrations https://meridiantrace.com/v1/mcp --header 'X-API-Key: <your-x-api-key>'Findings
Matches of fixed checks, with the text they matched.
The description contains "every other tool", wording about other tools or servers.
What this check looks forMatched text
description: "...nufacturer entity — the entry point for every other tool. Names are unified across spelling vari..."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
14 tools
Changes things 5Claude Code: ask
check_issueWhere a report you filed with report_data_issue stands — Received, Looking into it, Fixed, Not changing or Already reported (with the reference it repeats) — and Meridian's reply, …No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Where a report you filed with report_data_issue stands — Received, Looking into it, Fixed, Not changing or Already reported (with the reference it repeats) — and Meridian's reply, if any. Only the API key that filed a report (or another key on the same account) can read it. Needs an API key.
classify_deviceRUNS WITHOUT AN API KEY (anonymous callers see the top 3 FDA product codes and the full per-market risk table — a free key unlocks the rest).No findings
Why it is in this group
- The description's first verb is "run": a word for a change.
Description, as the server wrote it RUNS WITHOUT AN API KEY (anonymous callers see the top 3 FDA product codes and the full per-market risk table — a free key unlocks the rest). Classification view of a device type: the GMDN hierarchy it sits in, the FDA product codes it maps to with how many devices carry each, and — the part not published anywhere — how the SAME device type is actually risk-classed market by market, with the sample size behind each. Risk class is not portable: a device type can be modal High in Canada and modal Medium in the EU and Singapore, which changes submission route, evidence burden and timeline. Observed practice, not a regulatory determination. Takes a plain device name ("bone screw", "hip implant"), a GMDN code, or an FDA product code. A name is resolved by how many real devices carry each GMDN term rather than by string matching, and `resolution` reports which term was chosen, how many others matched and what they were — call again with `gmdn_code` to classify one of those instead.
find_distributorsRUNS WITHOUT AN API KEY (anonymous callers see the top 3 per market and are told how many more matched).No findings
Why it is in this group
- The name "find_distributors" says "find": a word for reading.
- The description's first verb is "run": a word for a change.
Description, as the server wrote it RUNS WITHOUT AN API KEY (anonymous callers see the top 3 per market and are told how many more matched). WHO COULD SELL A DEVICE IN A MARKET — the question a company entering a market actually has. Give it a market and, optionally, a device type or clinical area; it returns the local distributors and importers who hold registrations there, what clinical areas they cover, how many markets they operate in, and a sample of the lines they already carry. Strongest across Asia, where the registry names the local partner rather than the manufacturer and this relationship is not published anywhere else: Singapore, Malaysia, Thailand, Indonesia, Vietnam, the Philippines, Japan, Korea, Taiwan, India and Hong Kong. This is the INVERSE of get_license_holders, which starts from a manufacturer you can already name. Regulatory consultants and authorised representatives are excluded — they hold licences as a service and do not sell — as are manufacturers' own in-country subsidiaries, Japanese captive importers and companies whose own registrations show they make what they register. TWO COUNTS, NEVER ONE: `matching` is the distributors that hold registrations in the market; `matchingLicenceOrTenderOnly` is the ones known only from a licence list or a tender award, with no registrations of their own in our data. Those are still potential distributors (often sub-distributors) and are returned too, each row marked `basis: "licence_or_tender_only"`; they rank after registered holders, so pass holder_basis "licence_or_tender_only" to list them. Read the `caveats` in the response before quoting any number from it.
get_coverageRUNS WITHOUT AN API KEY — call it right now to check us before signing up for anything.No findings
Why it is in this group
- The name "get_coverage" says "get": a word for reading.
- The description's first verb is "run": a word for a change.
Description, as the server wrote it RUNS WITHOUT AN API KEY — call it right now to check us before signing up for anything. What Meridian Trace actually holds: every source registry, the market it covers, how many registrations are on file from it, and when it was last updated. Call this to verify coverage and freshness for yourself before relying on other tools, or to answer "do you cover market X, and how current is it?". No arguments.
report_data_issueTell Meridian that a record you got from this server looks WRONG — a registration, a manufacturer or a licence holder whose field disagrees with the official registry or the compan…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Tell Meridian that a record you got from this server looks WRONG — a registration, a manufacturer or a licence holder whose field disagrees with the official registry or the company's own documents. Name the record (registration_id from get_registration / get_registrations, or manufacturer_id, or registry_key such as "TH_FDA:64-2-1-2-0001234"), the field, what we show, what it should be, and where the right value is (source_url, and source_quote copied word for word). Meridian checks every report by hand; nothing changes until we have. Returns a reference like MT-1042 — pass it to check_issue later. Needs an API key. At most 50 reports per key per day. Use it for wrong data, not for questions about what a field means.
Only reads 9Claude Code: allow
find_predicatesUS 510(k) predicate lineage, from the predicates actually cited in each clearance's own summary document — not a similarity guess.No findings
Why it is in this group
- The name "find_predicates" says "find": a word for reading.
Description, as the server wrote it US 510(k) predicate lineage, from the predicates actually cited in each clearance's own summary document — not a similarity guess. 64,567 clearances, 1992-2026. By k_number: what that device cited, AND which later devices cited IT as a predicate — the reverse direction shows whose clearances rest on your device and how contested a space is. By product_code: the predicates that code leans on most, ranked by how often they are cited, plus recent clearances. Use when choosing a predicate, assessing substantial equivalence, or mapping who is clearing devices in a classification.
find_similar_devicesCompeting and comparable devices for a registration, matched on resolved device type (GMDN) rather than product-name text, and spread across markets so the answer is not all one co…No findings
Why it is in this group
- The name "find_similar_devices" says "find": a word for reading.
Description, as the server wrote it Competing and comparable devices for a registration, matched on resolved device type (GMDN) rather than product-name text, and spread across markets so the answer is not all one country. Excludes the same manufacturer, so what comes back is the competitive set. Each result carries a match band. Use for competitive landscape, classification precedent in other markets, and finding how the same device type is described elsewhere. Get a registration_id from get_registrations.
get_license_holdersThe local entities that actually hold a foreign manufacturer's registrations — the importers, distributors and regulatory consultants named on the licence in each market.No findings
Why it is in this group
- The name "get_license_holders" says "get": a word for reading.
Description, as the server wrote it The local entities that actually hold a foreign manufacturer's registrations — the importers, distributors and regulatory consultants named on the licence in each market. In Malaysia, Indonesia and Thailand the registry names this local party rather than the OEM, so this is the only way to see who controls market access for a product, who a competitor is partnered with, and whether a manufacturer uses one partner or many.
get_market_coverageTHE cross-market question, answered in one call: every market where this manufacturer IS registered and every market where they are NOT.No findings
Why it is in this group
- The name "get_market_coverage" says "get": a word for reading.
Description, as the server wrote it THE cross-market question, answered in one call: every market where this manufacturer IS registered and every market where they are NOT. Returns per-market registration and active-registration counts and the source registries, plus the markets absent from their footprint — which is the gap a market-access team is usually looking for ("registered in Indonesia and Thailand, missing in the Philippines"). Prefer this over get_registrations when the question is about market presence rather than individual products. A `marketAccess` block may also appear. It is NOT a registration and is excluded from marketCount and every count in this response: it reports market access held on another basis — currently PMDA foreign manufacturer accreditation, which licenses a manufacturing SITE to make devices for Japan, precedes product approval and outlives individual products. When it is present alongside Japan in `absent`, both are true and the distinction matters: the company can supply the market but has no Japanese product approval visible to us. Do not describe that as being registered in Japan, and do not add it to a market count.
get_recent_registrationsRegistrations newly added to Meridian in the last N days, optionally filtered by market, risk class or device type — the competitor-monitoring feed.No findings
Why it is in this group
- The name "get_recent_registrations" says "get": a word for reading.
Description, as the server wrote it Registrations newly added to Meridian in the last N days, optionally filtered by market, risk class or device type — the competitor-monitoring feed. Ordered by when we first saw the record, so it surfaces market entries as they appear rather than by approval date. US PMA supplements are excluded: they are labeling and site changes against an existing approval, not new registrations. Filtering by market is much faster — unfiltered across all markets can take up to 15 seconds, a market or two returns in about a second.
get_registrationOne registration, complete.No findings
Why it is in this group
- The name "get_registration" says "get": a word for reading.
Description, as the server wrote it One registration, complete. Everything get_registrations returns for that row, plus the registry's own market-specific fields under `registryFields` — Korea's renewal window, Australia's intended purpose, Saudi's authorisation pathway, the EUDAMED device attributes (implantable, sterile, reusable, measuring, latex, tissue origin, legislation), and the manufacturer address — none of which fit a list row. `sourceUrl` links the authority's own record so you can check us. Reading one device exhaustively costs the same as seeing it in a list, and re-reading it is free.
get_registration_timelineNew registrations per year for a manufacturer, split by market — the pace at which a company is entering markets and launching products, years before it appears in reported revenue…No findings
Why it is in this group
- The name "get_registration_timeline" says "get": a word for reading.
Description, as the server wrote it New registrations per year for a manufacturer, split by market — the pace at which a company is entering markets and launching products, years before it appears in reported revenue. Built from each registry's own approval date, so it reaches back as far as the registry publishes (56 years for the US). Every market carries a historyQuality flag: complete_archive and retains_lapsed series are safe to trend, current_state_only markets publish only today's position and undercount anything since withdrawn. Use for entry velocity, launch cadence, and comparing two competitors' expansion over time.
get_registrationsEvery individual registration held by a manufacturer — product name, registration number, status, dates, risk class and source registry — filterable by market and status.No findings
Why it is in this group
- The name "get_registrations" says "get": a word for reading.
Description, as the server wrote it Every individual registration held by a manufacturer — product name, registration number, status, dates, risk class and source registry — filterable by market and status. Each row also carries an `enrichment` block Meridian derived: device class as a RANK on that market's own scale ("3 of 4") rather than a label that means different things in different markets, the resolved device type, the clinical area with the number of signals that agreed on it, the FDA product code, country of origin, brand and intended use. Each row carries a `provenance` block naming any field Meridian derived (inferred, classified, translated) with a confidence band where one applies; every field NOT listed there is the registry's own value, unmodified. Use that to lean on verbatim fields and hedge on derived ones. Use get_market_coverage instead when the question is which markets a company is in.
search_manufacturerResolve a company name to a Meridian manufacturer entity — the entry point for every other tool.1 finding
Why it is in this group
- The name "search_manufacturer" says "search": a word for reading.
Findings
- Warn
The description contains "every other tool", wording about other tools or servers.
What this check looks forMatched text
description: "...nufacturer entity — the entry point for every other tool. Names are unified across spelling vari..."
Description, as the server wrote it Resolve a company name to a Meridian manufacturer entity — the entry point for every other tool. Names are unified across spelling variants and scripts, so "Medtronic", "Медтроник" and "美敦力" reach the same entity, and subsidiaries resolve to the parent that owns them. Returns up to 5 candidates with a confidence rating and their market footprint. A plain web search cannot do this: a manufacturer's Asian registrations are filed under local-script names that never appear alongside the English one.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http medical-device-registrations https://meridiantrace.com/v1/mcp --header 'X-API-Key: <your-x-api-key>'Run in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__medical-device-registrations__search_manufacturer",
"mcp__medical-device-registrations__get_registrations",
"mcp__medical-device-registrations__get_registration",
"mcp__medical-device-registrations__get_license_holders",
"mcp__medical-device-registrations__get_market_coverage",
"mcp__medical-device-registrations__get_registration_timeline",
"mcp__medical-device-registrations__find_predicates",
"mcp__medical-device-registrations__find_similar_devices",
"mcp__medical-device-registrations__get_recent_registrations"
],
"ask": [
"mcp__medical-device-registrations__find_distributors",
"mcp__medical-device-registrations__classify_device",
"mcp__medical-device-registrations__get_coverage",
"mcp__medical-device-registrations__report_data_issue",
"mcp__medical-device-registrations__check_issue"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as medical-device-registrations. Review it before you use it.