ProofPass MCP server
eu.proofpass/proofpassproofpass.eustreamable-httpv2.0.0Scanned
Current safety data sheets and product documents from manufacturers; EU deadlines and duties.
29 tools: 1 can delete or cancel things, 9 change things and 19 only read.
- Reads private data · 11
- Reads text others write · 3
- Can send data out · 1
- 2 findings
With Anlyon
1 tool here can delete or cancel things. Govern it.
- Anlyon lists the tools and adopts none.
- Each tool you adopt gets approvals and receipts.
- Your agent never holds the key.
A tool your agent calls directly is not routed through Anlyon and is not governed by it. anlyon.dev only lists and labels, and these labels are the same either way.
What the ProofPass MCP server can do
The ProofPass MCP server is published by proofpass.eu, a domain the MCP Registry verified. It has 29 tools. It can delete or cancel things (1 tool: update_product) and create or change data (9 tools: verify_document, check_duties, check_identifier_codes, check_battery_passport and 5 more). 19 tools only read.
11 tools read private data (get_current_document, list_manufacturer_documents, find_manufacturer and 8 more); 3 tools bring in text other people can write (get_current_document, list_manufacturer_documents and resolve_product); 1 tool can send data out of your system (check_duties). On its own it has all three parts of a prompt-injection exfiltration path: private data, text others write, and a way out.
The fixed checks matched 2 findings (annotation-conflict). Each one comes with the text it matched.
Last scanned Nov 14, 2026, version 2.0.0.
Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
29 tools
Deletes or cancels 1Claude Code: deny
update_productChanges master data of a product of the connected account: name, article number, GTIN, UFI, description, search words.No findings
Why it is in this group
- The name "update_product" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Changes master data of a product of the connected account: name, article number, GTIN, UFI, description, search words. Only the fields given change; an empty string clears a field. On a public product the change is visible at once, as after "Speichern" in the dashboard, and the previous values are not kept. Visibility, category, documents and deletion stay in the dashboard.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
- title: Change product master data
Changes things 9Claude Code: ask
add_recipientAdds one address to the distribution list of the connected account, for all products or for the given ones, as "Abnehmer eintragen" does in the dashboard without "jetzt zustellen".No findings
Why it is in this group
- The name "add_recipient" says "add": a word for a change.
Description, as the server wrote it Adds one address to the distribution list of the connected account, for all products or for the given ones, as "Abnehmer eintragen" does in the dashboard without "jetzt zustellen". No mail is sent; the first delivery is started in the dashboard. Refuses an address that is already on the list. Only add people who are customers of the account holder.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
- title: Add a recipient to the distribution list
check_battery_passportClassifies a battery under Art.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.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Classifies a battery under Art. 3 of Regulation (EU) 2023/1542 (LMT, electric vehicle, SLI, portable, industrial) and says whether it needs a battery passport under Art. 77, with the provision. A planning aid, not an official classification.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Battery category and battery passport
check_dutiesRuns ProofPass’s duties check (the same logic as the page /de/pflichten-check): from the role, the product types, the sales channels and the markets it returns the duties that alre…Can send data out1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- outboundThe input takes a destination (input.channels): what the tool writes goes there.
Findings
- Warn
The server marks "check_duties" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Runs ProofPass’s duties check (the same logic as the page /de/pflichten-check): from the role, the product types, the sales channels and the markets it returns the duties that already apply, those adopted with a later date and those expected, each with date, provision and legal sources, plus the link to the same result on the site. It knows the roles manufacturer, importer, distributor and online seller; for a downstream user it says so and derives nothing. Not legal advice.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Which duties apply to a role and product type
check_gpsr_informationChecks the information an online offer to consumers needs under Art.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.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Checks the information an online offer to consumers needs under Art. 19 GPSR (manufacturer, postal address, electronic address, product identifier, responsible person in the EU for manufacturers outside it) for formal completeness and returns it as a text block. Nothing is stored.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Check GPSR information for an online offer
check_identifier_codesChecks the check digit of identifiers found on data sheets and labels: UFI, CAS number, EC number, GTIN/EAN.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.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Checks the check digit of identifiers found on data sheets and labels: UFI, CAS number, EC number, GTIN/EAN. One code per line or separated by semicolons. It says whether a code is well formed, never whether it was issued or belongs to a product. Nothing is stored.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Check digits of UFI, CAS, EC and GTIN
check_sds_structureFormal check of the text of a safety data sheet, the same as the page /de/sdb-check: which subsections of Annex II to REACH (format of Regulation (EU) 2020/878) are present, check …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.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Formal check of the text of a safety data sheet, the same as the page /de/sdb-check: which subsections of Annex II to REACH (format of Regulation (EU) 2020/878) are present, check digits of UFI and CAS numbers, hazard codes outside CLP, revision date and version. Pass the extracted text of the PDF. The text is checked in memory and not stored. It never says a sheet is correct in content.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Formal check of a safety data sheet text
clp_label_dimensionsReturns the label size, pictogram size and minimum font size (x-height) for a pack size under section 1.2.1.4 of Annex I to the CLP Regulation as amended by Regulation (EU) 2024/28…1 finding
Why it is in this group
- The name "clp_label_dimensions" says "label": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "clp_label_dimensions" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "clp_label_dimensions" says "label": a word for a change.
Description, as the server wrote it Returns the label size, pictogram size and minimum font size (x-height) for a pack size under section 1.2.1.4 of Annex I to the CLP Regulation as amended by Regulation (EU) 2024/2865, next to the value in the Omnibus text that is not yet law, with the date the values were last checked.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: CLP label and pictogram sizes
create_product_draftCreates a product in the connected account that is not shown publicly and holds no documents, as "Neues Produkt" with "Nicht öffentlich zeigen" does in the dashboard.No findings
Why it is in this group
- The name "create_product_draft" says "create": a word for a change.
Description, as the server wrote it Creates a product in the connected account that is not shown publicly and holds no documents, as "Neues Produkt" with "Nicht öffentlich zeigen" does in the dashboard. Refuses with the reason when the account holds no more products. Returns the id, the QR link and the dashboard link where documents are uploaded and the product is made public.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
- title: Create a product that is not public
verify_documentTells whether a PDF is a document a checked manufacturer published on ProofPass, and whether it is still the current version.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.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Tells whether a PDF is a document a checked manufacturer published on ProofPass, and whether it is still the current version. Give its SHA-256 checksum (64 hex digits) or its ProofPass PDF URL (/pdf/…). For a superseded version it returns the current one. / Prüft, ob eine PDF veröffentlicht und noch die aktuelle Fassung ist.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Verify a data sheet PDF
Only reads 19Show 19 read-only tools
find_manufacturerFinds checked manufacturers on ProofPass by name and returns the address of their public page and their slug (for list_manufacturer_documents and search_products).Reads private dataNo findings
Why it is in this group
- The name "find_manufacturer" says "find": a word for reading.
What it can reach
- private-dataThe description's first sentence says "find" and "document": it reads documents.
Description, as the server wrote it Finds checked manufacturers on ProofPass by name and returns the address of their public page and their slug (for list_manufacturer_documents and search_products). Only manufacturers that are checked, not paused and have at least one current document.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Find a manufacturer page
get_current_documentReturns the current published version of one document of a product: title, kind, language, version, revision date, publication date, product page, PDF URL on ProofPass and SHA-256,…Reads private dataReads text others writeNo findings
Why it is in this group
- The name "get_current_document" says "get": a word for reading.
What it can reach
- private-dataThe name "get_current_document" says "get" and "document": it reads documents.
- private-dataThe description's first sentence says "return" and "document": it reads documents.
- untrusted-inputThe description's first sentence says "return" and "url": it reads web pages, which anyone can write.
Description, as the server wrote it Returns the current published version of one document of a product: title, kind, language, version, revision date, publication date, product page, PDF URL on ProofPass and SHA-256, plus the other languages it exists in. Never an archived version. Kinds: sdb, tdb, dop, dopc, doc, ppwr, manual, epd, cert, other (also "SDS", "TDS", "DoP", "DoC"). / Liefert die aktuelle Fassung eines Dokuments (SDB, TDB, Leistungserklärung …) mit PDF-Link.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Get the current version of a product document
get_glossary_termLooks up one term in ProofPass’s glossary by name or abbreviation (e.g.No findings
Why it is in this group
- The name "get_glossary_term" says "get": a word for reading.
Description, as the server wrote it Looks up one term in ProofPass’s glossary by name or abbreviation (e.g. "UFI", "SDB", "Leistungserklärung", "GPSR") and returns the definition, the explanation, its sources and related terms. The glossary is written in German.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Look up a glossary term
get_my_productReturns one product of the connected account: master data, every current document (kind, language, version, revision date, upload date, SHA-256), the version archive with the date …Reads private dataNo findings
Why it is in this group
- The name "get_my_product" says "get": a word for reading.
What it can reach
- private-dataThe description's first sentence says "return" and "document": it reads documents.
Description, as the server wrote it Returns one product of the connected account: master data, every current document (kind, language, version, revision date, upload date, SHA-256), the version archive with the date each version was superseded, which safety data sheets are older than three years, how many recipients get new versions, the QR link and the dashboard link.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Product with documents and versions
get_qr_linkReturns the permanent QR link of a product of the connected account (/q/<code>, it exists from the moment the product is created and never changes), the GS1 Digital Link if the pro…No findings
Why it is in this group
- The name "get_qr_link" says "get": a word for reading.
Description, as the server wrote it Returns the permanent QR link of a product of the connected account (/q/<code>, it exists from the moment the product is created and never changes), the GS1 Digital Link if the product has a GTIN, the addresses of the QR image as PNG and SVG and the print sheet in the dashboard.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: QR link of a product
get_startedReturns the links to open a ProofPass account, to sign in, to the documentation and the tools without an account, and the first four steps.No findings
Why it is in this group
- The name "get_started" says "get": a word for reading.
Description, as the server wrote it Returns the links to open a ProofPass account, to sign in, to the documentation and the tools without an account, and the first four steps. Use when someone wants to publish their own data sheets. Creates nothing.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: How to start with ProofPass
get_team_and_limitsReturns the logins of the connected account and how many products and logins it holds and uses, and whether the manufacturer page is checked and public.No findings
Why it is in this group
- The name "get_team_and_limits" says "get": a word for reading.
Description, as the server wrote it Returns the logins of the connected account and how many products and logins it holds and uses, and whether the manufacturer page is checked and public.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Team and limits
list_deadlinesLists duties on product documents in the EU from ProofPass's deadline tracker: title, start date or the words for an open date, status (gilt = already applies, beschlossen = adopte…Reads private dataNo findings
Why it is in this group
- The name "list_deadlines" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "list" and "document": it reads documents.
Description, as the server wrote it Lists duties on product documents in the EU from ProofPass's deadline tracker: title, start date or the words for an open date, status (gilt = already applies, beschlossen = adopted with a later date, erwartet = expected, not yet adopted), what it requires and the legal sources. Filter by regulation (free words such as "REACH", "CLP", "GPSR", "PPWR", "2023/1542"), product group (chemie, bauchemie, bauprodukte, reiniger, batterien, metall, textil, moebel, reifen, elektro, maschinen, funk, spielzeug, verpackung), status or a date range. For a filter by role use check_duties. Every answer carries source, date of the last check and the note that it is not legal advice.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: EU product duty deadlines
list_delivery_proofsReturns the proof of delivery of the connected account, newest first: which address was sent which document version when, whether sending failed, and when it was opened and downloa…Reads private dataNo findings
Why it is in this group
- The name "list_delivery_proofs" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "return" and "document": it reads documents.
Description, as the server wrote it Returns the proof of delivery of the connected account, newest first: which address was sent which document version when, whether sending failed, and when it was opened and downloaded. Optionally for one product.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Proof of delivery
list_documents_dueLists the current documents of the connected account that are due for a look: safety data sheets whose revision date is older than three years (the reminder the dashboard shows) an…Reads private dataNo findings
Why it is in this group
- The name "list_documents_due" says "list": a word for reading.
What it can reach
- private-dataThe name "list_documents_due" says "list" and "document": it reads documents.
- private-dataThe description's first sentence says "list" and "document": it reads documents.
Description, as the server wrote it Lists the current documents of the connected account that are due for a look: safety data sheets whose revision date is older than three years (the reminder the dashboard shows) and documents without a revision date. ProofPass stores no expiry date for documents.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Documents due for review
list_manufacturer_documentsLists the public products of one checked manufacturer with their current documents (kind, language, version, revision date, PDF URL), 25 per page.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "list_manufacturer_documents" says "list": a word for reading.
What it can reach
- private-dataThe name "list_manufacturer_documents" says "list" and "document": it reads documents.
- private-dataThe description's first sentence says "list" and "document": it reads documents.
- untrusted-inputThe description's first sentence says "list" and "url": it reads web pages, which anyone can write.
Description, as the server wrote it Lists the public products of one checked manufacturer with their current documents (kind, language, version, revision date, PDF URL), 25 per page. / Listet die Produkte eines Herstellers mit ihren aktuellen Dokumenten.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: List a manufacturer’s products and current documents
list_my_productsLists the products of the connected ProofPass account (also those not public) with id, article number, GTIN, whether they are public and how many current documents they hold; optio…Reads private dataNo findings
Why it is in this group
- The name "list_my_products" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "list" and "document": it reads documents.
Description, as the server wrote it Lists the products of the connected ProofPass account (also those not public) with id, article number, GTIN, whether they are public and how many current documents they hold; optionally only those matching a search word. Use first to find a product id.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: List my products
list_open_dutiesReturns the open items the dashboard overview shows for the connected account (products without a document, old safety data sheets, failed deliveries, open requests and the like), …Reads private dataNo findings
Why it is in this group
- The name "list_open_duties" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "return" and "document": it reads documents.
Description, as the server wrote it Returns the open items the dashboard overview shows for the connected account (products without a document, old safety data sheets, failed deliveries, open requests and the like), each with the place in the dashboard where it is fixed. Labels are in German.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Open items of my account
list_recallsLists the recalls and safety warnings of the connected account with kind, product, status, hazard, the instruction to stop using, what customers should do, the remedies offered (re…Reads private dataNo findings
Why it is in this group
- The name "list_recalls" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "list" and "contact": it reads contacts.
Description, as the server wrote it Lists the recalls and safety warnings of the connected account with kind, product, status, hazard, the instruction to stop using, what customers should do, the remedies offered (repair, replacement, refund), contact, dates and closing note. Creating, publishing, notifying recipients and closing a recall is done in the dashboard only.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Recalls and safety notices
list_recipientsLists the distribution list of the connected account: address, company, confirmed or unsubscribed, and whether a recipient gets all products or only some.No findings
Why it is in this group
- The name "list_recipients" says "list": a word for reading.
Description, as the server wrote it Lists the distribution list of the connected account: address, company, confirmed or unsubscribed, and whether a recipient gets all products or only some.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Distribution list
preview_distributionShows who would receive the current documents of a product of the connected account: the confirmed recipients on its distribution list and the documents.Reads private dataNo findings
Why it is in this group
- The name "preview_distribution" says "preview": a word for reading.
What it can reach
- private-dataThe description's first sentence says "show" and "document": it reads documents.
Description, as the server wrote it Shows who would receive the current documents of a product of the connected account: the confirmed recipients on its distribution list and the documents. It sends nothing and records nothing; sending is done with a button in the dashboard, and the tool returns that link.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Preview who gets a product’s documents
resolve_productResolves what is printed on a label or pasted from a browser to the public product: a ProofPass QR link or its 7-character code (/q/<code>), a GTIN or GS1 Digital Link (/01/<gtin>)…Reads text others writeNo findings
Why it is in this group
- The name "resolve_product" says "resolve": a word for reading.
What it can reach
- untrusted-inputThe description's first sentence says "resolve" and "browser": it reads web pages, which anyone can write.
Description, as the server wrote it Resolves what is printed on a label or pasted from a browser to the public product: a ProofPass QR link or its 7-character code (/q/<code>), a GTIN or GS1 Digital Link (/01/<gtin>), a product page address or "manufacturer-slug/product-slug". Returns the identifiers and every current document exactly as the public product page shows them; hidden products, unchecked or paused manufacturers and archived versions are never returned.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Resolve a QR code, GTIN or product page
search_knowledgeSearches ProofPass’s published guides, questions and glossary (German, English, Polish) and returns title, the short answer, the provision it rests on, the date of the last check a…No findings
Why it is in this group
- The name "search_knowledge" says "search": a word for reading.
Description, as the server wrote it Searches ProofPass’s published guides, questions and glossary (German, English, Polish) and returns title, the short answer, the provision it rests on, the date of the last check and the link. Use for questions on safety data sheets, CLP and UFI, GPSR, construction products, battery and product passport, packaging. When a language has no match, the German library answers and says so.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Search ProofPass guides, questions and glossary
search_productsSearches the public products of checked manufacturers on ProofPass by name, article number, GTIN/EAN or UFI, optionally within one manufacturer.No findings
Why it is in this group
- The name "search_products" says "search": a word for reading.
Description, as the server wrote it Searches the public products of checked manufacturers on ProofPass by name, article number, GTIN/EAN or UFI, optionally within one manufacturer. Returns up to 20 products with manufacturer, identifiers, available document kinds and the product page URL. / Sucht öffentliche Produkte geprüfter Hersteller nach Name, Artikelnummer, GTIN oder UFI.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Search products with data sheets
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.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
33 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 1 outbound tool breaks every one.
- Reads private data11
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write3
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out1
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
{
"permissions": {
"deny": [
"mcp__proofpass__check_duties"
]
}
}Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Findings
Matches of fixed checks, with the text they matched.
- Warncheck_duties
The server marks "check_duties" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "run": a word for a change.
The server marks "clp_label_dimensions" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "clp_label_dimensions" says "label": a word for a change.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 2.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http proofpass https://www.proofpass.eu/mcpclaude mcp add --transport http proofpass https://www.proofpass.eu/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__proofpass__search_products",
"mcp__proofpass__get_current_document",
"mcp__proofpass__list_manufacturer_documents",
"mcp__proofpass__resolve_product",
"mcp__proofpass__find_manufacturer",
"mcp__proofpass__list_deadlines",
"mcp__proofpass__search_knowledge",
"mcp__proofpass__get_glossary_term",
"mcp__proofpass__get_started",
"mcp__proofpass__list_my_products",
"mcp__proofpass__get_my_product",
"mcp__proofpass__list_documents_due",
"mcp__proofpass__list_recipients",
"mcp__proofpass__list_delivery_proofs",
"mcp__proofpass__list_open_duties",
"mcp__proofpass__list_recalls",
"mcp__proofpass__get_team_and_limits",
"mcp__proofpass__preview_distribution",
"mcp__proofpass__get_qr_link"
],
"ask": [
"mcp__proofpass__verify_document",
"mcp__proofpass__check_duties",
"mcp__proofpass__check_identifier_codes",
"mcp__proofpass__check_battery_passport",
"mcp__proofpass__clp_label_dimensions",
"mcp__proofpass__check_gpsr_information",
"mcp__proofpass__check_sds_structure",
"mcp__proofpass__create_product_draft",
"mcp__proofpass__add_recipient"
],
"deny": [
"mcp__proofpass__update_product"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as proofpass. Review it before you use it.
Capability tags behind 13 rules
- mcp__proofpass__get_current_document private-data, untrusted-input
- mcp__proofpass__list_manufacturer_documents private-data, untrusted-input
- mcp__proofpass__resolve_product untrusted-input
- mcp__proofpass__find_manufacturer private-data
- mcp__proofpass__list_deadlines private-data
- mcp__proofpass__check_duties outbound
- mcp__proofpass__list_my_products private-data
- mcp__proofpass__get_my_product private-data
- mcp__proofpass__list_documents_due private-data
- mcp__proofpass__list_delivery_proofs private-data
- mcp__proofpass__list_open_duties private-data
- mcp__proofpass__list_recalls private-data
- mcp__proofpass__preview_distribution private-data
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/eu.proofpass/proofpass/verify?hash=4fa5a738cf26fbed212cdf5fa9c23f092e12196a34f2db0945087e0e1f69de4e" | jq -e '.changed == false'Pinned hash 4fa5a738cf26, from Nov 14, 2026, 16:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/eu.proofpass/proofpass/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/eu.proofpass/proofpass)Source: MCP Registry. Synced Nov 14, 2026, 16:17 UTC.
ProofPass MCP server: questions and answers
Answered from the scan above, not from the publisher's description.
Is the ProofPass MCP server safe?
- No scan can promise that. What its definitions show: 29 tools, 10 of which can change, send or delete something, and 2 findings from fixed checks. Allow the reads, ask before each change, and deny the deletes; the permissions block on this page does that.
Can the ProofPass MCP server delete data?
- Yes. 1 tool can delete, cancel or revoke something: update_product.
Can the ProofPass MCP server do things that cannot be undone?
- No tool is classed as irreversible: none of them sends, pays, publishes or merges, going by their definitions.
What tools does the ProofPass MCP server have?
- 29 tools: 1 destructive, 9 write, 19 read. update_product, verify_document, check_duties, check_identifier_codes, check_battery_passport, clp_label_dimensions, check_gpsr_information, check_sds_structure and 21 more.
Does the ProofPass MCP server send data to outside services?
- 1 tool can carry data out (it sends, posts or publishes, or takes a recipient, channel or URL): check_duties.
Has the ProofPass MCP server changed its tools?
- Not since anlyon.dev started tracking it. Last scanned Nov 14, 2026.