Skip to main content
Glama

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.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsB

Average 3.3/5 across 6 of 6 tools scored. Lowest: 2.7/5.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct role: browsing, getting cards, creating drafts, personalizing messages, selecting music, and generating previews. There is no functional overlap.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case, e.g., browse_cards, create_ecard_draft, generate_preview. Minor variation between 'ecard' and 'card' is negligible.

Tool Count5/5

Six tools cover the essential workflow for an ecard service without redundancy or unnecessary complexity. The count is well-scoped for the domain.

Completeness5/5

The tool set provides a complete flow from browsing to final preview, intentionally excluding recipient/payment details as per design. No critical gaps are evident.

Available Tools

6 tools
browse_cardsBInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
limitNo
cursorNo
keywordNo
categoryIdNo
categoryNameNo
Behavior2/5

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

The description only notes that multi-word keywords/tags are split for matching, but with no annotations, it fails to disclose pagination, return format, authentication, or other behavioral traits.

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?

Two efficient sentences that state purpose and a key behavioral detail without unnecessary words.

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?

Given 6 parameters, no output schema, and no annotations, the description is insufficient—missing pagination details, parameter distinctions, and return value information.

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?

With 0% schema description coverage, the description adds meaning for category, keyword, and tags but omits limit and cursor, which are necessary for pagination understanding.

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 clearly states the tool browses published ecards by category, keyword, and tags, which distinguishes it from sibling tools like create_ecard_draft or get_card.

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 for searching ecards but does not explicitly state when to use this tool versus alternatives or provide prerequisites or exclusions.

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

create_ecard_draftCInspect

Create a pending single-card ecard draft for personalization. Do not collect recipient or purchaser email in MCP.

ParametersJSON Schema
NameRequiredDescriptionDefault
cardIdYes
Behavior2/5

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

With no annotations, the description should disclose behavioral traits like auth requirements, idempotency, or side effects. It only states 'pending draft' and an email restriction, omitting details like whether the draft is saved, returned, or requires further steps.

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 extremely concise with two front-loaded sentences. It wastes no words and immediately conveys the core action and a key constraint.

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?

The tool creates a draft but the description does not mention return values (e.g., draft ID), prerequisites (e.g., cardId existence), or next steps. Given no output schema, this lack of completeness forces the agent to guess.

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

Parameters1/5

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

The input schema has one required parameter (cardId) with zero description coverage. The tool description adds no explanation of what cardId represents (e.g., which card to draft). This is a critical gap.

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 creates a pending single-card ecard draft for personalization, which distinguishes it from sibling tools like browse_cards, get_card, or personalize_message. However, it could more explicitly contrast with sibling tools.

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 only a negative constraint ('Do not collect recipient or purchaser email') but does not specify when to use this tool over its siblings, such as in the ecard creation workflow vs. after personalization.

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

generate_previewCInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYes
Behavior2/5

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

With no annotations, the description must fully disclose behavior. It mentions returning preview data and URL, but does not describe side effects (e.g., whether calling it multiple times creates multiple previews), required permissions, or the nature of the preview (temporary or persistent).

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 brief (two sentences) and front-loaded with the purpose. However, it omits necessary parameter guidance, which reduces efficiency.

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?

Given the tool has only one parameter and no output schema, the description should fully cover parameter meaning and return value structure. It fails to explain itemId and does not describe the format of the preview data or URL.

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

Parameters1/5

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

The input schema has one required parameter 'itemId' with no description in the schema (0% coverage). The tool description does not explain what itemId refers to, leaving the agent to guess its meaning.

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 preview data and a URL, and identifies itself as the 'Final MCP handoff step'. This distinguishes it from sibling tools like browse_cards or create_ecard_draft, though it could explicitly state how it differs.

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 provides negative guidance (what not to do: collect email, discuss payment, ask for 'continue'), but does not give positive guidelines on when to invoke this tool versus alternatives. The phrase 'Final MCP handoff step' implies it is the last tool, but lacks explicit context.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
cardIdYes
Behavior3/5

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

Without annotations, the description carries the burden of disclosing behavior. 'Get' implies a read-only operation with no destructive side effects, but it does not mention authentication requirements, error handling, or what happens if the card ID is invalid or not found. Basic purpose is clear but could add safety details.

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?

Single sentence with 10 words, no unnecessary information. However, it could be slightly more informative without becoming verbose, such as adding that the card ID is required.

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 simple tool with one parameter and no output schema, the description covers the core purpose and returned components. It lacks details on error conditions or response format, but is adequate given low complexity.

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

Parameters2/5

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

The only parameter, cardId, has no description in the schema (0% coverage). The description does not explain its format, requirement, or constraints beyond what the name implies. Adding parameter details (e.g., 'the unique identifier of the ecard') would improve usability.

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 it retrieves one published ecard and lists included components (pages, music, fonts, message placement). However, it does not differentiate from sibling tool 'browse_cards', which likely lists multiple cards. A contrast would have earned a 5.

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?

No guidance on when to use this tool versus alternatives like browse_cards. Description implies single-card retrieval but lacks explicit context like 'use this to get details of a specific card by ID; use browse_cards to list all.'

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
footerNo
itemIdYes
messageNo
salutationNo
selectedFontNo
Behavior3/5

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

No annotations are provided, so the description carries full burden. It describes that the tool sets fields on a pending draft and includes a conditional rule for footer. However, it does not disclose side effects, idempotency, authorization needs, or whether the tool modifies state permanently. More behavioral context would be beneficial.

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 extremely concise, consisting of two sentences. The first sentence states the primary action and resources, and the second adds crucial conditional guidance. Every sentence is necessary and front-loaded.

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?

Given the tool has 5 parameters and no output schema, the description adequately covers the purpose and a key conditional (footer). However, it lacks details about what happens if the itemId does not exist, error cases, or the expected return value. It is minimally complete for a tool of 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 coverage is 0%, but the description lists all parameters (salutation, message, footer, selectedFont, itemId) and explains the special condition for footer. It does not provide validation constraints (e.g., max length, allowed values) but gives enough context to understand their purpose. Baseline 3 is appropriate as it adds meaning beyond the schema.

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 clearly states the verb 'Set' and the resource 'pending ecard draft'. It lists the specific fields (salutation, message, footer, font). This distinguishes it from sibling tools like create_ecard_draft (creation) and select_music (music selection).

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 provides explicit guidance: only set footer when sender name is known, and to ask for the From name if missing. It also clarifies that recipient details are handled later. However, it could more explicitly state when to use this tool vs alternatives like create_ecard_draft or generate_preview.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYes
audioIdNo
audioNameNo
Behavior3/5

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

No annotations provided, so description must cover behavior. It mentions 'pending ecard draft' and 'handled later on website' implying non-destructive intermediate step, but does not detail side effects, auth, or error handling. Adequate for simple selection but incomplete.

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?

Two sentences, front-loaded with purpose, no unnecessary words. Highly efficient and scannable.

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?

Given 3 parameters, no annotations, and no output schema, the description explains the tool's role in a workflow but fails to document parameters or return values, leaving gaps for correct invocation.

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

Parameters2/5

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

Schema description coverage is 0% and description provides no individual parameter meanings. Only indirectly implies audioId relates to track from availableMusic list. Required itemId and optional audioName remain unexplained.

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 clearly states the verb 'select' and the resource 'audio track for a pending ecard draft'. It distinguishes from sibling tools by specifying it precedes generate_preview and ties to availableMusic list.

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?

Explicitly states when to call ('before generate_preview whenever the chosen card has available music') and provides sequencing context. Implicitly indicates when not to call (if no music) but lacks explicit exclusion.

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

Discussions

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

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources