Skip to main content
Glama

Server Details

Clean product data from any URL. Schema.org + AI extraction. 200 free calls/month.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
laundromatic/shopgraph
GitHub Stars
3
Server Listing
ShopGraph

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 4 of 4 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: enrich_basic vs enrich_product differ in scope and cost, enrich_html uses raw HTML input, and score_product returns a score. No ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case (enrich_*, score_*), making it easy to infer functionality.

Tool Count5/5

With 4 tools, the set is well-scoped for product data enrichment and scoring, neither too sparse nor too bloated.

Completeness5/5

The tools cover basic extraction, comprehensive extraction, HTML-based extraction, and scoring, leaving no obvious gaps for the domain.

Available Tools

4 tools
enrich_basicA
Read-only
Inspect

Extract basic product attributes from a URL (name, price, brand, availability). Faster and cheaper than enrich_product. 50 free calls/month — no payment needed. Paid: $0.01 per call after free tier. Each field carries verification metadata in _shopgraph: provenance (field_method — which source/tier produced it: schema_org, llm, or hybrid), freshness (field_freshness — recency + volatility_class, for volatile fields like price & availability), and abstain (a field is null when ShopGraph cannot verify it on the page). Rely on provenance, freshness, and the abstain signal to decide what to trust.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesProduct page URL to extract data from
formatNoOutput format. "ucp" returns UCP line_item format. Default: "default".default
force_refreshNoBypass cache entirely. Always triggers live extraction. Costs 3x credits.
include_scoreNoInclude agent-readiness score in response.
payment_method_idNoStripe payment method ID for MPP payment
minimum_confidenceNoAuto-refresh if any cached field's DECAYED confidence falls below this threshold. Costs 2x credits when refresh triggers, 0.25x on cache hit.
strict_confidence_thresholdNoFields below this confidence will be nulled with explanation. Default: off.
Behavior5/5

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

Annotations declare readOnlyHint and openWorldHint, and the description adds rich behavioral context beyond them: it explains the _shopgraph metadata with provenance, freshness, and abstain fields, and explains how null values indicate verification failure. This gives the agent a clear model of what the tool returns and how to interpret trustworthiness, without contradicting 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 tight and well-structured: purpose in the first sentence, cost details in the second and third, and data quality metadata in the fourth. Every sentence contributes new information, with no redundancy or filler.

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?

Given the tool has 7 parameters and no output schema, the description covers essential context: the output's verification metadata, nulling behavior for unverifiable fields, and pricing. It could mention response structure in more detail, but the description is sufficiently complete for an agent to understand and trust the 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?

Schema coverage is 100%, so parameters are fully documented in the schema. The description does not add parameter-specific details, but it does explain the overall output metadata (field_method, field_freshness, abstain) which helps understand the meaning of confidence-related parameters. This is baseline for high coverage.

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 uses a specific verb 'Extract' with a clear resource 'basic product attributes from a URL' and lists the exact fields (name, price, brand, availability). It distinguishes itself from the sibling enrich_product by explicitly noting it is 'Faster and cheaper', making the tool's purpose unambiguous.

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 description provides clear context for when to use the tool by comparing with enrich_product ('Faster and cheaper') and mentioning the free tier/payment model. It doesn't explicitly state when not to use it or name all sibling alternatives, but the guidance is sufficient for basic selection decisions.

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

enrich_htmlA
Read-only
Inspect

Extract product data from raw HTML you already have (no HTTP fetch needed). Ideal when using Bright Data, Firecrawl, or any scraping API — pipe the HTML through ShopGraph for structured product data. Uses schema.org + LLM fallback. Costs $0.02 per call (cached results are free). Each field carries verification metadata in _shopgraph: provenance (field_method — which source/tier produced it: schema_org, llm, or hybrid), freshness (field_freshness — recency + volatility_class, for volatile fields like price & availability), and abstain (a field is null when ShopGraph cannot verify it on the page). Rely on provenance, freshness, and the abstain signal to decide what to trust.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesOriginal URL of the page (used for context and caching)
htmlYesRaw HTML content of the product page
formatNoOutput format. "ucp" returns UCP line_item format. Default: "default".default
force_refreshNoBypass cache entirely. Always triggers live extraction. Costs 3x credits.
include_scoreNoInclude agent-readiness score in response.
payment_method_idNoStripe payment method ID for MPP payment
minimum_confidenceNoAuto-refresh if any cached field's DECAYED confidence falls below this threshold.
strict_confidence_thresholdNoFields below this confidence will be nulled with explanation. Default: off.
Behavior5/5

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

The annotations declare readOnlyHint and openWorldHint, but the description adds significant behavioral context: cost per call, caching behavior, the schema.org + LLM dual-extraction strategy, and the _shopgraph verification metadata (provenance, freshness, abstain). This goes far beyond the structured annotations and helps an agent understand trustworthiness of results.

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 moderately long but front-loaded with a clear purpose sentence, then elaborates on usage, cost, and metadata. Every sentence adds value, though the metadata explanation is dense and may take a couple reads.

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

Completeness3/5

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

The description thoroughly explains the tool's verification metadata and cost model, but since there is no output schema, it leaves the actual product fields vague ('structured product data' with only price and availability as examples). An agent may not know what fields to expect. This is a notable gap given the lack of an output schema.

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?

All 8 parameters have descriptions in the schema, so the baseline is 3. The description adds context about caching and costs that informs force_refresh and minimum_confidence, and the mention of 'abstain' explains null field behavior, which aligns with confidence-related params. This is enough to elevate slightly beyond 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 extracts product data from raw HTML and distinguishes itself by noting 'no HTTP fetch needed', positioning it as a post-scraping enrichment step. It also mentions the use of schema.org + LLM fallback, making its function specific.

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 description explicitly says 'Ideal when using Bright Data, Firecrawl, or any scraping API — pipe the HTML through ShopGraph for structured product data', providing clear context for when to use this tool. While it doesn't name alternative tools or exclusions, the 'raw HTML you already have' phrasing implies it is for pre-fetched content.

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

enrich_productA
Read-only
Inspect

Extract comprehensive product data from a URL including name, price, brand, images, availability, and more. Uses schema.org structured data when available, with LLM fallback. Costs $0.02 per call (cached results are free). Each field carries verification metadata in _shopgraph: provenance (field_method — which source/tier produced it: schema_org, llm, or hybrid), freshness (field_freshness — recency + volatility_class, for volatile fields like price & availability), and abstain (a field is null when ShopGraph cannot verify it on the page). Rely on provenance, freshness, and the abstain signal to decide what to trust.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesProduct page URL to extract data from
formatNoOutput format. "ucp" returns UCP line_item format. Default: "default".default
force_refreshNoBypass cache entirely. Always triggers live extraction. Costs 3x credits.
include_scoreNoInclude agent-readiness score in response.
payment_method_idNoStripe payment method ID for MPP payment
minimum_confidenceNoAuto-refresh if any cached field's DECAYED confidence falls below this threshold. Costs 2x credits when refresh triggers, 0.25x on cache hit.
strict_confidence_thresholdNoFields below this confidence will be nulled with explanation. Default: off.
Behavior5/5

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

Beyond the annotations (readOnlyHint, openWorldHint), the description discloses significant behavioral traits: LLM fallback, cost structure (including free cached results), cache bypass implications, and detailed metadata about provenance, freshness, and abstention. This far exceeds annotations and adds important trust-related context.

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 dense but well-structured: it front-loads the core purpose, then covers cost, metadata, and trust signals in separate clauses. It is longer than average, but every sentence contributes meaningful information, so it earns a 4 rather than a 3.

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?

With 7 parameters and no output schema, the description does a good job explaining the nature of the response (product fields plus _shopgraph metadata). However, it does not enumerate the complete set of returned fields or provide explicit output structure examples, leaving some ambiguity for an agent.

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 coverage is 100%, so the baseline is 3. The description adds value by explaining cost implications (e.g., free cache, 3x for force_refresh, 2x for minimum_confidence triggers) and the role of verification metadata, which helps agents reason about parameter trade-offs beyond schema descriptions.

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 it extracts comprehensive product data from a URL, listing specific fields (name, price, brand, images, availability). It distinguishes itself from siblings like enrich_basic by emphasizing comprehensiveness and the use of schema.org plus LLM fallback.

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 description provides strong contextual guidance: it mentions cost per call, caching behavior, and the methodology (schema.org with LLM fallback). However, it does not explicitly name alternatives or state when not to use this tool versus enrich_basic or enrich_html, 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.

score_productA
Read-only
Inspect

Extract product data and return agent-readiness score (0-100). Scores structured data completeness, semantic richness, UCP compatibility, pricing clarity, and inventory signals. Full scoring breakdown included.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesProduct page URL to extract and score
formatNoOutput format. "ucp" returns UCP line_item format. Default: "default".default
payment_method_idNoStripe payment method ID for MPP payment
strict_confidence_thresholdNoFields below this confidence will be nulled with explanation. Default: off.
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, and the description adds meaningful context: the scoring dimensions and the fact that a full breakdown is included. It does not, however, disclose that payment_method_id may trigger a monetary charge (MPP payment), which is a behavioral aspect not covered by annotations—yet this does not rise to a contradiction.

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?

Three concise sentences: the first defines the action and result, the second details the scoring criteria, and the third states the output includes a full breakdown. Every sentence earns its place, and the most critical purpose information is front-loaded.

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

Completeness3/5

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

The description explains the tool's input and high-level output, but with no output schema it does not describe the exact return structure beyond 'full scoring breakdown'. It also omits any mention of the payment-related behavior and error conditions, leaving some ambiguity for an agent invoking this 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?

Schema description coverage is 100%, so the schema already documents all four parameters. The description adds macro-context (what the score measures) but does not add per-parameter detail beyond what the schema provides, so the 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 states a specific verb ('Extract product data and return agent-readiness score') and clearly distinguishes this from sibling enrichment tools by emphasizing scoring rather than enrichment. It also specifies the score range and the exact criteria being measured, making the tool's purpose unmistakable.

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 description clearly implies when to use this tool (when an agent-readiness score is needed) and provides the domain of application. However, it does not explicitly contrast it with sibling tools like enrich_basic or enrich_product, nor does it state when not to use it, so it stops short of full guidance.

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!

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Real Amazon (US, UK, DE, CA, AU) & Walmart shopping data for AI assistants: ranked product shortlists, current prices, live stock, real ratings, and price/BSR history from a 17M+ product warehouse. Free hosted endpoint, no signup — 30 queries a day.
    3
    MIT
  • F
    license
    -
    quality
    B
    maintenance
    Enables AI agents to extract structured JSON data from web pages using presets or custom JSON schemas, with confidence scores and source snippets, paid per call via USDC on Base.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.