Crossword, audio crossword, word search, cryptogram and cross-math puzzle links for ohmydots.com.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Create an audio crossword puzzle URL. Unlike the classic crossword, clues are not text hints: each word itself is played back as audio, so the player hears the word and must spell it. You must provide only the list of words (no hints). The list must have between 3 and 30 words. If user specifies count/topic, generate appropriate words first, then call this tool with the words parameter.
Plain list of words (no hints), one per line, separated by newlines. Each word is played back as audio for the player to spell. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters are allowed but do not count towards length. Words do not need to be uppercased.
Optional: Topic/theme for the crossword. Only for reference.
Optional: Language for the crossword. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt.
Optional: Number of words requested (3-30). Only for reference/validation.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Create an audio crossword puzzle URL. Unlike the classic crossword, clues are not text hints: each word itself is played back as audio, so the player hears the word and must spell it. You must provide only the list of words (no hints). The list must have between 3 and 30 words. If user specifies count/topic, generate appropriate words first, then call this tool with the words parameter.
| Argument | Type | Description |
|---|---|---|
| topic | string | Optional: Topic/theme for the crossword. Only for reference. |
| words* | string | Plain list of words (no hints), one per line, separated by newlines. Each word is played back as audio for the player to spell. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters are allowed but do not count towards length. Words do not need to be uppercased. |
| language | string | Optional: Language for the crossword. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt. |
| word_count | integer | Optional: Number of words requested (3-30). Only for reference/validation. |
{
"type": "object",
"required": [
"words"
],
"properties": {
"topic": {
"type": "string",
"description": "Optional: Topic/theme for the crossword. Only for reference."
},
"words": {
"type": "string",
"description": "Plain list of words (no hints), one per line, separated by newlines. Each word is played back as audio for the player to spell. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters are allowed but do not count towards length. Words do not need to be uppercased."
},
"language": {
"type": "string",
"description": "Optional: Language for the crossword. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt."
},
"word_count": {
"type": "integer",
"maximum": 30,
"minimum": 3,
"description": "Optional: Number of words requested (3-30). Only for reference/validation."
}
}
}Create a cross-math puzzle URL. A cross-math puzzle is a crossword-shaped grid of arithmetic expressions (e.g. "12 + 7 = 19") where some numbers are hidden and the player must fill them in. All parameters are optional; sensible defaults are used when omitted.
| Argument | Type | Description |
|---|---|---|
| language | string | Optional: Language for the puzzle page. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt. |
| operators | array | Optional: Math operators allowed in the expressions, any combination of +, -, * (multiplication) and / (division). Defaults to addition only. |
| difficulty | string | Optional: Puzzle difficulty. The higher the difficulty, the fewer numbers are pre-filled for the player. Defaults to medium. |
| max_number | integer | Optional: Largest number allowed as an operand/result. Defaults to 20. Must be greater than 4x min_number. |
| min_number | integer | Optional: Smallest number allowed as an operand/result. Defaults to 1. Must leave enough room below max_number (max_number must be greater than 4x min_number). |
| total_expressions | integer | Optional: Number of math expressions in the puzzle (4-30). Defaults to 10. |
{
"type": "object",
"required": [],
"properties": {
"language": {
"type": "string",
"description": "Optional: Language for the puzzle page. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt."
},
"operators": {
"type": "array",
"items": {
"enum": [
"+",
"-",
"*",
"/"
],
"type": "string"
},
"description": "Optional: Math operators allowed in the expressions, any combination of +, -, * (multiplication) and / (division). Defaults to addition only."
},
"difficulty": {
"enum": [
"easy",
"medium",
"hard"
],
"type": "string",
"description": "Optional: Puzzle difficulty. The higher the difficulty, the fewer numbers are pre-filled for the player. Defaults to medium."
},
"max_number": {
"type": "integer",
"maximum": 9999,
"minimum": 0,
"description": "Optional: Largest number allowed as an operand/result. Defaults to 20. Must be greater than 4x min_number."
},
"min_number": {
"type": "integer",
"maximum": 9999,
"minimum": 0,
"description": "Optional: Smallest number allowed as an operand/result. Defaults to 1. Must leave enough room below max_number (max_number must be greater than 4x min_number)."
},
"total_expressions": {
"type": "integer",
"maximum": 30,
"minimum": 4,
"description": "Optional: Number of math expressions in the puzzle (4-30). Defaults to 10."
}
}
}Create a crossword puzzle URL. You must provide the list of words and hints. The list must have between 3 and 30 pairs words/hints. If user specifies count/topic, generate appropriate words and hints first, then call this tool with the words parameter.
| Argument | Type | Description |
|---|---|---|
| topic | string | Optional: Topic/theme for the crossword. Only for reference. |
| words* | string | Words with hints in format "word: hint", separated by newlines. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters except colon are allowed. Non-alphabetic characters do not count towards length. Words do not need to be uppercased. Keep hints brief, long hints take up too much space on the board. |
| language | string | Optional: Language for the crossword. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt. |
| word_count | integer | Optional: Number of words requested (3-30). Only for reference/validation. |
{
"type": "object",
"required": [
"words"
],
"properties": {
"topic": {
"type": "string",
"description": "Optional: Topic/theme for the crossword. Only for reference."
},
"words": {
"type": "string",
"description": "Words with hints in format \"word: hint\", separated by newlines. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters except colon are allowed. Non-alphabetic characters do not count towards length. Words do not need to be uppercased. Keep hints brief, long hints take up too much space on the board."
},
"language": {
"type": "string",
"description": "Optional: Language for the crossword. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt."
},
"word_count": {
"type": "integer",
"maximum": 30,
"minimum": 3,
"description": "Optional: Number of words requested (3-30). Only for reference/validation."
}
}
}Create a cryptogram puzzle URL. You must provide the secret sentence/message to encode (at least 5 distinct letters). The player decodes a substitution cipher to reveal this sentence. Optionally provide hint words: clues shown alongside the puzzle, in format "word: hint" (one per line), where every letter of each word must already appear in the sentence. If the user specifies a topic instead of a sentence, generate an appropriate sentence first, then call this tool with it.
| Argument | Type | Description |
|---|---|---|
| message* | string | The secret sentence/message to encode as a cryptogram. Must contain at least 5 distinct letters. |
| language | string | Optional: Language for the cryptogram. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt. |
| hint_words | string | Optional: Hint words with clues shown next to the puzzle, format "word: hint" (one per line). Every letter in each word must already appear in the message. Words do not need to be uppercased. Keep hints brief, long hints take up too much space on the board. |
{
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "The secret sentence/message to encode as a cryptogram. Must contain at least 5 distinct letters."
},
"language": {
"type": "string",
"description": "Optional: Language for the cryptogram. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt."
},
"hint_words": {
"type": "string",
"description": "Optional: Hint words with clues shown next to the puzzle, format \"word: hint\" (one per line). Every letter in each word must already appear in the message. Words do not need to be uppercased. Keep hints brief, long hints take up too much space on the board."
}
}
}Create a word search puzzle URL. You must provide the list of words (no hints needed). The list must have between 3 and 30 words. If user specifies count/topic, generate appropriate words first, then call this tool with the words parameter.
| Argument | Type | Description |
|---|---|---|
| topic | string | Optional: Topic/theme for the word search. Only for reference. |
| words* | string | Plain list of words, one per line, separated by newlines. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters do not count towards length. Words do not need to be uppercased. |
| language | string | Optional: Language for the word search. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt. |
| word_count | integer | Optional: Number of words requested (3-30). Only for reference/validation. |
| allow_special_characters | boolean | Optional: Allow accented/special characters in the grid instead of stripping them to plain letters. |
{
"type": "object",
"required": [
"words"
],
"properties": {
"topic": {
"type": "string",
"description": "Optional: Topic/theme for the word search. Only for reference."
},
"words": {
"type": "string",
"description": "Plain list of words, one per line, separated by newlines. Must contain 3-30 lines. Each word must be 3-20 letters long. Non-alphabetic characters do not count towards length. Words do not need to be uppercased."
},
"language": {
"type": "string",
"description": "Optional: Language for the word search. Use the same language as the prompt. Please use ISO 639-1 codes: en, es, fr, de, pt."
},
"word_count": {
"type": "integer",
"maximum": 30,
"minimum": 3,
"description": "Optional: Number of words requested (3-30). Only for reference/validation."
},
"allow_special_characters": {
"type": "boolean",
"description": "Optional: Allow accented/special characters in the grid instead of stripping them to plain letters."
}
}
}