{"name":"ai.punchneedle/punchneedle-ai","title":"Punchneedle.ai","endpoint":"https://punchneedle.ai/api/mcp","repository":"https://github.com/pyxlino/punchneedle-mcp","page":"https://lazaretto.dev/mcp-registry/ai-punchneedle-punchneedle-ai","badge":"https://lazaretto.dev/mcp-registry/ai-punchneedle-punchneedle-ai/badge.svg","listed_at":"2026-11-12T17:16:30.857Z","state":"no findings","check":{"checked_at":"2026-11-12T17:26:33.784Z","outcome":"read","tool_count":7,"tool_names":["make_pattern_from_image","find_patterns","get_pattern","calculate_yarn","resize_pattern","match_materials","get_material_guide"],"sets_instructions":true,"verdict":"clear","findings":[],"rules_version":"2026.11.09a"},"tools":{"fingerprint":"54d4632bc636e1fe368957d0f13eb5819028f95c4ce6e284377841efb96f42b8","tool_hashes":{"get_pattern":"febfa313a4e2732af17592086a963c0f90568023b9b821273150e44f870658eb","find_patterns":"f6688fd1f4d71ccf135073e0b5cae732f1394d9188c993ee14ebf65d2229e2f0","calculate_yarn":"e8f4e9a933e3a83ba91cbe4359559672502488da5541e5f0d78a53cb65c90b52","resize_pattern":"d991e3644d8fefee8cabcd83e50c1a28efaca47908796bc20c4c1cad59d78516","match_materials":"5c9aaf42a02322a53dc7ed05b702c95cb686033051bbae742ca9394f32dc01b9","get_material_guide":"90e75647a89fffe3e5f42f3292cf5295b7e0808aa135b4015e01b342f8c27cc3","make_pattern_from_image":"cc9346fb3d92fd30fd3dd8f876e3c16d0386cf15e2bb1c9eedb6328d4acdbc6b"},"instructions_hash":"4a92a8879f298d60043a03f070da5796b01303909f70eb02639bd430a904d095","fingerprinted_at":"2026-11-12T17:26:33.784Z","changed_at":null,"compared_since":"2026-10-30","changes":[]},"disclaimer":"Signals, not a warranty. A clean read means these rules found nothing, not that the server is harmless. An unread server is not checked."}