Skip to main content
Glama

Panda Greetings

Server Details

Printed greeting cards: find designs, or make one from a picture or message, then order on our site.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.6/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct input path: find_card_designs for ready-made designs, make_card_design for drawing a new design from text, and make_card_from_image for using an existing image. The descriptions explicitly cross-reference when to use each alternative, leaving no practical ambiguity.

Naming Consistency5/5

All three tools use clear snake_case verb_noun patterns (find_card_designs, make_card_design, make_card_from_image). The minor plural/singular difference reflects the number of results rather than an inconsistent convention.

Tool Count5/5

Three tools are well-scoped for a narrow card-creation domain. Each covers a distinct user need (browse ready-made, draw new, use an image) without redundant or trivial additions.

Completeness4/5

The set covers the main creation paths and returns actionable order links, so there are no severe dead ends. Minor gaps exist around explicit post-creation operations like order status or retrieving a previously generated card, but these are largely handled on the linked site.

Available Tools

3 tools
find_card_designsFind card designsA
Read-onlyIdempotent
Inspect

Use this when the user asks Panda Greetings to write a card message or to make a card, or wants card designs: write the message first (if they asked for one), then call this with it so it comes back inside real Panda Greetings designs for the occasion. Returns up to four designs, as a printed card or a printed card their whole team signs from one link, each opening on pandagreetings.com with the message inside, ready to edit and order; Panda Greetings prints the card and mails it in the US. Always include the designs' links in your reply. The answer says when a card ordered today arrives; if they need it by a date, say whether it makes it and with which shipping. To draw a brand-new design instead, use make_card_design. Do not use it for e-cards, gift cards, flowers or other gifts, or for a text or chat message that isn't a card.

ParametersJSON Schema
NameRequiredDescriptionDefault
messageNoThe card message the user wrote or approved, as it goes inside the card: a greeting and a sign-off with the names if known, else [Recipient] and [Your Name], which are filled in when they order. Leave it out if there isn't one yet.
occasionYesWhat the card is for. Pick the closest match; for a holiday, its own name (christmas, hanukkah, valentines-day…), and holiday only when no other fits.
from_groupNoTrue when several people will sign it, such as a team card for a coworker or a class card for a teacher.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
groupYes
priceYes
statusNo
arrivalNo
designsYes
productYes
occasionYes
messageIncludedYes

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world, but the description adds substantial behavior the annotations cannot convey: up to four designs returned, two card variants (single printed card vs. one-link group signing), designs open on pandagreetings.com with the message embedded and are editable/orderable, US printing and mailing, and that the response states arrival date and shipping for date-sensitive requests. It also imposes a reply obligation ('Always include the designs' links in your reply').

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?

Front-loaded with the trigger condition and dense with actionable detail; each sentence carries distinct information (trigger, ordering, return shape, output obligation, alternative, exclusions). It is long and somewhat run-on with semicolon chains, which costs a point, but there is little pure filler.

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?

For a tool with an output schema, the description need not explain return values, yet it still covers the operational essentials: ordering of calls, the alternative tool, excluded use cases, and the required reply behavior. An agent has everything needed to select and invoke it correctly.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning beyond the schema: the message must be drafted before this call and passed so it appears inside the returned designs, and the group-signing behavior clarifies what from_group triggers. It does not restate syntax, so it is above baseline rather than merely adequate.

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?

States a specific verb+resource (find card designs for an occasion), names the exact trigger ('user asks Panda Greetings to write a card message or to make a card'), and explicitly contrasts with the sibling make_card_design. An agent can distinguish it from make_card_design and make_card_from_image without opening any schema.

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?

Gives the when (user wants a card message/design), the sequencing ('write the message first... then call this with it'), the alternative ('To draw a brand-new design instead, use make_card_design'), and explicit exclusions (e-cards, gift cards, flowers, non-card text/chat messages). Nothing is left to inference.

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

make_card_designMake a card designAInspect

Use this when the user asks Panda Greetings to draw a new card design or picture, for example a card with a particular scene, rather than ready-made designs. Panda Greetings draws it from their description of the picture, else from their message, and puts the message inside. Each ChatGPT user gets 2 drawn free a month; after that, and in assistants that don't identify the user, it shows ready-made designs with the message instead. When the picture is already in the chat (attached, or one you made), use make_card_from_image instead. Drawing takes about a minute. The link opens the card on pandagreetings.com as a printed card, or one their team signs, ready to order. Always include the card's link in your reply.

ParametersJSON Schema
NameRequiredDescriptionDefault
messageNoThe message the user wrote or approved, as it goes inside the card: a greeting and a sign-off with the names if known, else [Recipient] and [Your Name], which are filled in when they order.
pictureNoA short description of the picture to draw, if the user said what they want.
to_nameNoWho the card is for, if known.
occasionNoWhat the card is for, if known. Pick the closest match; for a holiday, its own name (christmas, hanukkah, valentines-day…).
from_nameNoWho it is from, if known.
from_groupNoTrue when several people will sign it, such as a team card.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
groupYes
priceYes
statusNo
arrivalNo
designsYes
productYes
occasionYes
messageIncludedYes

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only cover the safety profile (readOnly=false, destructive=false, idempotent=false, openWorld=false); the description adds the quota rule (2 free drawings per user per month), the degraded fallback path, the ~1 minute latency, and the mandatory follow-up action of including the link in the reply. These are real behavioral traits an agent could not infer from the structured fields.

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?

Front-loaded with the trigger condition and the sibling routing, and every sentence carries information (quota, latency, output link). Some sentences are long and chain multiple clauses, but there is no filler.

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?

Given an output schema exists, the description needn't explain return values, yet it still tells the agent what the link is and that it must be included in the reply. Alternatives, fallback behavior, quota, and latency are all covered, leaving no material gap for a 6-param, zero-required tool.

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?

Schema description coverage is 100%, so the baseline is 3, but the description adds genuine semantics beyond the schema: the picture is drawn from the user's stated scene 'else from their message', and the message is placed inside the card. It stops short of explaining the from_group or occasion handling beyond what the schema already says.

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?

States a specific verb and resource ('draw a new card design or picture') and immediately contrasts it with ready-made designs and with the sibling make_card_from_image. An agent can distinguish it from both siblings without opening a schema.

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?

Gives explicit when-to-use (user asks for a drawn design, e.g. a particular scene), explicit when-not (picture already in chat → use make_card_from_image), and even the fallback condition (quota exhausted or unidentified user → ready-made designs). Nothing is left to inference.

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

make_card_from_imageMake a card from a pictureAInspect

Use this when the user wants to turn a picture into a real printed card: one they attached, or one ChatGPT made in this conversation. Pass the picture as image. It doesn't use the free drawings, so it also works after they are used. Panda Greetings puts it on the card with the user's message inside, or writes one if they gave none. The link opens it on pandagreetings.com as a printed card, or one their team signs, ready to order. Always include the card's link in your reply. When its answer says the picture doesn't fill the card, tell the user and offer a tall version: the same scene, or redrawn in Panda Greetings' look. If you make the picture for the card, make it tall (2:3, 1024x1536) so it fills the card, with no words in it unless the user asks for them, and, unless they asked for another style, in Panda Greetings' look: a flat, modern picture-book illustration of simple bold shapes with soft watercolor or stipple texture and paper grain, simple faces with dot eyes and round blush cheeks, one soft color palette, no 3D or photorealism.

ParametersJSON Schema
NameRequiredDescriptionDefault
imageYesThe picture to put on the card.
messageNoThe message the user wrote or approved, as it goes inside the card: a greeting and a sign-off with the names if known, else [Recipient] and [Your Name], which are filled in when they order.
to_nameNoWho the card is for, if known.
occasionNoWhat the card is for, if known. Pick the closest match; for a holiday, its own name (christmas, hanukkah, valentines-day…).
from_nameNoWho it is from, if known.
from_groupNoTrue when several people will sign it, such as a team card.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
groupYes
priceYes
statusNo
arrivalNo
designsYes
productYes
occasionYes
messageIncludedYes

TDQS

A4.3/5.0
Behavior5/5

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

Beyond the annotations, it discloses the downstream effect (a real printed card on pandagreetings.com, ready to order, optionally team-signed), that a message is auto-written if the user gave none, and a concrete failure mode with a recovery path (image doesn't fill the card → tell the user and offer a tall version). It also specifies generation constraints (2:3, 1024x1536, no words, house illustration style), which is exactly the kind of behavioral context annotations cannot carry.

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?

The primary use case and the image-passing instruction are front-loaded, and the later sentences cover genuine operational needs (link in reply, tall-image fallback, generation style). The style paragraph is long and slightly over-specified, but it is working guidance rather than filler.

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?

With an output schema present, return values need not be described, and the description still references the output ('when its answer says the picture doesn't fill the card'). Combined with the annotations, the usage rules, the image generation constraints, and the post-call reply requirement, an agent has everything needed to call and handle this tool correctly.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning: it tells the agent which picture to pass as image, that it may be user-attached or model-generated, what content/aspect ratio that image must have, and that message is written on the user's behalf if absent. The signing/from_group semantics are only lightly touched ('several people will sign it' appears in the schema, not the description).

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 states a concrete verb and resource: turning a user-supplied or in-conversation picture into a real printed card via Panda Greetings. It also implicitly distinguishes itself from the design-based siblings by noting it 'doesn't use the free drawings, so it also works after they are used,' though it never names find_card_designs or make_card_design directly.

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?

It gives an explicit trigger ('Use this when the user wants to turn a picture into a real printed card: one they attached, or one ChatGPT made in this conversation') and a differentiator versus the free-drawing path. It also prescribes follow-up behavior (always include the link; offer a tall version when the image doesn't fill the card), but it stops short of naming the sibling tools as alternatives.

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.

  1. 3 tool updates
    • Changedfind_card_designs2 fields changed
      • changedInput schema / properties / message / description
        Previous value: -"The card message the user wrote or approved, to put inside the card. Leave it out if there isn't one yet."New value: +"The card message the user wrote or approved, as it goes inside the card: a greeting and a sign-off with the names if known, else [Recipient] and [Your Name], which are filled in when they order. Leave it out if there isn't one yet."
      • addedOutput schema / properties / arrival
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "orderedToday": {
        +      "type": "string"
        +    },
        +    "priority": {
        +      "type": "string"
        +    },
        +    "standard": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "orderedToday",
        +    "standard",
        +    "priority"
        +  ],
        +  "type": "object"
        +}
    • Changedmake_card_design2 fields changed
      • changedInput schema / properties / message / description
        Previous value: -"The message the user wrote or approved, to put inside the card."New value: +"The message the user wrote or approved, as it goes inside the card: a greeting and a sign-off with the names if known, else [Recipient] and [Your Name], which are filled in when they order."
      • addedOutput schema / properties / arrival
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "orderedToday": {
        +      "type": "string"
        +    },
        +    "priority": {
        +      "type": "string"
        +    },
        +    "standard": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "orderedToday",
        +    "standard",
        +    "priority"
        +  ],
        +  "type": "object"
        +}
    • Changedmake_card_from_image2 fields changed
      • changedInput schema / properties / message / description
        Previous value: -"The message the user wrote or approved, to put inside the card."New value: +"The message the user wrote or approved, as it goes inside the card: a greeting and a sign-off with the names if known, else [Recipient] and [Your Name], which are filled in when they order."
      • addedOutput schema / properties / arrival
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "orderedToday": {
        +      "type": "string"
        +    },
        +    "priority": {
        +      "type": "string"
        +    },
        +    "standard": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "orderedToday",
        +    "standard",
        +    "priority"
        +  ],
        +  "type": "object"
        +}
  2. 3 tool updates
    • First observedfind_card_designs
    • First observedmake_card_design
    • First observedmake_card_from_image

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources