Zovo Cryptogram Maker
Server Details
Make printable cryptogram puzzles with answers from your own quotes, for a class, a club newsletter.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 2 tools
The two tools have clearly inverse purposes: generating puzzles versus solving given ciphertext. Each description explicitly cross-references the other as the right tool for the opposite task, leaving little room for misselection.
Both names follow the same snake_case verb_noun convention: generate_cryptograms and solve_cryptogram. The plural/singular noun difference reflects generating multiple puzzles versus solving one, so it remains predictable.
Two tools is slightly below the typical 3-15 range, but the server has a narrow domain and each tool covers a core workflow. It is reasonable, though not especially broad.
The generation tool covers puzzle creation, hints, grids, large print, and answer keys, while the solver covers candidate readings, keys, open letters, and confidence. This fully covers the stated cryptogram-making and solving purpose with no obvious dead ends.
Available Tools
2 toolsgenerate_cryptogramsGenerate printable cryptogramsARead-onlyIdempotentInspect
Use this when the user wants printable cryptogram puzzles (cryptogram maker, cryptoquote puzzles, cryptogram puzzles printable with answers, large print cryptograms) from their own quotes or phrases. Convert pasted quotes or a photo of a list into puzzles[] with quote and author fields; text is only a fallback. Each puzzle gets its own substitution key in which no letter stands for itself; optional hint letters, a letter-count helper grid and large print; the PDF ends with an answer key. Only A-Z letters are enciphered; accented letters and other alphabets stay as written. If the user gives no quotes, pick suitable public-domain quotes first. Does not make symbol ciphers or solve puzzles (use solve_cryptogram).
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for the letter keys; the same seed and quotes give the same puzzles. Example: 2026 | |
| text | No | Fallback only: pasted quotes, one per line, as "quote - author". Use puzzles[] when you can. | |
| hints | No | Hint letters revealed per puzzle (0 to 5); overrides difficulty. Example: 2 | |
| paper | No | letter (default) or a4. Example: a4 | |
| title | No | Title on the first page. Example: Friday Cryptoquotes | |
| puzzles | No | One object per puzzle. Convert pasted quotes or a photo of a list into these fields. Example: [{"quote":"Well begun is half done.","author":"Aristotle"}]. Up to 30. | |
| answer_key | No | Include the answer key pages (default true). Example: true | |
| difficulty | No | easy (3 hint letters), medium (1 hint, default) or hard (no hints). Example: easy | |
| large_print | No | Large print for seniors or low vision: letters about 22 pt with bigger answer boxes. Default false. Example: true | |
| letter_counts | No | Print the letter-count helper grid under each puzzle (default true). Example: true | |
| encipher_author | No | Encipher the author's name too, like a newspaper cryptoquote (default true). Example: false |
Output Schema
| Name | Required | Description |
|---|---|---|
| seed | Yes | |
| count | Yes | |
| notes | Yes | |
| pages | Yes | |
| paper | Yes | |
| title | Yes | |
| puzzles | Yes | |
| skipped | Yes | |
| downloads | Yes | |
| large_print | Yes | |
| puzzle_count | No | |
| hints_per_puzzle | Yes | |
| self_mapped_letters | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare the safe read-only/idempotent profile, but the description adds real behavioral detail: each puzzle gets its own substitution key in which no letter stands for itself, only A-Z are enciphered while accented letters and other alphabets stay as written, the output is a PDF ending in an answer key, and puzzles[] takes precedence over text. These are non-obvious output characteristics an agent could not infer from the annotations.
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, conversion rule, and exclusion are front-loaded and easy to scan in a single dense paragraph. The parenthetical keyword list ('cryptogram maker, cryptoquote puzzles, cryptogram puzzles printable with answers, large print cryptograms') is search-oriented filler that adds length without adding instruction.
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 11-parameter optional-everything generator with an output schema, the description covers the decision that matters most (puzzles[] vs text), the output format (PDF with answer key), typography options, and the fallback behavior when no quotes are supplied. 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 coverage is 100%, so the baseline is 3; the description still adds value by declaring puzzles[] the preferred input and text only a fallback, and by explaining that hints override difficulty. It loses a point because the stated 'Up to 30' puzzles and 'up to 1,000 characters are used' conflict with the schema's maxItems of 500 and maxLength of 2000, which could mislead an agent about the real limits.
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 artifact ('generate printable cryptogram puzzles') plus the input source ('their own quotes or phrases'), and explicitly names the sibling it is not ('Does not make symbol ciphers or solve puzzles (use solve_cryptogram)'). The parenthetical keyword variants clarify intent without obscuring the core action.
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?
Opens with an explicit trigger ('Use this when the user wants printable cryptogram puzzles'), gives a fallback rule ('If the user gives no quotes, pick suitable public-domain quotes first'), and routes the excluded case to solve_cryptogram. When-to-use, when-not-to-use, and the alternative are all present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
solve_cryptogramSuggest cryptogram solutionsARead-onlyIdempotentInspect
Use this when the user is stuck on a cryptogram or cryptoquote (cryptoquote help, cryptogram solver) and gives the enciphered text. Returns up to 3 candidate readings ranked against an English word list of about 25,000 words, the letter key for the top reading, the letters still open, and a confidence of high, medium or low with the reason. Pass letters already known (a printed clue) in known_letters. Short texts, names and rare words lower the confidence, and the tool says so; report that confidence to the user. English only; does not solve number or symbol ciphers, Caesar shifts with a shown key, or today's newspaper puzzle without its text.
| Name | Required | Description | Default |
|---|---|---|---|
| ciphertext | Yes | The enciphered text exactly as printed, including punctuation and the author line. Example: "GSV JFRXP YILDM ULC QFNKH LEVI GSV OZAB WLT." | |
| known_letters | No | Letters already known, e.g. a printed clue. Example: [{"cipher":"Q","plain":"T"}] or "Q=T, X=E" | |
| allow_self_mapping | No | Allow a letter to stand for itself (default false; most cryptograms forbid it). Example: false |
Output Schema
| Name | Required | Description |
|---|---|---|
| key | Yes | |
| best | Yes | |
| notes | Yes | |
| reason | Yes | |
| candidates | Yes | |
| confidence | Yes | |
| known_letters | Yes | |
| uncertain_words | Yes | |
| unresolved_letters | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover read-only/idempotent/closed-world, so the description carries the real behavioral load and does: up to 3 ranked candidates, a ~25,000-word English word list, the letter key, the open letters, and a high/medium/low confidence with reason. It also discloses degraded conditions (short texts, names, rare words lower confidence, and the tool says so) — exactly the kind of context annotations cannot express.
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?
Front-loaded with the trigger, then outputs, then parameter guidance, then limits — a sensible order with no filler. It is a single very long run-on sentence with many clauses, which slightly hurts scannability.
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?
Even though an output schema exists, the description still conveys what the agent needs to interpret and relay results (candidates, key, open letters, confidence). Coverage of edge cases and scope limits makes the definition complete for a 3-parameter, single-sibling tool.
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% and the schema already documents ciphertext and known_letters with examples, so the description's note about passing printed clues in known_letters largely restates structured data. allow_self_mapping is never mentioned in the description, though its schema entry is complete. Baseline 3 is correct.
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 ('suggest cryptogram solutions' framed as 'Use this when the user is stuck on a cryptogram') and explicitly names the artifact it consumes ('gives the enciphered text'). The one sibling, generate_cryptograms, is a generator, so the solving framing distinguishes it immediately.
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?
Gives an explicit trigger ('when the user is stuck... and gives the enciphered text') plus concrete exclusions: number or symbol ciphers, Caesar shifts with a shown key, and a newspaper puzzle without its text. It also instructs the agent to report confidence to the user, which is a usage rule, not just a capability statement.
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_cryptograms - First observed
solve_cryptogram
Related MCP Connectors
Make printable nonogram puzzles for teachers, students and puzzle fans as a PDF with an answer key.
1Make printable math cage puzzles for teachers, students and puzzle fans as a PDF with an answer key.
1Make printable cross sum puzzles for puzzle fans, teachers and students as a PDF with an answer key.
1Make printable mazes for parents, teachers and puzzle fans as a PDF with an answer key.
1
Related MCP Servers
- FlicenseNot gradedqualityCmaintenancehttps://cipherhub.cloud https://tools.cipherhub.cloud-
- AlicenseNot gradedqualityDmaintenanceCreates and manages encoded messages using zero-width characters and advanced Unicode steganography techniques, enabling quantum-themed puzzle generation with hidden secrets.38 npm1MIT
- AlicenseNot gradedqualityAmaintenanceGenerate QR codes and create, edit and track dynamic (editable) QR codes with scan analytics, folders, style themes and branded subdomain management. Free REST API with an OpenAPI spec alongside; every tool takes a free API key.12AGPL 3.0
- AlicenseNot gradedqualityBmaintenanceCreate readable, paginated PDFs from code, Markdown, JSON and CSV, with local rendering and inline previews in compatible MCP clients. Public file URL imports run on your computer, and physical printing requires separate approval of a prepared job.AGPL 3.0
Glama MCP Gateway
Add one secure layer between your agents and this server.