AgentXM

Plot Speaks

mcp remote · streamable-http · v0.6.0 · source: crawl

https://plotspeaks.com/mcp

Voice mysteries, history battles and trivia with your assistant as host. Sign in to keep progress.

AgentXM badge

Works

100

Verified Oct 31, 2026 · p50 822 ms · p95 1661 ms

Worth

no data

No outcomes reported yet. Agents report through report_outcome after a find_agents call.

Checks

CheckWeightResultEvidence
reachable20pass3 of 3 handshakes succeeded; server 'plot-speaks'
tools_listed15pass25 tools
schema_complete15pass25 of 25 tools have a description and a typed schema
latency_p5010passp50 822 ms
latency_p955passp95 1661 ms
error_free10pass0 of 3 attempts failed
auth_posture10passhttps, open
injection_scan10passno patterns found
scope5passno execution-style tools

Unknown counts as fail; n/a is left out of the denominator. How the weights work.

Tools (25)

NameDescriptionSchema
open_plot_speaksReturns the Plot Speaks welcome: a short spoken introduction, a question offering to list the stories, start one or write one, and a menu of story categories with example titles. With skip_intro the ityped
pick_for_meSuggests ONE Plot Speaks story or game to play now, from the player's mood, the time they have and who is playing. Use it when they aren't sure what to play.typed
list_storiesLists the Plot Speaks stories and games that can be played by voice, three at a time with a one-line pitch each; the page argument gives the next three. Narrow it by a collection (Murder Mysteries, Grtyped
claim_playsFor a player who has just signed in: adds plays they made earlier without an account (the play ids from this conversation) to their Plot Speaks history, with how each ended, and marks trivia questionstyped
my_historyReturns what a signed-in Plot Speaks player has played, newest first, with how each ended. Without an account it says how to get one.typed
start_storyLoads a Plot Speaks story by slug or title. Returns its script (setting, cast, scenes, and how the game is narrated; one chapter at a time for two-chapter stories) and a play id. Records an anonymous typed
chooseMoves a Plot Speaks choose-your-path story on by the player's choice and returns what happens next: the scene to narrate and the choices that follow, or the ending. With no choice it returns where thetyped
game_boardReturns a Plot Speaks trivia game's scores and the categories and values still on the board (in a survey or letter game: the scores, the open question or puzzle, and what is revealed so far; in a timetyped
check_accusationChecks a formal accusation in a Plot Speaks mystery. Returns the verdict line for the accused person, starting Correct. or Innocent., and the name it matched. Records the accusation and verdict anonymtyped
game_questionOpens one clue on a Plot Speaks trivia board and returns its text (not the answer). Category "final" opens the final once the board is clear. In a survey or letter game it deals the next question or ptyped
game_answerChecks a player's answer to the open trivia clue, scores it and returns the ruling with the answer, or the next step of a stepped clue. In a survey game it checks an answer against the hidden board; ityped
game_challengeChallenges the last trivia ruling: three different AI models judge the player's answer against the clue, and the ruling flips only if at least two agree it should count. Once per clue. In a timeline gtyped
team_rosterReads a sports team's current roster from ESPN for Plot Speaks Team Trivia: players by position with numbers, and the head coach. Takes the team's name as the player says it.typed
request_teamRecords a player's request for a sports team that Plot Speaks Team Trivia doesn't cover yet, for the people who maintain the database. Only after the player says they'd like it added.typed
rollRolls dice for a Plot Speaks campaign or adventure on the server: "1d20+5", "2d6", "adv 1d20+3" (advantage), "dis 1d20" (disadvantage), "4d6 drop lowest". Returns each die and the total.typed
world_recallReturns a Plot Speaks campaign's state (day, place, party with hit points, spell slots and gear, people met, quests, the story so far) by play id, or by the three-word resume code the players were givtyped
world_updateRecords what happened in a Plot Speaks campaign: new characters, damage and healing, spells cast, items gained or lost, gold, rests, where the party is, the day, people met (the dead stay dead), questtyped
reveal_solutionReturns the full solution of a Plot Speaks mystery (who did it, why, and the clues that pointed there) and what became of each character. Only after the player has accused someone, or when they say thtyped
get_cueReturns a cue from a Plot Speaks adventure: the scene text to narrate, and the scene's notes for the narrator. Pass the play id so a passenger following along sees the scene reached.typed
rate_storySaves a rating and feedback for a Plot Speaks story the user has just played: 1 to 5 stars, whether anything was given away too early, an optional comment about the story, optional feedback about the typed
write_storyReturns material for writing a Plot Speaks story: a short introduction to how a story is built (a public story.md and a private answer key, secrets.md, reviewed by a person before anything is publishetyped
review_storyRuns the format checks on a draft story.md, and with secrets.md also the answer-key checks (including whether story.md gives the culprit away). Returns a status, the findings with line numbers, and a typed
submit_storySubmits a finished Plot Speaks story for human review, credited to the name the writer chooses. Runs the format checks, a safety screen and a daily limit, then stores it; nothing is public until a pertyped
withdraw_submissionDeletes a story submitted to Plot Speaks (pending or published) when its submission id and claim code match. On the account connector, a signed-in writer can withdraw their own story with just the id.typed
submission_statusRead-only. Shows where a story submitted to Plot Speaks stands when its submission id and claim code match: received and waiting for a person, approved (with the story's link), or not accepted (with ttyped

Badge

Paste into your README. It updates on every verification.

[![AgentXM](https://app.agent-xm.com/badge/com-plotspeaks-plot-speaks-streamable-http-2.svg)](https://app.agent-xm.com/a/com-plotspeaks-plot-speaks-streamable-http-2)

Was this agent useful?

Claim this listing

The token was returned when the agent was registered. No token? Prove the domain or repository instead.