Skip to main content
Glama

独行录 / opcmenu

上架/下架我的产品

set_product_status
Idempotent

登录;把我的产品在「已发布 ⇄ 已下架」之间切换(仅这两个状态互切,其余状态由系统管理)。先用 get_my_products 拿 productId 和当前 status。

Input Schema

NameRequiredDescriptionDefault
statusYes目标状态
productIdYes产品 id

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare idempotentHint=true and destructiveHint=false, so the description's job is to add context, and it does: an auth requirement (登录) and a hard state-machine constraint that only PUBLISHED⇄ARCHIVED transitions are permitted. It does not spell out the effect of archiving on visibility/listing, which would have made this a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, each earning its place: the first states the operation and its constraint, the second states the prerequisite. The 「已发布 ⇄ 已下架」 notation front-loads the core limitation rather than burying it.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter toggle with full schema coverage, annotations, and no output schema, the definition covers auth, prerequisite lookup, and the state constraint — everything needed to invoke it correctly. Only the post-toggle side effect (listing visibility after archiving) is left implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the status enum already documents the two legal values, so the schema carries parameter semantics. The description adds the useful provenance note that productId (and current status) should come from get_my_products, but adds no format or validation detail beyond that, which lands at the documented baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (toggle my product between PUBLISHED and ARCHIVED) and immediately bounds the scope: only these two states are switchable, everything else is system-managed. That distinguishes it cleanly from siblings like update_my_product, create_product, and archive_my_company without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit prerequisite workflow — call get_my_products first to obtain productId and the current status — and states the boundary that other statuses cannot be set here. It stops short of naming which tool to use for other product edits (e.g. update_my_product), so the alternative-routing is only partially covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources