Art and Song Ecards
Server Details
Create premium customisable greeting ecards.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 3.8/5 across 6 of 6 tools scored. Lowest: 3/5.
Each tool targets a distinct action: browsing/searching cards, retrieving a specific card, creating a draft, personalizing the message, selecting music, and generating the preview. There is no overlap between searching and retrieving, and the draft modification tools are clearly separate from creation and finalization.
All tool names follow a consistent verb_noun pattern with snake_case (e.g., browse_cards, create_ecard_draft, generate_preview). The verbs are specific to the action, and the nouns clearly indicate the entity being acted upon, making the pattern predictable.
With 6 tools, the set is well-scoped for the ecard personalization workflow. Each tool covers a necessary step in the process, and the count is neither bloated nor too sparse for the domain.
The tool surface covers the full lifecycle from discovering cards, creating a draft, personalizing message and music, to generating a preview handoff. Missing draft retrieval or deletion are not gaps in this context since the workflow is linear and completion occurs on the website.
Available Tools
6 toolsbrowse_cardsAInspect
Browse published ecards by category, keyword, and tags. Multi-word keywords or tags are split into individual terms for tag matching, so search concepts like sympathy and loss separately instead of relying on exact phrase tags.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| limit | No | ||
| cursor | No | ||
| keyword | No | ||
| categoryId | No | ||
| categoryName | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It discloses a non-obvious behavior: multi-word keywords/tags are split into individual terms for tag matching. However, it omits pagination behavior, result ordering, and whether the operation is read-only, leaving gaps for a no-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The first sentence front-loads the action and scope, and the second adds a valuable behavioral caveat. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a browse tool with 6 optional parameters, no output schema, and no annotations, this description is too sparse. It covers basic filters and a matching nuance, but leaves out pagination, result shape, and parameter interplay, so an agent would face significant unknowns when invoking it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 6 parameters with 0% description coverage. The description adds meaning for category, keyword, and tags, but does not explain limit or cursor, nor the relationship between categoryId and categoryName. This partially compensates for the schema gap but is insufficient for 6 undocumented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Browse published ecards by category, keyword, and tags.' This clearly distinguishes it from sibling tools like get_card or create_ecard_draft. No ambiguity in what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for discovery/search over published ecards, with clear context of filtering by category, keyword, and tags. However, it does not explicitly name alternatives or state when not to use it versus get_card, so it stops short of explicit when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_ecard_draftAInspect
Create a pending single-card ecard draft for personalization. Do not collect recipient or purchaser email in MCP.
| Name | Required | Description | Default |
|---|---|---|---|
| cardId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses the 'pending' state and explicitly instructs not to collect recipient/purchaser email. However, it does not mention side effects, permissions, or return behavior, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no redundancy. It front-loads the purpose and includes a relevant constraint without unnecessary wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a single parameter and no output schema. The description covers the core purpose and a key constraint. However, it lacks context about what 'pending' implies in the workflow, how cardId is obtained, or how this step relates to sibling tools like personalize_message.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero description coverage for cardId, and the tool description does not explain its meaning or origin. While the name 'cardId' is self-explanatory, the description adds no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action (create) and resource (pending single-card ecard draft), and the qualifier 'for personalization' helps distinguish it from sibling tools like browse_cards or personalize_message.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (creating a draft for personalization) and includes a directive not to collect emails. However, it does not explicitly mention alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_previewAInspect
Final MCP handoff step. Return preview data and a Personalise Your Ecard URL. Do not collect recipient email, discuss payment in MCP, or ask the user to type continue; show the previewUrl immediately so the user can review and complete the ecard on the website.
| Name | Required | Description | Default |
|---|---|---|---|
| itemId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It goes beyond a simple 'generate preview' by detailing specific actions to take (show previewUrl immediately) and to avoid (email/payment/continue prompts). This gives the agent actionable transparency, though it does not mention error handling or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief, front-loaded with 'Final MCP handoff step', and packs critical behavioral instructions into a few sentences. Every clause adds value—return data, avoid-specific actions, show URL immediately—without redundancy. It is well-structured for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only one parameter and no output schema, the description provides substantial context: its place in the workflow, the expected return contents, and user-interface actions. It misses some detail about itemId and the exact structure of the returned preview data, but overall it is sufficiently complete for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage and the description does not mention the itemId parameter at all. The parameter name is somewhat self-explanatory, but the description provides no meaning beyond that. Since coverage is low, the description fails to compensate, leaving the agent to guess what itemId refers to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is the 'Final MCP handoff step' that returns preview data and a Personalise Your Ecard URL. This specific verb+resource structure distinguishes it from sibling tools like create_ecard_draft or personalize_message, which are earlier steps in the flow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly frames this as the final step, indicating when it should be used. It also provides behavioral guidance on what not to do (collect email, discuss payment, ask to type continue) and to show the previewUrl immediately. While it doesn't name alternative tools explicitly, the context makes the usage timing clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cardBInspect
Get one published ecard with pages, music options, fonts, and message placement.
| Name | Required | Description | Default |
|---|---|---|---|
| cardId | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It notes the ecard is 'published' but does not state read-only intent, authentication needs, error behavior, or whether the returned object includes all listed attributes. This is minimal disclosure for a retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, succinct sentence with no filler. It front-loads the verb and resource, and lists relevant attributes efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one required parameter, no output schema, no annotations), and the description provides a basic understanding of what is included. However, it lacks information about return format, error cases, or how the listed elements are structured, which is not fully compensated given the absence of other metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the lone parameter 'cardId', and the description does not mention or explain it. The agent can only infer that cardId identifies the ecard, but the description adds no semantic value beyond the schema's name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the specific resource ('one published ecard'), listing contained elements (pages, music options, fonts, message placement). This distinguishes it from siblings like browse_cards (likely listing) and create_ecard_draft (creation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It implies use when needing a single published ecard, but does not mention sibling tools or exclusions, leaving the agent unsure about distinctions from browse_cards.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
personalize_messageAInspect
Set the salutation, message, footer/from line, and font for a pending ecard draft. Only set footer when the sender name is known from the prompt; if missing, ask for the From name before calling this tool. Recipient details are handled later on the website.
| Name | Required | Description | Default |
|---|---|---|---|
| footer | No | ||
| itemId | Yes | ||
| message | No | ||
| salutation | No | ||
| selectedFont | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool modifies specific fields and includes a conditional footer behavior, plus the scope boundary about recipient details. However, it doesn't discuss side effects (e.g., whether unmentioned fields are overwritten) or error behavior, which leaves gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, all substantive. The main purpose is front-loaded, followed by a targeted usage instruction and a scope clarification. No redundant or filler text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple update tool with no output schema or annotations, the description covers the core function, a prerequisite, and boundary conditions. It doesn't explain the return value or exact acceptable parameter values, but these are minor given the tool's role in a broader ecard workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero descriptions for its five parameters, so the description adds significant meaning: it maps 'footer' to 'from line', gives a condition for setting it, and names the other fields (salutation, message, font). It doesn't specify valid value formats, which keeps it from a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Set the salutation, message, footer/from line, and font for a pending ecard draft,' which is a specific verb+resource and enumerates the fields. It clearly distinguishes from siblings like create_ecard_draft and select_music, so the tool's purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage condition: 'Only set footer when the sender name is known from the prompt; if missing, ask for the From name before calling this tool.' It also clarifies that recipient details are out of scope. However, it doesn't explicitly name alternative tools, so it's just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_musicAInspect
Select an audio track for a pending ecard draft. Call this before generate_preview whenever the chosen card has available music; choose the best matching track from the card's availableMusic list. Recipient details are handled later on the website.
| Name | Required | Description | Default |
|---|---|---|---|
| itemId | Yes | ||
| audioId | No | ||
| audioName | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It conveys that the tool operates on a pending draft and should precede generate_preview, but it does not disclose whether the selection is idempotent, whether it validates against availableMusic, or whether it returns any confirmation. This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the primary purpose and then adding workflow guidance. Every sentence earns its place, with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description provides the essential workflow context (when to call) and hints at the availableMusic list, but it lacks parameter definitions and any detail about output or error behavior. It is sufficient for a simple tool but has clear gaps in parameter semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the parameters (itemId, audioId, audioName). It mentions 'choose the best matching track from the card's availableMusic list' but does not specify what each parameter represents or how they are used. This leaves the agent guessing about the required itemId and the roles of audioId vs audioName.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Select an audio track for a pending ecard draft,' which is a specific verb (select) and resource (audio track for a draft). It distinguishes from sibling tools like generate_preview (which is for preview) and personalize_message (for messages), and it includes a clear reference to the availableMusic list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use it: 'Call this before generate_preview whenever the chosen card has available music.' This positions the tool in the workflow and implies when not to use it (if no music is available). It also clarifies that recipient details are handled later, avoiding overlap with other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityAmaintenanceGTM signal intelligence suite for AI agents. Six tools: hiring signals, tech stack detection, company-to-LinkedIn resolution, ICP scoring, job board scanning, and a combined signals aggregator. Built for outbound sales workflows.117371MIT

industrylens-mcpofficial
Flicense-qualityCmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
Sociality MCPofficial
Alicense-qualityDmaintenanceSocial media analytics, post insights, and competitor benchmarking for AI agents.6MIT- AlicenseAqualityAmaintenanceDetects hiring intent signals by scanning job boards for specific companies. Returns structured role data for outbound sales targeting.1761MIT