{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-05T15:48:44.355Z","url":"https://verifymcp.io/servers/link-snip-snip/snip","markdownUrl":"https://verifymcp.io/servers/link-snip-snip/snip.md","server":{"slug":"link-snip-snip","name":"Snip","registryName":"link.snip/snip","description":"Free QR codes that never expire and free short links with click stats.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"snip","type":"remote","identifier":"https://snip.link/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/link-snip-snip/snip","version":"1.0.0","transport":null,"scoredAt":"2026-11-05T05:12:10.716Z"},"score":{"total":71,"tier":"medium","status":"scored","weekDelta":3,"history":[{"date":"2026-11-05","total":71},{"date":"2026-11-04","total":71},{"date":"2026-11-03","total":70},{"date":"2026-11-02","total":70},{"date":"2026-11-01","total":69},{"date":"2026-10-31","total":69},{"date":"2026-10-30","total":68},{"date":"2026-10-29","total":68},{"date":"2026-10-28","total":67},{"date":"2026-10-27","total":67},{"date":"2026-10-26","total":67},{"date":"2026-10-25","total":66},{"date":"2026-10-24","total":66},{"date":"2026-10-23","total":67},{"date":"2026-10-22","total":66},{"date":"2026-10-21","total":66}]},"categories":[{"name":"Endpoint Security","score":63,"verdict":"fail","reasons":["The endpoint's TLS certificate is valid, in date, and uses a strong key.","Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (delete_link).","HTTPS is enforced; there's no plaintext access path.","The HSTS (Strict-Transport-Security) header is present.","DNSSEC check failed: this domain isn't protected by DNSSEC."],"codes":[{"code":"tls.valid","args":{}},{"code":"auth.none_destructive","args":{"tool":"delete_link"}},{"code":"https.enforced","args":{}},{"code":"headers.hsts_present","args":{}},{"code":"dnssec.absent","args":{}}]},{"name":"Transport & Reachability","score":100,"verdict":"pass","reasons":["Verified streamable-http transport via a live MCP handshake."],"codes":[{"code":"transport.verified","args":{"transport":"streamable-http"}}]},{"name":"Schema Quality & AI Usability","score":60,"verdict":"fail","reasons":["AI-judged instruction clarity (excellent).","Context-footprint check failed: tool/resource definitions use about 3843 tokens (~320/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"excellent"}},{"code":"schema.footprint_heavy","args":{"avg":"320","items":"12","tools":"12","tokens":"3843","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":50,"verdict":"partial","reasons":["Stability observed for 15 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"15"}}]},{"name":"Tool Coverage","score":99,"verdict":"partial","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","98% of tool parameters carry a description."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"98"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.","An AI judge read all 13 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_declared","args":{"pct":"100","annotated":"2","destructive":"2"}},{"code":"toolsafety.manipulation_clean","args":{"units":"13","judged":"13"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a current MCP spec version (2026-07-28)."],"codes":[{"code":"protocol.current","args":{"version":"2026-07-28"}}]}],"inconclusive":[],"malware":[],"components":[{"slug":"snip","type":"remote","identifier":"https://snip.link/mcp","withdrawn":false,"score":71,"current":true,"url":"https://verifymcp.io/servers/link-snip-snip/snip","markdownUrl":"https://verifymcp.io/servers/link-snip-snip/snip.md"}],"facts":[{"label":"Endpoint","value":"https://snip.link/mcp"},{"label":"Transports","value":"streamable-http"},{"label":"Auth","value":"none"},{"label":"Version","value":"1.0.0"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"make_qr_code","title":"Make a QR code","description":"Make a static QR code for a link, text, Wi-Fi network, contact card, email, phone number or SMS, free and with no account. Returns a PNG and an SVG download link that the user can open, save or print; show the PNG link to the user. Static codes hold the content in the pattern, so they never expire and keep working without Snip.link. Use this whenever the user asks for a QR code.","inputs":[{"name":"bg","type":"string","required":false,"description":"Background colour, #rrggbb. Default #ffffff."},{"name":"data","type":"string","required":true,"description":"What the QR code holds: a web address, plain text, a WIFI:T:WPA;S:<name>;P:<password>;; string, a vCard, mailto:, tel: or sms:. For a link the user may want to change or track later, call shorten_lin…"},{"name":"ecc","type":"string","required":false,"description":"Error correction: L 7%, M 15% (default), Q 25%, H 30% of the code can be damaged and still scan."},{"name":"fg","type":"string","required":false,"description":"Dark colour, #rrggbb, for example #111111. Default #111111."},{"name":"style","type":"string","required":false,"description":"Dot shape. Default rounded."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":264},{"name":"shorten_link","title":"Shorten a link","description":"Turn a long web address into a short snip.link link, free, and get a QR code for it. Use this when the user wants a short link, a link they can change after printing, click and scan counts, or a YouTube, Spotify or Amazon link that opens the app when tapped inside Instagram, TikTok or Facebook (every Snip.link link does that on its own). When the user is not signed in to Snip.link the link works at once and the answer includes a claim link the user can open to keep it in a free Snip.link account and see its clicks. When they are signed in (the account endpoint or an API key) the link is saved to their account, and a custom ending (go.snip.link/your-ending) is allowed.","inputs":[{"name":"domain","type":"string","required":false,"description":"One of the user's own live domains (go.yourbrand.com, see list_domains) to put the link on instead of snip.link. Needs the user signed in on a plan with own domains."},{"name":"ending","type":"string","required":false,"description":"Custom ending for go.snip.link/<ending>, also available at snip.link/r/<ending>: 3 to 40 ASCII letters, digits, dashes or underscores, with no spaces. Free with a Snip.link account. Omit or send an e…"},{"name":"expires_in_days","type":"integer|null","required":false,"description":"Expiry from creation; null means no expiry."},{"name":"forward_query","type":"boolean","required":false,"description":"Override query-parameter forwarding."},{"name":"presets","type":"array","required":false,"description":"Owned Library ids, one per kind. Omit for account defaults; [] skips Library defaults. Explicit link settings win."},{"name":"preview","type":"object|null","required":false,"description":"Social preview; null clears a Library preview."},{"name":"qr_style","type":"object|null","required":false,"description":"QR settings; null clears a Library QR style."},{"name":"routes","type":"array","required":false,"description":"Rules that send some visits elsewhere, tried in order; the first match wins and everyone else goes to url. Free with a Snip.link account. Each rule: conditions joined by when (all or any) and its own…"},{"name":"snapshots","type":"string","required":false,"description":null},{"name":"stats_public","type":"boolean","required":false,"description":"Whether aggregate stats are public. Explicit false overrides a saved template."},{"name":"title","type":"string","required":false,"description":"A name for the link in the user's dashboard. Needs the user signed in to Snip.link."},{"name":"track","type":"boolean","required":false,"description":"Override the default for visit tracking."},{"name":"url","type":"string","required":true,"description":"The http or https address to shorten."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":739},{"name":"save_page","title":"Save and read a web page","description":"Read a public web page as clean Markdown and save a copy, subject to retention and access settings. Returns the page's text, a short link, QR code and saved-format URLs (.md, .txt, .jpg, .pdf, .mhtml). Successful public copies also return archive_url for the exact version and cite with APA 7, MLA 9, Chicago and BibTeX citations preserving the original source. Those fields are null until a public copy is available. Saving a page does not verify its claims. No account is required. A page saved in the last day may be reused; pass fresh for a new capture.","inputs":[{"name":"formats","type":"array","required":false,"description":"Only these formats (faster for just the text). Default: all of them."},{"name":"fresh","type":"boolean","required":false,"description":"Load the page again even if it was saved in the last day. Default false."},{"name":"presets","type":"array","required":false,"description":"Owned Library ids, one per kind. Omit for account defaults; [] skips Library defaults. Explicit link settings win."},{"name":"url","type":"string","required":true,"description":"The http or https page to save."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":226},{"name":"drop_file","title":"Share a file with a short link","description":"Put a file on the web and get a short snip.link link to it, free. Send text (a note, Markdown, CSV, JSON, code) as `content`, or any other file (a PDF, a picture, a document) as `content_base64`, with its file name. The link opens a page that shows the file with a download button and a QR code; the link with the file's extension is the file itself, and file.formats lists its available conversion URLs. Supported pairs, MIME types and fidelity notes are at https://snip.link/convert/formats.json; outputs depend on the file and engine limits. A pending conversion returns 202 with Retry-After. Files are at most 10 MB through this tool; use the REST API for larger files. Use this when the user wants to share, send, publish, host or link to a file, or wants something you wrote available as a link or a QR code. Files shared without an account stay up for 30 days unless the user keeps them with a free account.","inputs":[{"name":"content","type":"string","required":false,"description":"The file's text, for text files."},{"name":"content_base64","type":"string","required":false,"description":"The file's bytes in base64, for anything else."},{"name":"name","type":"string","required":true,"description":"The file name with its extension, which decides how it is shown: notes.md, prices.csv, photo.png."},{"name":"title","type":"string","required":false,"description":"A title for the user's dashboard (signed in only)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":306},{"name":"get_link_stats","title":"Get link stats","description":"Clicks and QR scans for one of the user's own Snip.link links: totals, by day, by hour of the day on plans with time-of-day analytics, and the top countries, referring sites and devices. Needs the user signed in to Snip.link (the account endpoint or an API key). Pass the short link, its ending or its id. For every link at once, use get_account_stats.","inputs":[{"name":"days","type":"integer","required":false,"description":"How many days back, up to the plan's limit (30 on Free, a year on Pro). Default 30."},{"name":"link","type":"string","required":true,"description":"The full short URL (https://go.snip.link/abc123 or https://snip.link/r/abc123), its ending (abc123) or its id. Full URLs are scoped to their host; they never select a same-ending link on another doma…"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":184},{"name":"get_account_stats","title":"Get account stats","description":"Clicks and QR scans across every link in the user's Snip.link account: totals, by day, the busiest links, and the top countries, referring sites and devices. Needs the user signed in to Snip.link. Use this for questions like \"how are my links doing\" or \"which link got the most scans this week\".","inputs":[{"name":"days","type":"integer","required":false,"description":"How many days back, up to the plan's limit (30 on Free, a year on Pro). Default 30."},{"name":"links","type":"integer","required":false,"description":"How many of the busiest links to list. Default 10."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":127},{"name":"list_links","title":"List links","description":"The user's Snip.link links, newest first, with their destinations and click counts. Needs the user signed in to Snip.link. Pass a search to match an ending, a destination or a title. To continue, pass the answer's next_cursor as cursor with the same search.","inputs":[{"name":"cursor","type":"string","required":false,"description":"The previous answer's next_cursor, for the next page with the same search."},{"name":"limit","type":"integer","required":false,"description":"How many to return. Default 20."},{"name":"search","type":"string","required":false,"description":"Text to match against the ending, destination and title."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":119},{"name":"update_link","title":"Update a link","description":"Changes the ending, destination, title, rules, schedule (go-live time, expiry, click limit) or link preview (the title, line and picture chat apps and social sites show when the link is pasted) of one of the user's Snip.link links, switches it off and on, or watches its page for changes. Custom endings and renaming are free with an account. Previous short URLs and printed QR codes keep working, follow the latest destination and share the same analytics until the link is disabled or deleted. A link keeps up to 20 previous endings. Needs the user signed in to Snip.link. Pass only the fields to change.","inputs":[{"name":"disabled","type":"boolean","required":false,"description":"True switches the link off (it answers 404); false switches it back on."},{"name":"ending","type":"string","required":false,"description":"The new ending: 3 to 40 ASCII letters, digits, dashes or underscores, with no spaces. Reusing this link's previous ending or changing only its case does not use another previous-ending slot."},{"name":"expires_at","type":"string|null","required":false,"description":"When the link stops working, as an ISO date and time. After it, visits see an expired page. null: never."},{"name":"link","type":"string","required":true,"description":"The full short URL (https://go.snip.link/abc123 or https://snip.link/r/abc123), its ending (abc123) or its id. Full URLs are scoped to their host; they never select a same-ending link on another doma…"},{"name":"max_clicks","type":"integer|null","required":false,"description":"Stop the link after this many counted visits in total (bots and repeat taps within a minute are not counted). null: no limit."},{"name":"preview","type":"object|null","required":false,"description":"The link's own preview card for chats and posts. Any field left out shows the page's own. image is an https picture address or screenshot (the page's first screen). null removes it. Free on every pla…"},{"name":"routes","type":"array","required":false,"description":"Rules that send some visits elsewhere, tried in order; the first match wins and everyone else goes to url. Free with a Snip.link account. Each rule: conditions joined by when (all or any) and its own…"},{"name":"starts_at","type":"string|null","required":false,"description":"When the link goes live, as an ISO date and time (2026-11-01T09:00:00Z). Before it, visits see a not live yet page and are not counted. null: live now."},{"name":"title","type":"string","required":false,"description":"A new name for the dashboard."},{"name":"track","type":"boolean","required":false,"description":"false: only count visits, without recording when, where or on what device. true: record them."},{"name":"url","type":"string","required":false,"description":"The new http or https destination."},{"name":"watch","type":"string","required":false,"description":"Watch the destination page: Snip.link saves a fresh copy daily or weekly and emails the user what was added and what went when its words change. off stops. A paid plan feature; the error says which p…"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":836},{"name":"delete_link","title":"Delete a link","description":"Permanently deletes one of the user's Snip.link links and its click history; its current and previous short URLs stop working within a minute and its current and previous endings remain reserved indefinitely, including for the same account. There is no automatic release, restore or reuse operation. Needs the user signed in to Snip.link. Confirm with the user first; to pause every ending instead, use update_link with disabled true.","inputs":[{"name":"link","type":"string","required":true,"description":"The full short URL (https://go.snip.link/abc123 or https://snip.link/r/abc123), its ending (abc123) or its id. Full URLs are scoped to their host; they never select a same-ending link on another doma…"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":151},{"name":"list_domains","title":"List own domains","description":"The user's own domains (go.yourbrand.com), their state, CNAME target and account-specific TXT ownership proof. Pass a live one as domain to shorten_link. New connections need both DNS records; an old CNAME alone does not prove control. Needs the user signed in to Snip.link; add domains in the dashboard or POST /v1/domains.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":82},{"name":"list_collections","title":"List collections","description":"The user's Snip.link collections: links grouped by hand, each with how many links it holds and its public page (snip.link/c/<address>, one button per live link) when that is on. Needs the user signed in to Snip.link. Change one with save_collection.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":67},{"name":"save_collection","title":"Create or change a collection","description":"Creates a collection of the user's Snip.link links, or changes one (pass collection, its id from list_collections): its name, the line under it, its links in order, and whether it has a public page at snip.link/c/<address> that shows one button per live link, link-in-bio style. links replaces the collection's links in that order; leave it out to keep them. Free on every plan; the links themselves never change. Needs the user signed in to Snip.link.","inputs":[{"name":"collection","type":"string","required":false,"description":"The id of the collection to change. Leave it out to create one."},{"name":"description","type":"string|null","required":false,"description":"One line under the name on the page. null removes it."},{"name":"links","type":"array","required":false,"description":"The links in order, each by short URL, ending or id (see list_links). Replaces the collection's links."},{"name":"name","type":"string","required":false,"description":"The collection's name, shown on its page."},{"name":"public","type":"boolean","required":false,"description":"true switches the public page on, false off. Off by default."},{"name":"slug","type":"string","required":false,"description":"The page's address after /c/: lowercase letters, digits and dashes. Left out, one is made from the name."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":253}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T05:12:10.000Z","track":"remote","endpoint":"https://snip.link/mcp","declaredUrl":null,"truncated":false,"tls":{"outcome":"valid","label":"Valid","version":"TLS 1.3","cipherSuite":"TLS_AES_128_GCM_SHA256","chainError":null,"certificates":[{"subject":"CN=snip.link","issuer":"CN=WE1,O=Google Trust Services,C=US","notBefore":"2026-11-05T00:26:56Z","notAfter":"2027-02-03T01:26:53Z","keyType":"ECDSA","keyBits":256,"isCa":false},{"subject":"CN=WE1,O=Google Trust Services,C=US","issuer":"CN=GTS Root R4,O=Google Trust Services LLC,C=US","notBefore":"2023-12-13T09:00:00Z","notAfter":"2029-02-20T14:00:00Z","keyType":"ECDSA","keyBits":256,"isCa":true},{"subject":"CN=GTS Root R4,O=Google Trust Services LLC,C=US","issuer":"CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE","notBefore":"2023-11-15T03:43:21Z","notAfter":"2028-01-28T00:00:42Z","keyType":"ECDSA","keyBits":384,"isCa":true}]},"dnssec":{"result":"insecure","label":"Not signed","name":"snip.link.","steps":[{"zone":".","outcome":"verified","label":"Verified"},{"zone":"link.","outcome":"verified","label":"Verified"},{"zone":"snip.link.","outcome":"insecure_proven","label":"Unsigned (proven)"}]},"auth":{"outcome":"none","label":"No authorisation required","gate":null,"gateLabel":null,"status":200,"authorizationServers":[]},"httpsRedirect":{"outcome":"https_enforced","label":"HTTPS enforced","status":301},"transports":[{"transport":"streamable-http","outcome":"verified","label":"Verified","status":200,"followed":false}],"provenance":null,"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-10-21","recent":[{"id":"chg_01a1aa1f-2728-7335-aebf-8c9ec1ead9a4","kind":"tool.description_changed","summary":"Tool “delete_link” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-2728-7335-aebf-8c9ec1ead9a4"},{"id":"chg_01a1aa1f-272b-736f-93f6-94915d53df4d","kind":"param.description_changed","summary":"“delete_link” reworded the description of “link”","materiality":"cosmetic","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-272b-736f-93f6-94915d53df4d"},{"id":"chg_01a1aa1f-272c-7bb9-a357-e66d545cc071","kind":"param.description_changed","summary":"“get_link_stats” reworded the description of “link”","materiality":"cosmetic","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-272c-7bb9-a357-e66d545cc071"},{"id":"chg_01a1aa1f-272e-798d-945a-f02609f6d3c9","kind":"tool.description_changed","summary":"Tool “list_domains” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-272e-798d-945a-f02609f6d3c9"},{"id":"chg_01a1aa1f-2734-7ede-a9c3-00d2ec845b14","kind":"tool.description_changed","summary":"Tool “shorten_link” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-2734-7ede-a9c3-00d2ec845b14"},{"id":"chg_01a1aa1f-2737-70bf-84f6-437d1c04924d","kind":"param.description_changed","summary":"“shorten_link” reworded the description of “ending”","materiality":"cosmetic","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-2737-70bf-84f6-437d1c04924d"},{"id":"chg_01a1aa1f-2738-7318-a945-2bd21841ca0e","kind":"param.description_changed","summary":"“update_link” reworded the description of “link”","materiality":"cosmetic","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1aa1f-2738-7318-a945-2bd21841ca0e"},{"id":"chg_01a1a4f3-bca2-783e-997e-bb3909ce45a9","kind":"score.total_changed","summary":"Trust score (70 → 71)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1a4f3-bca2-783e-997e-bb3909ce45a9"},{"id":"chg_01a19aa6-1560-7329-984f-bf85c277c9bb","kind":"score.total_changed","summary":"Trust score (69 → 70)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a19aa6-1560-7329-984f-bf85c277c9bb"},{"id":"chg_01a19059-4703-712b-a963-a6d60433ee79","kind":"score.total_changed","summary":"Trust score (68 → 69)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a19059-4703-712b-a963-a6d60433ee79"},{"id":"chg_01a1860f-3332-740c-b6dd-7202c5d6fdef","kind":"score.total_changed","summary":"Trust score (67 → 68)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-29","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a1860f-3332-740c-b6dd-7202c5d6fdef"},{"id":"chg_01a180e9-4e23-7166-be3f-1363f8aba484","kind":"tool.description_changed","summary":"Tool “make_qr_code” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e23-7166-be3f-1363f8aba484"},{"id":"chg_01a180e9-4e23-7779-8cc5-6e8d4acc1c45","kind":"tool.description_changed","summary":"Tool “save_collection” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e23-7779-8cc5-6e8d4acc1c45"},{"id":"chg_01a180e9-4e23-7d63-928e-b682f8f0998f","kind":"tool.description_changed","summary":"Tool “save_page” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e23-7d63-928e-b682f8f0998f"},{"id":"chg_01a180e9-4e1f-7734-9b1e-2cb9f76ae678","kind":"tool.description_changed","summary":"Tool “delete_link” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e1f-7734-9b1e-2cb9f76ae678"},{"id":"chg_01a180e9-4e20-7a1a-ba36-9ac448f8bb26","kind":"tool.description_changed","summary":"Tool “get_account_stats” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e20-7a1a-ba36-9ac448f8bb26"},{"id":"chg_01a180e9-4e21-7158-9ba4-5bf6fe928299","kind":"tool.description_changed","summary":"Tool “get_link_stats” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e21-7158-9ba4-5bf6fe928299"},{"id":"chg_01a180e9-4e21-7e0a-b5e6-b7e54cb64a77","kind":"tool.description_changed","summary":"Tool “list_collections” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e21-7e0a-b5e6-b7e54cb64a77"},{"id":"chg_01a180e9-4e22-7525-bec5-0410dbc77eca","kind":"tool.description_changed","summary":"Tool “list_domains” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e22-7525-bec5-0410dbc77eca"},{"id":"chg_01a180e9-4e22-7b44-9924-ca838c92d2ea","kind":"tool.description_changed","summary":"Tool “list_links” rewrote its description, which is the text the model reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/link-snip-snip/snip#chg-chg_01a180e9-4e22-7b44-9924-ca838c92d2ea"}],"truncated":true,"feedUrl":"https://verifymcp.io/servers/link-snip-snip/snip/changelog.json"},"links":{"html":"https://verifymcp.io/servers/link-snip-snip/snip","markdown":"https://verifymcp.io/servers/link-snip-snip/snip.md","changelogJson":"https://verifymcp.io/servers/link-snip-snip/snip/changelog.json","changelogRss":"https://verifymcp.io/servers/link-snip-snip/snip.xml","external":[{"label":"Remote endpoint","href":"https://snip.link/mcp"},{"label":"Website","href":"https://snip.link/mcp-server"}]}}