Skip to main content
Glama
Priceminder MCP Server

Priceminder MCP Server

by haidrau

map_competitors

Map or replace all competitor monitor IDs for a self-owned product, or pass an empty list to clear its mappings. Ensures every competitor ID belongs to the current user before writing.

Instructions

设置某自营商品的竞品映射。注意:这是覆盖式写入,会替换该自营商品原有的全部映射。

用户可能的问法:

  • "把这两个竞品挂到我的商品下面"

  • "我的商品对标竞品 101、102、103"

  • "清空这个商品的竞品映射"

参数:

  • self_owned_monitor_id: 自营商品监控 ID

  • competitor_monitor_ids: 竞品监控 ID 列表;传空列表表示清空映射

所有竞品 ID 必须属于当前用户,否则整次写入被拒绝(不会部分生效)。

Input Schema

NameRequiredDescriptionDefault
self_owned_monitor_idYes
competitor_monitor_idsYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so well: it discloses overwrite semantics (replaces all existing mappings), the empty-list clear operation, the ownership precondition, and atomic rejection with no partial writes. These are exactly the traits an agent needs before calling a destructive mutation.

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

Conciseness4/5

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

The overwrite warning is front-loaded and the param list is compact. The example-phrasings block is somewhat verbose but earns its place by aiding intent matching; overall structure is clean with no filler.

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

Completeness5/5

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

For a 2-parameter mutation with no annotations, the definition covers purpose, parameters, destructive scope, and failure mode. An output schema exists, so return values need not be described; nothing necessary is missing.

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

Parameters5/5

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

Schema coverage is 0%, and the description fully compensates by defining both parameters, including the non-obvious empty-list-equals-clear semantics that the schema's array type does not convey. This adds real meaning beyond the input schema.

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

Purpose4/5

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

States a specific verb and resource: setting the competitor mapping for one self-owned product. An agent knows exactly what mutation occurs. It does not name the read counterpart (get_competitor_mapping) to differentiate, which keeps it from a 5.

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?

The 'user phrasings' block gives concrete triggers (attach competitors, map against IDs 101/102/103, clear all mappings), which maps natural-language intent to this tool. There is no explicit when-not or alternative routing, so it falls short of a 5.

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