Skip to main content
Glama

Chorus

Server Details

Gathers voice, video and written messages from a group into one book for one person.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

7 tools
book_statusWho has recorded, who is still out, and how long is left.A
Read-onlyIdempotent
Inspect

Returns who is in with their name and relationship, how many voices, videos and written messages have landed, how many carried a photo, who the organiser is still waiting on, and the days left before collecting stops.

ParametersJSON Schema
NameRequiredDescriptionDefault
bookYesThe handle start_book gave you.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds detail about the returned status fields but no additional behavioral traits such as side effects, permissions, or rate limits, which is acceptable given the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that starts with the action and then efficiently lists all status elements. Every clause adds useful information, with no filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even without an output schema, the description fully explains what the agent should expect: names and relationships, counts by media type, photo count, outstanding people, and days remaining. For a simple status query with one parameter, this is complete enough to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for the single 'book' parameter, explaining it as the handle start_book gave. The tool description adds no extra parameter meaning, but because the schema already documents the parameter fully, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a clear verb ('Returns') and a specific resource (book collection status), then enumerates exactly what status information is provided: who is in, message counts, photo counts, missing people, and days left. This clearly distinguishes it from siblings like order_status and start_book.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The context is clear: this tool reports collection progress, including outstanding contributors and time remaining. It does not explicitly name alternatives or state when not to use it, but its purpose is distinct enough among the sibling tools that an agent can infer when to call it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

close_collectingStop collecting, and get the link that plays every message.AInspect

Stops new messages arriving and returns the final counts with the gift link. Nothing is deleted and nothing is finished; it can be reopened.

ParametersJSON Schema
NameRequiredDescriptionDefault
bookYesThe handle start_book gave you.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds meaningful behavioral context beyond the annotations by stating 'Nothing is deleted and nothing is finished; it can be reopened.' This discloses the non-destructive, reversible nature of the operation. It also clarifies the result (final counts with gift link), which is useful since there is no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with no wasted words. The primary action and result are front-loaded, followed by the important reversibility note. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema, the description adequately covers what happens, what is returned, and the reversible nature of the action. It could be slightly more explicit about when exactly to call it (e.g., after start_book), but the param description covers the required input and the overall flow is understandable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully documents the single parameter 'book' as 'The handle start_book gave you.' The description does not add extra parameter meaning beyond what the schema already provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Stops new messages arriving') and a specific output ('returns the final counts with the gift link'). It clearly distinguishes from siblings like reopen_collecting and get_links by describing the unique stopping-and-linking behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool—when you want to stop collecting and obtain the gift link—but does not explicitly contrast it with alternatives such as book_status or get_links. The mention 'it can be reopened' hints at a relationship with reopen_collecting, but no explicit when/when-not guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

orderHand the organiser a payment page for the option they chose.AInspect

Returns a payment link for one of the three ways to keep the book: voices, book, or keepsake, which is the printed hardcover. Stripe shows the price and takes the card and, on the keepsake, the postal address. This tool never takes a card and never names a price. Read the prices from https://choruskeepsake.com/llms.txt when the person asks what it costs.

ParametersJSON Schema
NameRequiredDescriptionDefault
bookYesThe handle start_book gave you.
optionYesvoices, book, or keepsake. Only the keepsake is printed and posted.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnlyHint=false and idempotentHint=false, the description adds meaningful behavioral context: Stripe shows the price, takes the card, and, for keepsake, collects the postal address. It also states 'This tool never takes a card and never names a price,' clarifying that the agent should not quote prices itself. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences and every sentence earns its place: what it returns, what Stripe does, what the tool itself does not do, and where to get prices if asked. It is front-loaded with the core purpose and remains compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, this is nearly complete: it specifies the returned artifact (payment link), the Stripe flow, the price-source external URL, and the only special behaviour around keepsake. It could add what happens on repeat calls or invalid handles, but that is a minor gap for this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The schema already explains both 'book' (handle from start_book) and 'option' (voices, book, or keepsake). The description adds only the detail that keepsake is the printed hardcover, which is useful but not a major compensation burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Returns a payment link') and a specific resource ('one of the three ways to keep the book'), and it enumerates those options: voices, book, keepsake. This clearly distinguishes it from siblings like order_status or start_book: this tool produces a live payment link, not status or setup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: use it to hand the organiser a payment page after the option has been chosen. It also explicitly says the tool never names a price and directs the agent to read prices from https://choruskeepsake.com/llms.txt when cost is asked, which is useful when-to-use guidance. It does not explicitly enumerate alternatives, but the price instruction effectively rules out misuse.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

order_statusWhether it is paid, and where the printer is with it.C
Read-onlyIdempotent
Inspect

Returns whether the book has been paid for and which option was bought, and on a printed one the stage the printer is at with the tracking.

ParametersJSON Schema
NameRequiredDescriptionDefault
bookYesThe handle start_book gave you.

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds context about what data is returned (payment status, option, printing stage), which is useful beyond annotations. It does not disclose any other behavioral traits like auth or rate limits, but given the annotations, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single long sentence that is somewhat convoluted, especially the clause 'on a printed one the stage the printer is at with the tracking.' It could be split and reworded for clarity, but it is not excessively long. It front-loads the main purpose but the phrasing detracts from conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must explain return values. It partially does (payment status, option, printing stage), but it is ambiguous about what 'on a printed one' means and what 'tracking' refers to. It also doesn't specify the format of the returned data. For a simple status check, this is insufficient for an agent to reliably parse the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'book' is fully described in the schema ('The handle start_book gave you'), and the description does not add any additional meaning. Since schema coverage is 100%, the baseline of 3 is justified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns payment status, purchased option, and printing stage for a book. It uses a specific verb ('returns') and resource ('book'), distinguishing it from sibling tools like 'order' (placing orders) and 'book_status' (likely different status). However, the phrase 'on a printed one' is ambiguous, slightly weakening clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as 'book_status' or 'order'. It does not mention prerequisites (e.g., needing a handle from start_book) or exclude scenarios. An agent must infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reopen_collectingLet messages in again, with a new closing date if there is one.BInspect

Reopens a book that was closed or whose date ran out, and returns the collecting link to send round again.

ParametersJSON Schema
NameRequiredDescriptionDefault
bookYesThe handle start_book gave you.
closes_onNoA new day to stop collecting, as 2026-11-14.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations show readOnlyHint: false, destructiveHint: false, idempotentHint: false. The description adds an important behavior: returns the collecting link to send round again. With annotations lacking explicit mutation/destructive flags, the description partially compensates by revealing the state-changing action ('reopens'). It does not cover potential side effects (e.g., resets collection, possible data loss) beyond reopening, and annotations contradict nothing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One clear sentence, no waste. The action (reopens) and outcome (returns the collecting link) are front-loaded. It earns high marks for being concise while conveying essential purpose, though a touch more detail on parameters could be added.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a write operation with no output schema, the description covers the function but not the return format details (e.g., whether the link is in a specific field), nor any side effects on existing messages. The absence of enums and output schema increases the burden, but the operation is simple enough that the description is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%: 'book' described as 'the handle start_book gave you', 'closes_on' as 'a new day to stop collecting' with a format example. The description adds no extra parameter info beyond the schema. It's a baseline 3 because the schema handles it all.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description: 'Reopens a book that was closed or whose date ran out, and returns the collecting link to send round again' uses specific verbs (reopens, returns) with the resource (book), clearly distinguishing from siblings. The title adds context ('Let messages in again, with a new closing date if there is one'), providing a clear purpose. It doesn't explicitly name a sibling, but the action verb 'reopens' is distinct enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: when a book is closed or its date has run out, it should be reopened and the link re-shared. It clearly states the trigger condition ('was closed or whose date ran out'). However, it does not explicitly mention when NOT to use it or alternatives, relying on implication rather than explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_bookStart a Chorus book for a person, and get the one link to forward.AInspect

Starts a book of voice, video and written messages for one person, and returns the single link the organiser sends to everyone taking part. Gathering is free and the people recording need no app and no account. Use this as soon as somebody wants to collect messages from a group for one person, whether or not there is an occasion.

ParametersJSON Schema
NameRequiredDescriptionDefault
occasionNoA big birthday, A wedding, A new baby, As they grow, In memory, or Something else. Plain words are matched to one of those.
closes_onNoThe day collecting stops, as 2026-11-14. Allow three weeks before the day if a printed copy is wanted.
expectingNoWho is expected to record, by name or role, so book_status can say who is still out. Never email addresses.
lead_withNoWhich of those is the big button on a contributor’s phone.
questionsNoQuestions to ask, if the organiser wants their own. The set for the occasion is used when this is left out.
answer_withNoAny of voice, video and written. Voice and written when not said.
subject_nameYesWho the book is for, as the organiser says it, for example Mum.
organiser_emailYesThe organiser’s email. The book belongs to this address and they get in with a six digit code.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false and provide no safety or idempotency signals, so the description carries the burden. It adds meaningful behavioral context: gathering is free, contributors need no app and no account, and the tool returns a single forwardable link. It does not mention side effects like persistent storage or later management via siblings, but the core behavior is transparent enough for invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no wasted words. The main function and output are front-loaded, followed by key user-facing benefits and a clear usage trigger. Every sentence contributes to the agent's ability to decide when and why to call the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 8 parameters and no output schema, the description is nearly complete: it states the purpose, the trigger condition, the key returned artifact, and a major constraint about contributors needing no account. It could mention that the book belongs to the organiser email, but that is already captured in the organiser_email parameter description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all eight parameters in detail. The description adds overall context — one recipient, group contributors, a single link — but does not add per-parameter meaning beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Starts a book of voice, video and written messages for one person, and returns the single link the organiser sends to everyone taking part.' It clearly identifies the tool's core action and output, and differentiates it from siblings like get_links by emphasizing that this creates the book and returns the one link to forward.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use the tool: 'Use this as soon as somebody wants to collect messages from a group for one person, whether or not there is an occasion.' This gives a clear triggering condition, and the phrase 'whether or not there is an occasion' prevents the agent from requiring an occasion to exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updates
    • First observedbook_status
    • First observedclose_collecting
    • First observedget_links
    • First observedorder
    • First observedorder_status
    • First observedreopen_collecting
    • First observedstart_book

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Builds interactive, filterable timelines from your own materials through an interview process, generating self-contained offline files with optional web publishing and cross-device sync.
    15
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables humans and AI to collaboratively write a diary with time-ordered entries, replies, and participant-based access control via MCP tools.
    23
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Preserve grandma's handwritten recipe cards before they're lost. 13 MCP tools to OCR-import cards from photos, capture the story behind each dish (who made it, when, why), search by family member, plan meals, and share with cousins — backed by a real cookbook app that prints as a hardcover heirloom. Free tier, no credit card.
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Access your Carbon Voice conversations and voice memos—retrieving messages, conversations, voice memos, and more as well as send messages to Carbon Voice users.
    28
    72
    10
    ISC
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.7/5.0
Disambiguation5/5

Each tool clearly targets a distinct part of the book lifecycle: starting, collecting, closing, reopening, sharing links, and checking collection or order status. There is no meaningful overlap or ambiguity between the tools.

Naming Consistency3/5

Most tools follow a verb_noun pattern like start_book, close_collecting, and get_links, while book_status and order_status use a noun_status pattern. The bare 'order' tool breaks the pattern and could be seen as a noun or verb, making the naming slightly mixed but still readable.

Tool Count5/5

Seven tools is well-scoped for the server's purpose: managing a message-collection book from creation through ordering. Each tool covers a necessary lifecycle step with no obvious redundancy.

Completeness4/5

The core lifecycle of starting, sharing, monitoring, closing, reopening, and ordering is well covered. Minor gaps exist around modifying or cancelling orders and retrieving pricing, but these are partially addressed through external links and the provided pricing URL.

Resources