MCP server for AuthiChain product authentication API — verify products, mint certificates, check EU DPP compliance, and query the Truth Network via any AI agent.
Three tools with complete schemas and detailed descriptions. Tool naming follows verb_noun pattern (verify, register, search). Descriptions are comprehensive (200-400 chars) and include use-case guidance. Input schemas use Zod with proper types, enums, and constraints. However, output schemas are not formally documented, responses are inferred from code. Error handling returns generic API error messages without recovery guidance. No parameter descriptions for nested metadata objects. Tool annotations present but incomplete (missing destructiveHint on register_product).
Register a new product in the AuthiChain authentication network. Creates a blockchain certificate on Polygon and generates a unique QR code for verification. Args: - name (string): Product name - brand (string): Brand or manufacturer name - category (string): Product category (e.g., 'cannabis', 'luxury', 'electronics', 'pharma', 'textile', 'food') - description (string): Product description - metadata (object, optional): Additional product metadata (batch, serial, origin, etc.) - mint_nft (boolean): Whether to mint an NFT certificate on Polygon (default: true) - generate_qr (boolean): Whether to generate a QRON QR code (default: true) Returns: Product ID, certificate hash, QR code URL, and blockchain transaction details. Use when: A brand wants to register a product for authentication, or a user asks to "add a product to AuthiChain".
Search the AuthiChain product registry. Find authenticated products by name, brand, category, or metadata. Args: - query (string): Search query (matches name, brand, description) - category (string, optional): Filter by category - brand (string, optional): Filter by brand name - limit (number): Max results (1-50, default: 20) - offset (number): Pagination offset (default: 0) Returns: List of authenticated products with trust scores, certificate status, and scan counts.
Verify the authenticity of a product using AuthiChain's 5-agent AI consensus system (Truth Network). Returns a trust score (0-100), consensus verdict, and individual agent assessments from: - Guardian (35% weight): Primary authentication analysis - Archivist (20%): Historical record verification - Sentinel (25%): Anomaly and fraud detection - Scout (8%): Market intelligence cross-reference - Arbiter (12%): Final consensus arbitration Args: - product_id (string): AuthiChain product ID, blockchain certificate hash, or QR code payload - include_history (boolean): Include full scan and verification history (default: false) Returns: Trust score, consensus verdict, agent assessments, blockchain certificate status, and optionally scan history. Use when: A user asks "Is this product authentic?", "Verify this item", or needs to check product provenance.
Output schemas not formally documented. Code infers response structure (trust_score, verdict, agents, etc.) but no explicit schema definition visible. LLMs cannot plan downstream operations without knowing return field types and names.
Error handling returns raw API error messages ('AuthiChain API error (500): ...') without recovery guidance. LLMs cannot determine if error is retryable, user-fixable, or fatal.
Metadata parameter in register_product is z.record(z.string(), z.any()), accepts arbitrary nested objects with no type constraints or description of expected fields (batch, serial, origin). LLMs cannot infer valid metadata structure.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2025-06-18+ | v2 |
Tool annotation for register_product missing destructiveHint: true. This tool creates blockchain records and mints NFTs, irreversible operations that should be marked as destructive to guide agent caution.
API credentials (AUTHICHAIN_API_KEY, SUPABASE_KEY) injected via environment variables, correct pattern. However, no audit logging visible for tool invocations. Cannot trace which agent called which tool, when, or with what parameters for compliance.