Suara
com.trysuara/suaratrysuara.comstreamable-httpv1.0.0Scanned
Social media posts for small businesses from their own photos. Owner approves every post.
12 tools: 1 can delete or cancel things, 2 do something that can't be undone, 6 change things and 3 only read.
- Reads private data · 0
- Reads text others write · 6
- Can send data out · 5
- 2 findings
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.
12 tools
Deletes or cancels 1Claude Code: deny
approve_postUse this only when the signed-in owner has clearly said to approve or post one specific post, after they've seen it.Reads text others writeCan send data outNo findings
Why it is in this group
- The name "approve_post" says "approve": a word for a change.
- The description says "can't be undone".
- 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 "approve_post" says "approve" and "post": it writes something other people read.
Description, as the server wrote it Use this only when the signed-in owner has clearly said to approve or post one specific post, after they've seen it. It schedules that post to be published on the owner's connected social accounts on its day (or right away if they say now). Publishing can't be undone from here. One post per call; it fails if the post isn't finished or no account is connected.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- openWorldHint: true
Can't be undone 2Claude Code: ask
holiday_calendarUse this when someone planning posts, promotions or opening hours needs the public holidays, state holidays or big shopping/observance days for Malaysia, Singapore, Indonesia, Phil…Can send data out1 finding
Why it is in this group
- The input addresses people (input.to): what it sends cannot be taken back.
- 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.to): what the tool writes goes there.
Findings
- Warn
The server marks "holiday_calendar" 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,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.
Description, as the server wrote it Use this when someone planning posts, promotions or opening hours needs the public holidays, state holidays or big shopping/observance days for Malaysia, Singapore, Indonesia, Philippines, Thailand, United States, Canada, United Kingdom, Australia or the UAE, for example 'when is Hari Raya this year' or 'holidays in Malaysia next month'. Returns dates verified against the official government list and a second independent calendar, which regions/states each one applies to, and lunar holidays that are expected but not yet confirmed (clearly marked). Do not use it for other countries, for school terms, or to invent dates it doesn't return.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
- idempotentHint: true
send_to_suaraUse this when the signed-in owner has a request, idea or feedback for the Suara team who make their posts: what to post about, a promotion or event coming up, a change to a post (s…Can send data outNo findings
Why it is in this group
- The name "send_to_suara" says "send": a word for sending, and what is sent cannot be taken back.
What it can reach
- outboundThe name "send_to_suara" says "send": it sends or publishes something to other people.
Description, as the server wrote it Use this when the signed-in owner has a request, idea or feedback for the Suara team who make their posts: what to post about, a promotion or event coming up, a change to a post (say which postId), a new look, more or fewer posts. Write the request clearly and completely in the owner's words. It sends a message to the team (nothing is posted or changed right away); the team replies later, so check with get_suara_replies.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- openWorldHint: false
Changes things 6Claude Code: ask
best_time_to_postUse this when someone asks when to post on Instagram, Facebook or TikTok in Kuala Lumpur, Penang, Johor Bahru, Singapore, Jakarta, Manila, Bangkok, New York, Los Angeles, Toronto, …Can send data out1 finding
Why it is in this group
- The name "best_time_to_post" says "post": 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 name "best_time_to_post" says "post": it sends or publishes something to other people.
Findings
- Warn
The server marks "best_time_to_post" 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 "best_time_to_post" says "post": a word for a change.
Description, as the server wrote it Use this when someone asks when to post on Instagram, Facebook or TikTok in Kuala Lumpur, Penang, Johor Bahru, Singapore, Jakarta, Manila, Bangkok, New York, Los Angeles, Toronto, Vancouver, London, Sydney, Melbourne or Dubai (or one of those countries). Returns windows in that city's local time where two large 2026 studies (Sprout Social and Buffer) agree, shows where they disagree instead of picking one, and adds what we measured ourselves (restaurants and cafes in the Suara Restaurant Index, and Suara clients when there are enough posts). Do not use it for other cities, for a specific account's own best time, or to promise results.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
- idempotentHint: true
connect_social_accountUse this when the signed-in owner wants to connect their Instagram, Facebook Page or TikTok so approved posts can be published.Reads text others writeNo findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
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 Use this when the signed-in owner wants to connect their Instagram, Facebook Page or TikTok so approved posts can be published. Returns a secure link (valid for an hour) to the platform's own login page; Suara never sees their password. Instagram must be a Business or Creator account. Nothing is posted by connecting.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- openWorldHint: true
make_sample_postsUse this when someone who owns or works for a small business wants to see what Suara would post for them.Reads text others writeCan send data outNo findings
Why it is in this group
- The name "make_sample_posts" says "post": 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 "make_sample_posts" says "post": it sends or publishes something to other people.
Description, as the server wrote it Use this when someone who owns or works for a small business wants to see what Suara would post for them. Give the business name plus its own website and/or up to 3 photos from the chat (not Instagram or delivery-app pages). Returns 3 designed posts with captions, full size, ready to use, made from the business's own photos and words; about a minute, so if it says they're still being made, call it again with the same business. Nothing is posted anywhere and no account is needed. One sample per person per day. Only for a business the user owns or works for.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- openWorldHint: true
- idempotentHint: false
my_instagram_insightsUse this when the signed-in owner asks what to post, when to post, or how their Instagram is doing.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 Use this when the signed-in owner asks what to post, when to post, or how their Instagram is doing. Returns what's working on their own public Instagram: when they post, which posts do better, recurring themes. Read only.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
my_social_accountsUse this when the signed-in owner asks which social accounts Suara can post to.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 Use this when the signed-in owner asks which social accounts Suara can post to. Returns each connected platform and its username. Read only.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
trending_audioUse this when someone wants popular or trending songs to put on a Reel, TikTok or Story for a business in Malaysia, Singapore, Indonesia, Philippines, Thailand, United States, Cana…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 Use this when someone wants popular or trending songs to put on a Reel, TikTok or Story for a business in Malaysia, Singapore, Indonesia, Philippines, Thailand, United States, Canada, United Kingdom, Australia or the UAE, for example 'what songs are trending in Malaysia for Reels?'. Returns this week's songs charting on both Apple Music and Spotify in that country, with the trend (new, up, down) and whether a business account can use them. It is a music-chart signal, not a count of Reels or TikTok uses. Every song is marked business use 'unknown' with the platform's official rule: say so, and never tell a business a song is cleared. Not for picking royalty-free music or for countries outside the list.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
- idempotentHint: true
Only reads 3Show 3 read-only tools
get_my_brandUse this when the signed-in owner asks what Suara knows about their business or how their posts will sound.Reads text others writeNo findings
Why it is in this group
- The name "get_my_brand" says "get": a word for reading.
What it can reach
- untrusted-inputThe description's first sentence says "post": it reads posts, which other people can write.
Description, as the server wrote it Use this when the signed-in owner asks what Suara knows about their business or how their posts will sound. Returns their brand as Suara has it locked: name, voice, audience, colours, what they sell, and the notes they've given ("less pink", "never say cheap"). Read only. Changes nothing.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_my_postsUse this when the signed-in owner wants to see this week's posts, what's coming up, or what a post looks like.Reads text others writeNo findings
Why it is in this group
- The name "get_my_posts" says "get": a word for reading.
What it can reach
- untrusted-inputThe name "get_my_posts" says "get" and "post": it reads posts, which other people can write.
- untrusted-inputThe description's first sentence says "post": it reads posts, which other people can write.
Description, as the server wrote it Use this when the signed-in owner wants to see this week's posts, what's coming up, or what a post looks like. Returns each post's caption, hashtags, day and status (being made, ready to review, waiting for approval, scheduled, posted), shown in the Suara viewer with every slide. Give postId to see one post. Read only. Nothing is posted.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
get_suara_repliesUse this when the signed-in owner asks if there's news from the Suara team, or after send_to_suara.Reads text others writeNo findings
Why it is in this group
- The name "get_suara_replies" says "get": a word for reading.
What it can reach
- untrusted-inputThe name "get_suara_replies" says "get" and "reply": it reads comments, which other people can write.
Description, as the server wrote it Use this when the signed-in owner asks if there's news from the Suara team, or after send_to_suara. Returns the team's replies and updates from the last few days (7 by default, up to 30): answers to their requests, posts ready to review, what was posted. Read only.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: false
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.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data.
- Reads private data0
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write6
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out5
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
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.
- Warnholiday_calendar
The server marks "holiday_calendar" 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,"idempotentHint":true,"openWorldHint":false}; The input addresses people (input.to): what it sends cannot be taken back.
The server marks "best_time_to_post" 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 "best_time_to_post" says "post": 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 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http suara https://mcp.trysuara.com/mcpclaude mcp add --transport http suara https://mcp.trysuara.com/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__suara__get_my_brand",
"mcp__suara__get_my_posts",
"mcp__suara__get_suara_replies"
],
"ask": [
"mcp__suara__make_sample_posts",
"mcp__suara__trending_audio",
"mcp__suara__holiday_calendar",
"mcp__suara__best_time_to_post",
"mcp__suara__send_to_suara",
"mcp__suara__connect_social_account",
"mcp__suara__my_social_accounts",
"mcp__suara__my_instagram_insights"
],
"deny": [
"mcp__suara__approve_post"
]
}
}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 suara. Review it before you use it.
Capability tags behind 9 rules
- mcp__suara__make_sample_posts untrusted-input, outbound
- mcp__suara__holiday_calendar outbound
- mcp__suara__best_time_to_post outbound
- mcp__suara__get_my_brand untrusted-input
- mcp__suara__get_my_posts untrusted-input
- mcp__suara__send_to_suara outbound
- mcp__suara__get_suara_replies untrusted-input
- mcp__suara__approve_post untrusted-input, outbound
- mcp__suara__connect_social_account untrusted-input
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/com.trysuara/suara/verify?hash=33ff13c85f39a015bda8278883d580b2817b1897e7e4c3df3827320357ebaf25" | jq -e '.changed == false'Pinned hash 33ff13c85f39, from Oct 24, 2026, 18:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/com.trysuara/suara/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/com.trysuara/suara)Source: MCP Registry. Synced Oct 24, 2026, 18:17 UTC.