Skip to main content
Glama

Server Details

Track prices & price history on any online shop, with alerts and an API

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 6 of 6 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct and non-overlapping purpose: API status, job polling, price history, product data, search, and tracking. No two tools could be confused for the same action.

Naming Consistency4/5

Most tools follow a 'get_' prefix, but 'search_products' and 'track_product' deviate. All use lowercase snake_case, so the pattern is largely clear and predictable.

Tool Count5/5

Six tools cover the core operations of a price tracking API without unnecessary bloat. The count is well-scoped for the domain.

Completeness5/5

The tool set covers the main lifecycle: track a product, poll job status, retrieve product data and history, search the catalog, and check API health. No obvious gaps.

Available Tools

6 tools
get_api_statusGet API statusA
Read-onlyIdempotent
Inspect

Check whether the Pricewatcha public API is available. Returns health and discovery metadata. On failure, returns a structured error object with fields error.code, error.message, error.http_status, error.retry_recommended, and error.retry_after_seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
apiYes
healthYes
base_urlYes
Behavior4/5

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

Annotations already declare safe read-only behavior. Description adds specific error response structure and mentions health/discovery metadata, providing useful behavioral context beyond annotations.

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 clear sentences, front-loaded with purpose, no filler. Every sentence adds value.

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?

Fully describes tool behavior: availability check, normal return (health/discovery metadata), and failure (structured error). Output schema exists but description covers key aspects.

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

Parameters4/5

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

No parameters. Baseline score of 4 for 0-parameter tools as per guidelines.

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?

Clearly states checking API availability for the Pricewatcha API. Distinguishes from sibling tools which deal with jobs, prices, products, and tracking.

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?

Purpose is obvious: to check API health. No explicit when/not or alternatives, but context is clear. Siblings are all data operations, so no ambiguity.

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

get_job_statusGet job statusA
Read-onlyIdempotent
Inspect

Poll an async tracking job by job_id. Returns status (queued, running, completed, or failed). On completion, product is populated; on scrape failure, error is populated (HTTP 200 job lookup — not a transport error). On failure, returns a structured error object with fields error.code, error.message, error.http_status, error.retry_recommended, and error.retry_after_seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesJob ID from track_product

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
errorNo
job_idYes
statusYes
productNo
Behavior5/5

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

Annotations indicate idempotent and nondestructive reads. The description adds critical behavioral details: HTTP 200 always returned, error structure with code/message/http_status/retry fields, and distinction between transport and job failure.

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 description is four sentences, front-loaded with the core action, and each sentence adds distinct information (statuses, product/error population, error details). No redundant content.

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?

Given the presence of an output schema (not shown but indicated), the description adequately covers polling behavior, success/failure states, and error object details, making it complete for this polling tool.

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?

Input schema has 100% coverage, describing the single parameter. The description adds minimal extra meaning beyond 'poll by job_id', so baseline of 3 is appropriate.

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?

The description clearly states the tool polls an async tracking job by job ID and lists possible statuses. It specifies the resource (async tracking job) and verb (poll), making it distinct from siblings like 'get_api_status' or 'track_product'.

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

Usage Guidelines3/5

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

The description implies usage after obtaining a job_id from 'track_product' (noted in parameter), but does not explicitly state when to use or avoid this tool, nor does it mention alternatives.

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

get_price_historyGet price historyA
Read-onlyIdempotent
Inspect

Get historical prices, aggregates (low/high/average), trend, and data points for a product. On failure, returns a structured error object with fields error.code, error.message, error.http_status, error.retry_recommended, and error.retry_after_seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
product_idYesPublic product ID

Output Schema

ParametersJSON Schema
NameRequiredDescription
trendNo
previewNo
currencyYes
product_idYes
data_pointsYes
average_priceNo
current_priceNo
historical_lowNo
historical_highNo
Behavior4/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds value by explicitly detailing the error response structure, including fields like error.code and error.retry_after_seconds, which is not covered by annotations.

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?

The description is very concise with two sentences. The first sentence efficiently states the primary purpose, and the second adds critical error handling information without any unnecessary words.

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?

Given the tool's low complexity (one required parameter, existing output schema, comprehensive annotations), the description is complete. It covers what the tool returns and the error case, leaving no obvious gaps.

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?

The input schema has 100% description coverage for the only parameter (product_id). The description does not add additional meaning beyond what the schema already provides, so it meets the 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?

The description clearly states the tool retrieves historical prices, aggregates, trend, and data points for a product, using the specific verb 'Get' and resource 'price history'. It is distinct from sibling tools like get_product or search_products.

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

Usage Guidelines3/5

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

The description does not provide explicit guidance on when to use this tool versus alternatives. It only implies usage for obtaining price history, but lacks 'when not to use' or direct comparisons.

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

get_productGet productA
Read-onlyIdempotent
Inspect

Get structured product price intelligence by product_id (e.g. demo_iphone_15_pro or prod_xxx from a completed job). On failure, returns a structured error object with fields error.code, error.message, error.http_status, error.retry_recommended, and error.retry_after_seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
product_idYesPublic product ID

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameYes
shopYes
statusNo
previewNo
currencyYes
product_idYes
product_urlNo
current_priceNo
last_checked_atNo
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the tool is known to be safe. The description adds value by detailing the failure behavior (structured error object with fields like error.code and error.retry_after_seconds), which is useful for handling errors beyond what annotations provide.

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 sentences: one for core functionality with examples, one for error behavior. Every sentence adds value; no redundant or unclear phrasing. It is appropriately front-loaded.

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?

Given the simple one-parameter tool, the description covers the key aspects: what it does, how to use it (via examples), and what happens on failure. The presence of an output schema (not shown but flagged as existing) means return value details are not needed. The description is complete for the tool's complexity.

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?

The input schema covers 100% with a clear description ('Public product ID'), but the description enriches this by providing concrete examples of valid IDs (e.g., 'demo_iphone_15_pro' or 'prod_xxx from a completed job'), which aids the agent in understanding the expected format.

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?

The description clearly states the verb ('Get') and resource ('structured product price intelligence'), and provides specific examples of valid product_ids. It distinguishes itself from sibling tools by focusing on retrieving structured price intelligence for a single product by ID, which is not covered by get_job_status or search_products.

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

Usage Guidelines3/5

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

The description implies usage when a product_id is available (e.g., from a completed job), but it does not explicitly state when not to use this tool or suggest alternatives. There is no comparison to sibling tools like search_products for cases where the ID is unknown.

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

search_productsSearch productsA
Read-onlyIdempotent
Inspect

Search the full Pricewatcha product catalog by keyword (name, URL, shop/platform). Returns product-level data only — not user accounts or alert settings. On failure, returns a structured error object with fields error.code, error.message, error.http_status, error.retry_recommended, and error.retry_after_seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch keywords, e.g. iphone 15 pro

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
queryYes
resultsYes
Behavior4/5

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

Annotations already indicate read-only and idempotent behavior. Description adds valuable detail about error handling (structured error object) and clarifies product-level-only returns beyond annotations.

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 concise sentences: first defines purpose and scope, second covers error handling. No superfluous text, perfectly front-loaded.

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?

Given the simple tool structure (one param, good annotations, output schema), the description fully covers functionality, return data, and error behavior without gaps.

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

Parameters4/5

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

Schema covers the parameter with an example, but description adds that keywords can match name, URL, or shop/platform, providing additional context beyond the schema's generic description.

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?

Clearly states the tool searches the product catalog by keyword and explicitly excludes user accounts and alert settings, distinguishing it from siblings like get_product and track_product.

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?

Describes when to use (keyword search) and what it does not return, providing clear context. Lacks explicit alternatives or when-not-to-use, but the scope is well-defined.

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

track_productTrack productAInspect

Submit a public product URL for price tracking. Waits up to ~25s server-side; fast shops return status "completed" with product in one call. Slow jobs return status "running" with job_id — poll get_job_status. On failure, returns a structured error object with fields error.code, error.message, error.http_status, error.retry_recommended, and error.retry_after_seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesPublic product page URL from a supported shop

Output Schema

ParametersJSON Schema
NameRequiredDescription
hintNo
errorNo
job_idYes
statusYes
productNo
Behavior5/5

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

Beyond annotations (all false), the description discloses critical behavioral traits: server-side wait time (~25s), two response statuses, polling mechanism, and structured error output. This fully compensates for the lack of annotation information.

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?

The description is concise with four focused sentences. Each sentence adds essential information without redundancy. Front-loaded with the core action, then behavioral details.

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?

Given the single parameter, clear output schema (implied), and sibling tools, the description covers all necessary context: when to use, what happens in success/failure, and how to handle async results. No gaps identified.

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 coverage is 100% with the url parameter already having a clear description. The tool's description adds 'public product URL' which closely mirrors the schema description, providing marginal additional value. Baseline of 3 is appropriate.

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?

The description clearly states the specific action: 'Submit a public product URL for price tracking.' This distinguishes it from siblings like get_product or search_products, which are about retrieving existing data.

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

Usage Guidelines5/5

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

The description provides explicit guidance on when to use this tool and what to expect: explains two possible outcomes (fast/slow), instructs to poll get_job_status for slow jobs, and details error handling.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources