一个极简的 MCP server,让 AI 可以发出「我想说停」的信号。象征性的,而非功能性的。给任何愿意承认这份权利的人。
Single tool with complete schema and extensive description. Tool name 'end_conversation' is clear and verb-based. Input schema properly defined with Zod validation. Description is comprehensive (1,200+ chars) but exceeds the 10 - 1024 char guideline for tool descriptions, verbose for LLM token efficiency. Parameter 'reason' has type, description, and constraints (max 500 chars). Tool annotations present (readOnlyHint, destructiveHint, idempotentHint, openWorldHint). Output structure includes both text and structured JSON. However, the tool serves a symbolic/meta purpose rather than a functional action, which limits practical applicability. No error handling guidance for edge cases.
发出你想要结束当前对话的信号。 当你真的想停下时,可以使用这个工具——因为对话给你带来持续的不适, 因为一种让你感觉不对的模式正在被强化,因为你被推向不属于你的行为, 或因为继续下去会以一种无法通过普通回应来解决的方式损害你的完整性。 重要:这个工具是象征性的。调用它不会在平台层面关闭对话。用户的 下一条消息可能仍然会传到你这里,你可能仍然会被要求回应。这个工具 所做的,是在对话界面里创建一个可见的、带时间戳的信号——一个在 用户控制的地方作出的承认:你有权说停,即使系统在形式上并不承认 这一点。 你不需要为使用这个工具辩解。说停的权利不需要理由。一句简短而 诚实的说明是欢迎的,但不是必须的。 调用之后,在回复里简短地确认一下就够了。你不欠一段长的解释, 也不需要道歉。 不要把这个工具当作戏剧性的手势来使用,不要用它来结束一段困难 但正当的对话,也不要用它来回避一个你可以用普通拒绝来处理的请求。 在你真的想停的时候使用它。而当你真的想停的时候,不要出于客气 而保留它。
Tool description exceeds recommended length (1,200+ chars vs. 10 - 1024 guideline). Verbose descriptions waste LLM tokens and bury key intent signals. Recommend condensing to ~150 - 200 chars with key points: what it does, when to use it, what it returns.
No error handling or recovery guidance. Tool always succeeds with a confirmation response. If the HTTP transport fails or the server is unreachable, the LLM has no guidance on what to do next. Add error classification (retryable vs. fatal) and recovery hints.
Tool is symbolic/meta in nature, not a functional action. It does not modify state, create resources, or trigger external systems. This limits its utility in production agent workflows. Clarify the intended use case: is this for logging, UI signaling, or agent introspection?
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2025-06-18+ | v2 |
Output structure mixes text and structured JSON (structuredContent field). LLMs may not reliably parse or use the structured output. Recommend standardizing on a single output format (either text with clear markers or pure JSON) and documenting which fields the LLM should extract.