Categories › Productivity & Office › Notes, docs & knowledge bases
Build, publish and analyze quizzes, polls, forms and personality tests. Riddle account required.
Remote server: your requests and data go to www.riddle.com. Claude Code: claude mcp add --transport http riddle https://www.riddle.com/creator/api/v3/mcp · Claude app: Settings → Connectors → Add custom connector.
The tools this server listed when we connected to it, in its own words.
media_upload_link — Creates a single-use link for uploading ONE media file into the media library. Call it when the user has a LOCAL file for a Riddle: this sermedia_delete — Deletes a file from the media library permanently, to clean up after yourself: an upload that turned out wrong, or a file the user no longerriddle_template_create — Stores an existing Riddle as a template of its project (or of the user, for a personal Riddle), so new Riddles can be created from it with rriddle_template_update — Changes a template's title and/or its gallery image and icon. Images: media_upload_link into the template's project, pass the reported "mediriddle_template_list — Lists the templates of a project (or your personal ones) - the ones made from your own Riddles with riddle_template_create, NOT Riddle's pubriddle_template_public_list — Lists Riddle's public templates - the ready-made ones every account has, as opposed to riddle_template_list's own ones. They are grouped by riddle_template_get — Reads one template, by default INCLUDING its build configuration - the same "build" shape riddle_get returns and riddle_builder_create accepriddle_template_use — Creates a new Riddle from a template as an unchanged copy of it - content, settings and design preset - recorded as a copy of the template'sriddle_tag_list — Lists the tags of a project as {items: [{id, name, count, bankCount}]}, unpaginated - the labels the Creator shows and riddle_list's "tags" riddle_tag_add — Puts a tag on Riddles - ONE assignment per Riddle, never the tag itself (riddle_tag_list reads the labels of a project, riddle_tag_remove tariddle_tag_remove — Takes a tag off Riddles - ONE assignment per Riddle (riddle_tag_add puts it on, riddle_tag_delete removes a label nothing carries). Untags oriddle_tag_delete — Deletes the TAG ITSELF from a project - the label, for good - and no Riddle, no question bank and no assignment. Rarely needed: untagging thping — A simple tool that returns "Pong". Can be used to test connectivity and authentication to the MCP.riddle_list — Returns a paginated list of Riddles. With the default scope "project" they come from a single project - use projectId to name it, or omit itriddle_get — Reads one Riddle - or several, with UUIDs - as the compact build-configuration envelope {uuid, type, modifiedAt, build, nextBlockId, warningriddle_get_embed_code — Gets the HTML embed code for a Riddle by its UUID. The code is returned regardless of publish state, but the URL it embeds will not serve thriddle_publish — Publishes one or many Riddles, or takes them off the web again with publish: false (there is no unpublish tool). A published Riddle's publicriddle_rename — Renames a Riddle with the specified UUID. Returns only the confirmation of the change (uuid, title, modified state), not the entire Riddle. riddle_delete — Deletes one or many Riddles. Pass UUID for one, or UUIDs (max 100) to clean up several at once - e.g. everything riddle_list returned with oriddle_move — Moves one or many Riddles into another project or into the personal project - and, given no destination, reports whether it could instead ofwhoami — Reports the current API key: the authenticated user ("userEmail"/"userName", the latter null if never set), the project/team on a project-scquestion_bank_create — Creates a new, empty question bank for the given Riddle type ("Quiz" or "Poll"). Add items with question_bank_item_add, then reference the rquestion_bank_list — Lists question banks. Scope "own" (the default) lists the banks of a project - the same ones the Creator shows; pass a projectId to look intquestion_bank_get — Retrieves one question bank by id: title, riddleType, tags, notes, its categories/blockTypes and whether it has unpublished changes. The itequestion_bank_rename — Sets the title of a question bank. The title is metadata rather than DRAFT content, so it takes effect immediately AND permanently, is unaffquestion_bank_update_notes — Replaces the plain-text maintainer notes of a question bank (never shown to participants) - the previous notes are overwritten entirely, notquestion_bank_duplicate — Copies a question bank and all of its items into a new, independent bank (editing one never affects the other) in projectId or the key's proquestion_bank_publish — Makes every item's draft content its published content - what a QuestionBank block of a live Riddle actually draws at view time - so the chaquestion_bank_item_add — Adds ONE new question/item to a question bank; nothing existing is changed (question_bank_item_update replaces an item, question_bank_item_dquestion_bank_item_update — Replaces the content of ONE existing question/item of a question bank entirely - not a merge: blockType, category, difficulty and columns muquestion_bank_discard_changes — Throws away every unpublished change to a question bank's items at once, resetting each of them to its last published content. Irreversible question_bank_delete — Deletes a question bank and every item it holds (its tags cleaned up exactly as question_bank_tag_remove does) - one item alone is question_question_bank_item_delete — Deletes ONE question/item of a question bank and touches nothing else. On a never-published item the delete is immediate and permanent; on aquestion_bank_get_items — Lists the items of a question bank - its DRAFT content by default, or its published items with published: true. Filter by search term, blockquestion_bank_tag_add — Adds a tag to a question bank, by tagName or tagId from riddle_tag_list - exactly one of the two, as riddle_tag_add does. Question bank tagsquestion_bank_tag_remove — Removes a tag from a question bank, by tagName or tagId from riddle_tag_list - exactly one of the two. Never creates anything: a tag the banpalette_get — Reads the palettes - colors, fonts, button styles, background settings - of a Riddle: every palette it can use (the ones inherited from the palette_customize — Changes the palette (colors, fonts, button styles, background) of ONE Riddle, as a path => value map, e.g. {"bgColor": "#ffffff", "font.nameintegration_list — Lists the Google Sheets and webhook integrations of a project as {items: [{id, type, name, connectedRiddles}]}. "name" is the value a build riddle_builder_create — Builds a new Riddle of any of the nine types from a build configuration: "type" says which kind (see that argument for what each one is and Not tested by KitScout yet. When our harness runs it, pros, cons and the tasks we tried appear here, with the date and evidence.