Zovo Place Card Maker
Server Details
Printable tent place cards
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 2 tools
The two tools are clearly differentiated by output format: escort cards are flat 3.5x2 cards with meal choice, while place cards are tent-fold with name on both faces. There is some overlap since both accept a guest list, convert to guests, and also return a table plan PDF, so an agent could briefly hesitate, but the descriptions resolve it.
Both tools follow the exact same verb_noun pattern (generate_escort_cards, generate_place_cards) and are snake_case throughout. The naming is fully predictable and parallel.
Two tools is on the thin side for a card-generation server; the two card formats are the core use case, but a single-purpose surface with only two entries feels minimal. It is defensible given the narrow domain but sits at the borderline.
The two main printable products (escort cards and place cards) plus a table plan PDF are covered, but there is no tool for template/font selection, previewing, or invitation design (explicitly declared out of scope). The surface is functional for one-shot generation but has notable gaps for customization.
Available Tools
2 toolsgenerate_escort_cardsGenerate escort cards and table planARead-onlyIdempotentInspect
Use this when the user wants escort cards (flat cards that tell each guest their table, often with meal choice) or a printable table plan list from a guest list. Convert the guest list into guests (name, table, meal). Returns flat 3.5 x 2 in cards, 10 per Letter or A4 page (or 105 x 74 mm, 8 per A4), with crop marks, plus a table plan PDF grouped by table with meal counts. Up to 300 guests. Does not choose seats for guests.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Card size: "3.5x2" (default, US 3.5 x 2 in flat) or "a7" (105 x 74 mm flat, 8 per A4 page). | |
| sort | No | table (default when tables are given: by table, then name), alpha (by full name), last (by last name) or given (list order). | |
| text | No | Fallback only: a pasted guest list, one guest per line, e.g. "Ana Kowalska, 1, Fish" or CSV with a Name,Table,Meal header. Prefer guests. | |
| paper | No | letter (default) or A4. | |
| guests | No | The guest list as objects. Convert a pasted list, a spreadsheet or a photo of a seating chart into these fields. Example: [{"name":"Ana Kowalska","table":1,"meal":"Fish"},{"name":"王芳","table":2}]. Up to 300 guests. | |
| show_meal | No | Print the meal choice as a small tag. Default true when meals are given. | |
| show_table | No | Print the table number on the card. Default true when tables are given. | |
| event_title | No | Optional small line on each card, e.g. "Emma & Liam · 12 June 2027" or "Thanksgiving 2026". |
Output Schema
| Name | Required | Description |
|---|---|---|
| kind | Yes | |
| flags | Yes | |
| meals | Yes | |
| title | Yes | |
| counts | Yes | |
| layout | Yes | |
| tables | Yes | |
| preview | Yes | |
| downloads | Yes | |
| assumptions | Yes | |
| flags_count | No | |
| meals_count | No | |
| tables_count | No | |
| preview_count | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description adds real behavior on top: output layout (3.5 x 2 in flat cards, 10 per Letter/A4 page, crop marks), a second artifact (table plan PDF grouped by table with meal counts), and a hard limit of 300 guests. It also discloses a transformation expectation ("Convert the guest list into guests") that the agent must perform before calling.
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 trigger condition is front-loaded, then outputs, then limits, in four dense sentences with no filler. "Convert the guest list into guests (name, table, meal)" mildly restates what the schema already spells out, costing a bit of tightness.
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 an 8-parameter, zero-required generation tool with a full schema, existing output schema, and read-only annotations, the description covers trigger, output artifacts, page geometry, guest cap, and the seat-assignment exclusion. Nothing an agent needs in order to call it correctly is missing.
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 100% and each parameter already carries its own enum-like options and defaults (size, sort, paper, show_meal, show_table, event_title), so the description's only added input signal is the guests-vs-text preference, which the schema itself already states. Baseline 3 applies when the schema does the heavy lifting.
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?
States a specific verb and resource and even defines the artifact: "escort cards (flat cards that tell each guest their table, often with meal choice) or a printable table plan list from a guest list." The scope boundary "Does not choose seats for guests" is a useful disambiguator, but the sibling generate_place_cards is never named, so the agent must infer the escort-vs-place-card distinction on its own.
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?
"Use this when the user wants escort cards ... or a printable table plan list from a guest list" gives an explicit when-to-use trigger, and "Does not choose seats for guests" states a clear exclusion. It stops short of naming the alternative tool (generate_place_cards) or describing when that one should be preferred instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_place_cardsGenerate tent place cardsARead-onlyIdempotentInspect
Use this when the user wants place cards printable from a guest list, a place card template, or table name cards for a wedding, dinner or Thanksgiving. Convert the user's guest list, spreadsheet or a photo of a seating chart into guests (name, table, meal); use text only as a fallback. Makes tent-fold cards, 3.5 x 2 in folded (or 105 x 74 mm A7 on A4), 4 per page or 6 per Letter landscape page, with the name on both faces (back face rotated 180°), dashed fold lines, crop marks, an optional event line, table number and meal tag, sorted by table or name. Long names shrink then wrap to 2 lines. Also returns a table plan PDF. Up to 300 guests. Does not seat guests or design invitations.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Card size: "3.5x2" (default, US 3.5 x 2 in folded) or "a7" (105 x 74 mm folded, 4 per A4 sheet). | |
| sort | No | table (default when tables are given: by table, then name), alpha (by full name), last (by last name) or given (list order). | |
| text | No | Fallback only: a pasted guest list, one guest per line, e.g. "Ana Kowalska, 1, Fish" or CSV with a Name,Table,Meal header. Prefer guests. | |
| paper | No | letter (default) or A4. | |
| guests | No | The guest list as objects. Convert a pasted list, a spreadsheet or a photo of a seating chart into these fields. Example: [{"name":"Ana Kowalska","table":1,"meal":"Fish"},{"name":"王芳","table":2}]. Up to 300 guests. | |
| per_page | No | 4 (default, portrait) or 6 per page (landscape, US size on Letter only). | |
| show_meal | No | Print the meal choice as a small tag. Default true when meals are given. | |
| show_table | No | Print the table number on the card. Default true when tables are given. | |
| event_title | No | Optional small line on each card, e.g. "Emma & Liam · 12 June 2027" or "Thanksgiving 2026". |
Output Schema
| Name | Required | Description |
|---|---|---|
| kind | Yes | |
| flags | Yes | |
| meals | Yes | |
| title | Yes | |
| counts | Yes | |
| layout | Yes | |
| tables | Yes | |
| preview | Yes | |
| downloads | Yes | |
| assumptions | Yes | |
| flags_count | No | |
| meals_count | No | |
| tables_count | No | |
| preview_count | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the description's value is the added context it supplies: a 300-guest cap, long-name shrink-then-wrap behavior, back-face rotation, fold lines and crop marks, and the extra table plan PDF artifact. That is meaningful beyond the annotations, though it says nothing about what happens when inputs exceed limits or how failures surface.
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?
It is front-loaded: the usage trigger leads, the conversion instruction follows, and the non-goal closes. It is a single dense paragraph with some duplication of physical specs already documented in the size and per_page fields, which keeps it from a 5 but does not make it wasteful.
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 9-parameter generator with full schema coverage and an output schema, everything an agent needs is present: input sources and precedence, limits, layout outcomes, optional fields, and scope exclusions. Return-value details are correctly omitted because the output schema covers them, apart from the useful note that a table plan PDF also comes back.
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 coverage is 100% with well-written per-parameter descriptions, so the baseline is 3; the description earns above that by adding the conversion guidance ("guest list, spreadsheet or a photo of a seating chart into guests (name, table, meal)") and the default sorting logic. Some of the layout spec (3.5 x 2, 4 vs 6 per page) merely restates the size and per_page schema text.
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 names a specific verb+artifact ("Makes tent-fold cards") with exact dimensions, output formats, and an explicit negative scope ("Does not seat guests or design invitations"). It is unmistakably a place-card generator rather than a seating or invitation tool, though it never explicitly contrasts itself with the sibling generate_escort_cards, leaving that distinction to domain inference.
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 opening clause gives concrete when-to-use triggers (wedding, dinner, Thanksgiving; guest list, template, or table name cards) and the text parameter is framed as fallback-only with the preferred source named. What is missing is an explicit statement of when a user should pick the escort-card sibling instead.
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.
2 tool updates
- First observed
generate_escort_cards - First observed
generate_place_cards
Related MCP Connectors
Print name tags and place cards for an event from a guest list: adhesive name badges, 8 per sheet.
1Make printable business cards from your name and contact details.
1
Related MCP Servers
- AlicenseAqualityBmaintenanceMake posters, social cards and slide decks from templates, check the layout, render PNG, JPG or PDF2216MIT
- AlicenseNot gradedqualityCmaintenanceGenerates printable scoreboard HTML files with configurable players, rounds, and titles, and writes them to a local output directory.82 npmMIT
- AlicenseAqualityBmaintenanceEnables an AI agent to design, lay out, proof and print badges, business cards, flyers, photos and sublimation transfers on real paper printers with millimetre-accurate output, packing mixed items onto shared sheets with crop marks. It also remembers named print profiles, including printer, paper, tray, media type, quality and calibration settings.10MIT

PDF Export for AI Agentsofficial
AlicenseBqualityDmaintenanceWell-designed PDFs from a single prompt. Describe what you need, get a professional document.282 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.