Get one listing
get_listingGet full public details (including the long description) of one approved listing by its id (cm_...).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
get_listingGet full public details (including the long description) of one approved listing by its id (cm_...).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe read (readOnlyHint=true, openWorldHint=false), so the bar is lower. The description still adds real behavior: only approved listings are returned, and the long description is included in the payload. It omits what happens for a missing/unapproved id, but the added constraints are genuine value beyond the annotations.
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?
One sentence, front-loaded with the action and payload scope, with the id requirement in a trailing parenthetical. No filler and nothing that could be cut without losing information.
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?
For a single-parameter read with no output schema, the description usefully previews the return content ('full public details including the long description') and constraints ('approved'). What's missing is error/empty behavior for unknown or non-approved ids; otherwise it is sufficient to call the tool correctly.
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?
Only one parameter at 0% schema description coverage, so the description must carry some load - and it does partially, calling out the 'cm_...' id form. However the schema's regex pattern already encodes that format, so the added meaning is thin and nothing is said about how to obtain a valid id.
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?
Specific verb+resource: fetches one listing by id, and it scopes the result to 'approved' listings and 'full public details including the long description'. That distinguishes it implicitly from search_listings (many results) and get_my_listing_status (status, not full detail), though it never names a sibling explicitly.
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?
Usage is implied by 'by its id' - you call it when you already have a listing id and want the full record. There is no explicit statement of when to prefer this over search_listings or get_my_listing_status, and no exclusion for unapproved or draft ids.
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.