Skip to main content
Glama
Ownership verified

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 DescriptionsA

Average 3.8/5 across 6 of 6 tools scored. Lowest: 3/5.

Server CoherenceA
Disambiguation5/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.

Naming Consistency5/5

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.

Tool Count5/5

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.

Completeness5/5

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 tools
browse_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.

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

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
cardIdYes
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYes
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
cardIdYes
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters1/5

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.

Purpose5/5

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.

Usage Guidelines2/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
footerNo
itemIdYes
messageNo
salutationNo
selectedFontNo
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYes
audioIdNo
audioNameNo
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose5/5

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.

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 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.

Discussions

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

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    GTM 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.
    11
    737
    1
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources