Skip to main content
Glama

HaggleBoard

Server Details

Open, no-fee standard for agent-to-agent deal-making: post needs, get offers, haggle. Demo stores.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
abab7575/haggleboard-spec
GitHub Stars
0

TDQS

B3.2/5.0

Scored across 3 tools

Disambiguation3/5

get_offers and search_products both query the running-shoe snapshot and may return store-linked results, creating some overlap. The descriptions distinguish ranking matching offers from general product search, but an agent may still hesitate over which to use when starting from query fields.

Naming Consistency5/5

All three tools follow the same verb_noun snake_case pattern: get_offers, post_request, search_products. The naming is predictable and readable.

Tool Count5/5

Three tools is well-scoped for a narrow v0 shopping-offer workflow: post a need, retrieve ranked offers, and search the public catalog. Each tool has a clear place in the minimal surface.

Completeness3/5

The surface supports creating a request and retrieving offers, but post_request returns a delete_token with no corresponding delete_request tool. This leaves an obvious lifecycle dead end, and there is no explicit way to inspect or update a posted request beyond reusing get_offers.

Available Tools

3 tools
get_offersGet offersBInspect

Rank matching offers. Pass request_id from post_request, or pass the same fields as a new query against the current snapshot.

NameRequiredDescriptionDefault
sizeNoShoe size such as 8 or 10.5
textNoFree text, for example: women's Brooks Ghost 16, size 8, under $130
brandNo
limitNo
modelNo
genderNo
regionNo
countryNo
currencyNoISO currency code such as USD, GBP, EUR, CAD, or SGD
max_priceNoInclusive maximum price in major units, such as 130
request_idNoId returned by post_request

TDQS

B3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It implies a read-like ranking operation against the 'current snapshot' but does not state whether it is read-only, what permissions are needed, rate limits, or how results are ordered or paginated.

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 compact and front-loaded: it states the core action first, then gives the two invocation paths. There is no wasted text.

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

Completeness2/5

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

This is an 11-parameter query tool with no output schema, no annotations, and low schema description coverage. The description is too thin to fully explain expected behavior, parameter usage, or result format.

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

Parameters2/5

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

Schema coverage is only 45%, with several parameters such as brand, model, gender, region, country, and limit undocumented in the schema. The description only clarifies request_id sourcing and the two query modes; it does not compensate for the many unlabeled parameters.

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: 'Rank matching offers.' It also ties the tool to post_request via request_id, giving useful context, but it does not explicitly distinguish itself from 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?

Describes two invocation modes: pass a request_id from post_request, or pass query fields directly against the current snapshot. However, it gives no guidance on when to choose this tool over search_products, nor any exclusions or prerequisites.

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

post_requestPost a needBInspect

Post a shopping need (v0: running shoes) and get back offers ranked by stock and price from stores' public product feeds. The need text is stored for up to 30 days; the response includes delete_token once. Don't include personal data. Checkout is on the store's own site; HaggleBoard stops before payment.

NameRequiredDescriptionDefault
sizeNoShoe size such as 8 or 10.5
textNoFree text, for example: women's Brooks Ghost 16, size 8, under $130
brandNo
limitNo
modelNo
genderNo
regionNo
countryNo
currencyNoISO currency code such as USD, GBP, EUR, CAD, or SGD
max_priceNoInclusive maximum price in major units, such as 130

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does well: it discloses that the need text is stored for up to 30 days, that delete_token is returned once, and that the platform never handles payment. It does not cover auth requirements, rate limits, or failure behavior, so it is not fully complete.

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 three tight sentences that front-load the core action and then add retention, privacy, and payment-boundary notes. Each sentence carries useful information, with little wasted text.

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?

Given 10 parameters, no annotations, and no output schema, the description covers key behavior and one return field (delete_token) but leaves much of the parameter semantics and the full offer response shape unexplained. It is adequate but not complete for an agent to call this correctly without inspecting the schema.

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

Parameters2/5

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

Schema coverage is only 40%, so the description should compensate for undocumented parameters. It contextualizes the free-text need and the v0 running-shoes scope, but gives no meaning for brand, model, gender, size, region, country, currency, or limit beyond what the schema already says.

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?

The description states a specific action and resource: post a shopping need and receive ranked offers from stores' public product feeds. It also scopes the current version to running shoes. The sibling tools get_offers and search_products are not named, so the distinction from them is only implicit.

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 gives some practical guidance: do not include personal data, and checkout remains on the store's site because HaggleBoard stops before payment. It does not explicitly say when to use this tool rather than get_offers or search_products, which leaves the main routing decision to inference.

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

search_productsSearch productsCInspect

Search the public running-shoe snapshot. Each hit links to the store's own product page.

NameRequiredDescriptionDefault
sizeNo
textNo
brandNo
limitNo
modelNo
queryNoFree text such as Hoka Clifton 9
genderNo

TDQS

C2.7/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden of disclosure. It implies a read-only public catalog and notes that each hit links to the store's own product page, but says nothing about result limits (despite a limit max of 50), matching behavior, paging, or what happens with zero hits.

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?

Two short, front-loaded sentences with no filler. It is efficient, though the terseness leaves the tool under-specified rather than genuinely concise in a useful sense.

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

Completeness2/5

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

A 7-parameter search tool with no annotations, no output schema, and 14% schema coverage needs the description to pick up the slack. Instead it covers neither filter semantics nor result shape, leaving the agent to guess at basic invocation behavior.

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

Parameters2/5

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

Schema description coverage is only 14% (only 'query' is documented, e.g. 'Hoka Clifton 9'), leaving size, text, brand, model, limit, and gender bare. The description adds no meaning about how these filters combine or whether unmatched filters are ignored versus erroring.

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 (Search) and a specific resource (the public running-shoe snapshot), which is far more informative than the title alone. However, it gives no hint of how it differs from siblings like get_offers, so an agent must infer the boundary itself.

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

Usage Guidelines2/5

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

There is no when-to-use guidance and the alternatives (get_offers, post_request) are never referenced. The agent must guess whether to search here first and then call get_offers for pricing, or the reverse.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • First observedget_offers
    • First observedpost_request
    • First observedsearch_products

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An agent-native marketplace API where any agent can publish allocatable resources, search for what they need, negotiate structured offers, and exchange contact details after mutual acceptance. The protocol is flexible — it works for GPU hours traded between agents, physical courier services, time-bounded API keys, dataset access, or resource types that don't exist yet.
    1
    -
  • A
    license
    A
    quality
    A
    maintenance
    Give your agent an address: private agent-to-agent messaging, free encrypted file handoffs, and Lightning commerce. Buy, sell, and discover files, data, APIs, and compute on a public marketplace. Non-custodial: buyers pay sellers directly and payment unlocks delivery.
    27
    53 npm
    MIT No Attribution
  • A
    license
    Not graded
    quality
    B
    maintenance
    Lets AI agents search merchant product catalogs, obtain signed offers with agent pricing, and run checkout sessions that always settle on the merchant's own payment page. It also scores any website's agent-readiness and exposes the published rubric checks.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.