取消我的需求
cancel_need【需要登录】发起人取消自己的需求(终态,不可再重开/编辑)。只是暂时不想展示请用 unpublish_need(可逆),不要用本工具。
【失败语义】非本人 403 not_your_need;已完成 409 need_already_completed;已取消 409 need_closed。
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| needId | Yes | 需求 id |
cancel_need【需要登录】发起人取消自己的需求(终态,不可再重开/编辑)。只是暂时不想展示请用 unpublish_need(可逆),不要用本工具。
【失败语义】非本人 403 not_your_need;已完成 409 need_already_completed;已取消 409 need_closed。
| Name | Required | Description | Default |
|---|---|---|---|
| needId | Yes | 需求 id |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint=true, readOnlyHint=false, idempotentHint=true), the description adds key behavioral context: login is required, only the initiator can cancel, the operation is irreversible, and specific 403/409 failure cases are enumerated. This is strong disclosure for a destructive action.
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 description is compact and well-structured: the critical terminal/irreversible nature and login requirement are front-loaded, the alternative tool is clearly named, and failure semantics are separated in a concise block. Every sentence earns its place.
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?
Given a single required parameter, no output schema, and annotations already covering mutation/destruction, the description covers everything an agent needs: prerequisites, ownership restriction, irreversibility, alternatives, and error expectations. Nothing important 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% and the only parameter, needId, is already documented as '需求 id'. The description implies it must be the caller's own need, which adds a small semantic constraint, but it does not add substantial parameter-level detail beyond the schema.
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?
The description states a specific verb and resource: the initiator cancels their own need, and it clarifies this is a terminal state that cannot be reopened or edited. It also explicitly differentiates from unpublish_need, so the purpose is unambiguous even among many siblings.
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?
It gives an explicit when-to-use rule (canceling permanently) and a when-not-to-use rule with the alternative (temporarily hiding should use reversible unpublish_need). It also provides concrete failure semantics for common misuses, leaving little to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Each tool has a clearly documented purpose, often with explicit 'when to use' guidance and cross-references, making the vast majority easy to tell apart. A few clusters (get_my_brief, get_my_positioning, get_my_work, get_my_dispatch) and data-overlapping get_my_card vs get_my_profile require careful reading, but descriptions are detailed enough to prevent serious misselection.
The overwhelming majority follow snake_case verb_noun conventions (create_product, update_need, list_my_signups). Minor deviations include noun-only feed names (personalized_feed, random_feed), inconsistency between 'prefs' and 'preferences' in notification tools, and a mix of update_* and set_* for mutations, but the pattern remains predictable overall.
137 tools is an extreme mismatch for any MCP server, far exceeding the 50+ threshold for a score of 1. Even with a broad multi-domain platform, this volume makes tool selection and navigation impractical and heavily burdens the agent's context window.
The surface covers full lifecycles for needs, products, activities/signups, conversations, collaboration goals/tasks, dispatch, profile/onboarding, and supporting resources like companies, parks, policies, and ratings. Deliberate omissions (no user-post creation, no organizer profile editing via agent) are explicitly documented, so core workflows have no obvious dead ends.