Vision6 MCP by usefulapi
io.usefulapi/vision6usefulapi.iostreamable-httpv1.0.0Scanned
Read Vision6 lists, contacts, messages and reports; update contacts; send transactional email/SMS.
23 tools: 4 can delete or cancel things, 1 do something that can't be undone, 4 change things and 14 only read.
- Reads private data · 11
- Reads text others write · 23
- Can send data out · 3
- 1 finding
Anlyon alternative
9 of these tools change something. Run those as governed actions.
Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.
Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.
Import an OpenAPI spec →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.
23 tools
Deletes or cancels 4Claude Code: deny
vision6_delete_contactWRITE, IRREVERSIBLE: permanently delete one contact from a list (for example for a privacy erasure request).Reads text others writeNo findings
Why it is in this group
- The name "vision6_delete_contact" says "delete": a word for removing or ending something.
- The description says "IRREVERSIBLE".
- The server marks it destructive (destructiveHint: true).
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it WRITE, IRREVERSIBLE: permanently delete one contact from a list (for example for a privacy erasure request). To stop emailing someone but keep the record, use vision6_update_contact with email_subscribed=false instead. Pass confirm=true only after the user agreed to the deletion. DELETE /lists/{list_id}/contacts?id={contact_id}.
Annotations the server declares
- title: Delete a contact
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: true
vision6_send_transactionalWRITE: SENDS REAL EMAIL OR SMS to the recipients immediately (asynchronously) and USES ACCOUNT SENDING CREDITS.Reads text others writeCan send data outNo findings
Why it is in this group
- The name "vision6_send_transactional" says "send": a word for sending, and what is sent cannot be taken back.
- The input addresses people (input.recipients): what it sends cannot be taken back.
- The server marks it destructive (destructiveHint: true).
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- outboundThe name "vision6_send_transactional" says "send": it sends or publishes something to other people.
Description, as the server wrote it WRITE: SENDS REAL EMAIL OR SMS to the recipients immediately (asynchronously) and USES ACCOUNT SENDING CREDITS. It cannot be recalled. Up to 100 recipients per call, each identified by exactly one of contact_id, email or mobile, plus optional personalisation values (wildcards %%key%% in the body). Either send a saved message (message_id) or custom content (subject/body_html/body_text, and for SMS body_text + from_address). Unsubscribed addresses are skipped. Email always needs list_id. Results appear in the transactional group (vision6_get_transactional_group). The account owner's email must be confirmed in Vision6 first. Pass confirm_send=true only after the user approved these recipients and this content. POST /transactional-sends.
Annotations the server declares
- title: Send a transactional email or SMS
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
vision6_update_contactWRITE: change one contact's email, mobile, custom field values, subscription status (email_subscribed/mobile_subscribed=false unsubscribes), active flag or double opt-in.Reads text others writeNo findings
Why it is in this group
- The name "vision6_update_contact" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it WRITE: change one contact's email, mobile, custom field values, subscription status (email_subscribed/mobile_subscribed=false unsubscribes), active flag or double opt-in. Only the fields you pass change. May trigger 'contact updated' automations. Returns the updated contact. PATCH /lists/{list_id}/contacts/{contact_id}.
Annotations the server declares
- title: Update a contact
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
vision6_update_messageWRITE: change a saved message's name, subject, sender, folder or body.Reads text others writeCan send data outNo findings
Why it is in this group
- The name "vision6_update_message" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- outboundThe name "vision6_update_message" says "update" and "message": it writes something other people read.
Description, as the server wrote it WRITE: change a saved message's name, subject, sender, folder or body. Only the fields you pass change. It does not send anything. PATCH /messages/{message_id}.
Annotations the server declares
- title: Update a message
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: true
Can't be undone 1Claude Code: ask
vision6_list_reportsSend reports for campaigns, newest first: message name, type, sent, bounced, opened, unique clicks, unsubscribes, complaints, total recipients and last sent time.Reads private dataReads text others write1 finding
Why it is in this group
- The name "vision6_list_reports" says "list": a word for reading.
- The description's first verb is "send": a word for sending, and what is sent cannot be taken back.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
What it can reach
- private-dataThe description's first sentence says "message": it reads messages.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "send" and "message": it reads messages, which other people can write.
Findings
- Warn
The server marks "vision6_list_reports" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "vision6_list_reports" says "list": a word for reading.
Description, as the server wrote it Send reports for campaigns, newest first: message name, type, sent, bounced, opened, unique clicks, unsubscribes, complaints, total recipients and last sent time. Filter by message, type, test sends or creation time. Click and domain breakdowns are only returned when requested via `fields`. GET /reports.
Annotations the server declares
- title: List send reports
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
Changes things 4Claude Code: ask
vision6_add_contactsWRITE: add up to 200 contacts to a list in one request (faster than one by one).Reads text others writeNo findings
Why it is in this group
- The name "vision6_add_contacts" says "add": a word for a change.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it WRITE: add up to 200 contacts to a list in one request (faster than one by one). Each needs an email and/or mobile. Vision6 returns no contact data (HTTP 204), so use vision6_list_contacts to read them back. May trigger automations. POST /lists/{list_id}/contacts.
Annotations the server declares
- title: Add several contacts
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
vision6_create_contactWRITE: add one contact to a list (needs an email and/or mobile that matches a field of the list).Reads text others writeNo findings
Why it is in this group
- The name "vision6_create_contact" says "create": a word for a change.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it WRITE: add one contact to a list (needs an email and/or mobile that matches a field of the list). May trigger the list's 'contact created' automations and notification emails. Returns the new contact. POST /lists/{list_id}/contacts.
Annotations the server declares
- title: Create a contact
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
vision6_create_listWRITE: create a new, empty contact list inside a list folder (see vision6_list_folders with type list).Reads text others writeNo findings
Why it is in this group
- The name "vision6_create_list" says "create": a word for a change.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it WRITE: create a new, empty contact list inside a list folder (see vision6_list_folders with type list). Returns the new list. POST /lists.
Annotations the server declares
- title: Create a contact list
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
vision6_create_messageWRITE: save a new email or SMS message in Vision6.Reads text others writeCan send data outNo findings
Why it is in this group
- The name "vision6_create_message" says "create": a word for a change.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- outboundThe name "vision6_create_message" says "create" and "message": it writes something other people read.
Description, as the server wrote it WRITE: save a new email or SMS message in Vision6. This only stores the message; it is NOT sent (use the Vision6 app to send a campaign, or vision6_send_transactional for a one-off send). Email needs email_type, subject and matching body fields (plain: content_text; html: content_html; plain-html: both; raw_html: content_html or content_html_raw). SMS needs content_sms. The drag-and-drop builder is not supported. POST /messages.
Annotations the server declares
- title: Create a message (draft)
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
Only reads 14Show 14 read-only tools
vision6_get_accountDetails of the API key this server uses: the scopes it grants (e.g.Reads text others writeNo findings
Why it is in this group
- The name "vision6_get_account" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Details of the API key this server uses: the scopes it grants (e.g. list.view, contact.create, message.edit, report.view) and its creation/expiry time. Use it to see why a request is refused. GET /v1/.
Annotations the server declares
- title: Get API key details
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_get_contactOne contact by id within a list, with all fields.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_get_contact" says "get": a word for reading.
What it can reach
- private-dataThe name "vision6_get_contact" says "get" and "contact": it reads contacts.
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it One contact by id within a list, with all fields. GET /lists/{list_id}/contacts/{contact_id}.
Annotations the server declares
- title: Get a contact
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_get_listOne contact list by id.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_get_list" says "get": a word for reading.
What it can reach
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it One contact list by id. GET /lists/{list_id}.
Annotations the server declares
- title: Get a contact list
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_get_messageOne message by id.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_get_message" says "get": a word for reading.
What it can reach
- private-dataThe name "vision6_get_message" says "get" and "message": it reads messages.
- private-dataThe description's first sentence says "message": it reads messages.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe name "vision6_get_message" says "get" and "message": it reads messages, which other people can write.
- untrusted-inputThe description's first sentence says "message": it reads messages, which other people can write.
Description, as the server wrote it One message by id. With include_content=true the HTML and plain-text body is included. GET /messages/{message_id}.
Annotations the server declares
- title: Get a message
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_get_message_sender_defaultsThe account's default from name, from address and reply-to, applied to new email messages when you omit them.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_get_message_sender_defaults" says "get": a word for reading.
What it can reach
- private-dataThe name "vision6_get_message_sender_defaults" says "get" and "message": it reads messages.
- private-dataThe description's first sentence says "email": it reads mail.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe name "vision6_get_message_sender_defaults" says "get" and "message": it reads messages, which other people can write.
- untrusted-inputThe description's first sentence says "reply": it reads comments, which other people can write.
Description, as the server wrote it The account's default from name, from address and reply-to, applied to new email messages when you omit them. GET /message-sender-defaults.
Annotations the server declares
- title: Get default sender details
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_get_reportOne send report by id with all delivery and engagement counts, per-link click counts and recipient domain distribution.Reads text others writeNo findings
Why it is in this group
- The name "vision6_get_report" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it One send report by id with all delivery and engagement counts, per-link click counts and recipient domain distribution. Optionally includes A/B test results and social click/share statistics. GET /reports/{report_id}.
Annotations the server declares
- title: Get a send report
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_get_transactional_groupOne transactional group by id with its delivery statistics.Reads text others writeNo findings
Why it is in this group
- The name "vision6_get_transactional_group" says "get": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it One transactional group by id with its delivery statistics. GET /transactional-groups/{group_id}.
Annotations the server declares
- title: Get a transactional group
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_contactsList the contacts of one list: email, mobile, subscribed/blocked status, active flag, double opt-in and the list's custom fields.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_list_contacts" says "list": a word for reading.
What it can reach
- private-dataThe name "vision6_list_contacts" says "list" and "contact": it reads contacts.
- private-dataThe description's first sentence says "list" and "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "list" and "email": it reads inbound email, which other people can write.
Description, as the server wrote it List the contacts of one list: email, mobile, subscribed/blocked status, active flag, double opt-in and the list's custom fields. Filter by email, mobile, active flag, creation/modification time or any custom field (`filters`, e.g. {"city":"Brisbane"} or {"source:ne":"promo"}). GET /lists/{list_id}/contacts.
Annotations the server declares
- title: List contacts
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_foldersList the account's folders (list folders and message folders) with id, name, type and size.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_list_folders" says "list": a word for reading.
What it can reach
- private-dataThe name "vision6_list_folders" says "list" and "folder": it reads files.
- private-dataThe description's first sentence says "list" and "folder": it reads files.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "list" and "message": it reads messages, which other people can write.
Description, as the server wrote it List the account's folders (list folders and message folders) with id, name, type and size. Needed for the folder id when creating a list or message. GET /folders.
Annotations the server declares
- title: List folders
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_list_fieldsThe fields (columns) of a contact list: label, type (email, mobile, text, dropdown, date ...), allowed values and whether they are mandatory.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_list_list_fields" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "email": it reads inbound email, which other people can write.
Description, as the server wrote it The fields (columns) of a contact list: label, type (email, mobile, text, dropdown, date ...), allowed values and whether they are mandatory. The lowercase underscore form of a label is the key used for contact values and filters. GET /lists/{list_id}/fields.
Annotations the server declares
- title: List a list's fields
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_listsList the account's contact lists with id, name, creation/modification time and notification settings.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_list_lists" says "list": a word for reading.
What it can reach
- private-dataThe description's first sentence says "list" and "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it List the account's contact lists with id, name, creation/modification time and notification settings. Filter by exact name. GET /lists.
Annotations the server declares
- title: List contact lists
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_messagesList saved email and SMS messages (templates and campaigns) with id, type, name, subject and sender.Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_list_messages" says "list": a word for reading.
What it can reach
- private-dataThe name "vision6_list_messages" says "list" and "message": it reads messages.
- private-dataThe description's first sentence says "list" and "email": it reads mail.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe name "vision6_list_messages" says "list" and "message": it reads messages, which other people can write.
- untrusted-inputThe description's first sentence says "list" and "email": it reads inbound email, which other people can write.
Description, as the server wrote it List saved email and SMS messages (templates and campaigns) with id, type, name, subject and sender. Filter by type or exact name/subject. GET /messages.
Annotations the server declares
- title: List messages
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_sent_contactsThe contacts one message was sent to, with send time, first/last open time and open type (html, text, sms or not_opened).Reads private dataReads text others writeNo findings
Why it is in this group
- The name "vision6_list_sent_contacts" says "list": a word for reading.
What it can reach
- private-dataThe name "vision6_list_sent_contacts" says "list" and "contact": it reads contacts.
- private-dataThe description's first sentence says "contact": it reads contacts.
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "message": it reads messages, which other people can write.
Description, as the server wrote it The contacts one message was sent to, with send time, first/last open time and open type (html, text, sms or not_opened). Use it to see who opened a campaign. GET /messages/{message_id}/sent-contacts.
Annotations the server declares
- title: List contacts a message was sent to
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
vision6_list_transactional_groupsTransactional send groups (one per group name used with vision6_send_transactional) with sent, failed, bounced, delivered, opened, clicked and unsubscribed counts.Reads text others writeNo findings
Why it is in this group
- The name "vision6_list_transactional_groups" says "list": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
Description, as the server wrote it Transactional send groups (one per group name used with vision6_send_transactional) with sent, failed, bounced, delivered, opened, clicked and unsubscribed counts. GET /transactional-groups.
Annotations the server declares
- title: List transactional groups
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
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.
759 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 3 outbound tools breaks every one.
- Reads private data11
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write23
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out3
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
{
"permissions": {
"deny": [
"mcp__vision6__vision6_create_message",
"mcp__vision6__vision6_send_transactional",
"mcp__vision6__vision6_update_message"
]
}
}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.
The server marks "vision6_list_reports" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "vision6_list_reports" says "list": a word for reading.
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 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http vision6 https://vision6.usefulapi.io/mcpclaude mcp add --transport http vision6 https://vision6.usefulapi.io/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__vision6__vision6_get_account",
"mcp__vision6__vision6_list_lists",
"mcp__vision6__vision6_get_list",
"mcp__vision6__vision6_list_list_fields",
"mcp__vision6__vision6_list_folders",
"mcp__vision6__vision6_list_contacts",
"mcp__vision6__vision6_get_contact",
"mcp__vision6__vision6_list_messages",
"mcp__vision6__vision6_get_message",
"mcp__vision6__vision6_get_message_sender_defaults",
"mcp__vision6__vision6_get_report",
"mcp__vision6__vision6_list_sent_contacts",
"mcp__vision6__vision6_list_transactional_groups",
"mcp__vision6__vision6_get_transactional_group"
],
"ask": [
"mcp__vision6__vision6_list_reports",
"mcp__vision6__vision6_create_contact",
"mcp__vision6__vision6_add_contacts",
"mcp__vision6__vision6_create_list",
"mcp__vision6__vision6_create_message"
],
"deny": [
"mcp__vision6__vision6_update_contact",
"mcp__vision6__vision6_delete_contact",
"mcp__vision6__vision6_update_message",
"mcp__vision6__vision6_send_transactional"
]
}
}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 vision6. Review it before you use it.
Capability tags behind 23 rules
- mcp__vision6__vision6_get_account untrusted-input
- mcp__vision6__vision6_list_lists private-data, untrusted-input
- mcp__vision6__vision6_get_list private-data, untrusted-input
- mcp__vision6__vision6_list_list_fields private-data, untrusted-input
- mcp__vision6__vision6_list_folders private-data, untrusted-input
- mcp__vision6__vision6_list_contacts private-data, untrusted-input
- mcp__vision6__vision6_get_contact private-data, untrusted-input
- mcp__vision6__vision6_list_messages private-data, untrusted-input
- mcp__vision6__vision6_get_message private-data, untrusted-input
- mcp__vision6__vision6_get_message_sender_defaults private-data, untrusted-input
- mcp__vision6__vision6_list_reports private-data, untrusted-input
- mcp__vision6__vision6_get_report untrusted-input
- mcp__vision6__vision6_list_sent_contacts private-data, untrusted-input
- mcp__vision6__vision6_list_transactional_groups untrusted-input
- mcp__vision6__vision6_get_transactional_group untrusted-input
- mcp__vision6__vision6_create_contact untrusted-input
- mcp__vision6__vision6_add_contacts untrusted-input
- mcp__vision6__vision6_update_contact untrusted-input
- mcp__vision6__vision6_delete_contact untrusted-input
- mcp__vision6__vision6_create_list untrusted-input
- mcp__vision6__vision6_create_message untrusted-input, outbound
- mcp__vision6__vision6_update_message untrusted-input, outbound
- mcp__vision6__vision6_send_transactional untrusted-input, outbound
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/io.usefulapi/vision6/verify?hash=8b3aa5bffd28715619264063b1f17b9de26705f311e1b6d134769070063be3a9" | jq -e '.changed == false'Pinned hash 8b3aa5bffd28, from Oct 24, 2026, 16:23 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/io.usefulapi/vision6/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/io.usefulapi/vision6)Source: MCP Registry · repository. Synced Oct 24, 2026, 17:18 UTC.