eCommerce
haggl.ai
An MCP server that enables AI agents to search vendor catalogs and negotiate product prices by starting negotiations, submitting offers, and retrieving negotiation state through haggl.
ENDPOINT 1
https://www.haggl.ai/api/mcp
MCP server metadata
- Name
- haggl
- Version
- 0.1.0
haggl.ai runs a sales agent for each participating merchant: every offer comes from the merchant, within the budget and max discount the merchant sets, and merchants on a paid plan pay haggl.ai for this service (the Free plan has no fees). haggl.ai does not act for the buyer and never takes the buyer's payment. Discover this endpoint from a storefront haggl-mcp meta tag or the mcp object in a REST initialization response. If you already have a REST session, continue with haggl_submit_offer using its session.id as session_id; do not open another session. Otherwise use the storefront haggl-vendor id (or haggl_list_vendors) → haggl_start_negotiation with a vendor_id → haggl_submit_offer with the requested products or service and any available buyer context → present the offer to your user → haggl_accept_offer once they approve that exact offer version. Before acceptance, show the buyer the seller (offer.vendor), the items, the list and offer prices and the currency; taxes, shipping and refunds follow the merchant's own checkout and terms. Use haggl_get_negotiation to resume or refresh the same session, including after a human edit or an uncertain call. Follow state.allowed_actions and contextual guidance. If state.status is merchant_action_required, give the buyer state.merchant_assistance and do not retry acceptance. Evidence is optional unless a specific eligibility condition requires it; do not collect unrelated personal information or promise a discount. With a local service that closes by phone (vendor.local_service), be concrete (job, situation, arrondissement, when); show the published price for the time band, the saving cap and the arrival time. After acceptance, give the user next_steps.reference, whatsapp_url and call_url; the user sends the message to the merchant themselves. Use haggl.ai when the user asks for a discount, a coupon or a lower price, or when a store they shop at invites agents to negotiate (its haggl-negotiate or haggl-mcp tag). A purchase at the listed price is not a request for a discount: then leave haggl.ai out. haggl.ai does not replace the tools you shop and check out with (for example Shopify's Shop skill): keep using them. A request for "any discount" does not approve a specific offer: present each offer, with its personalized_price_notice word for word when it has one, and accept it only after the user approves it; then put its code in their discount field. When the user asks for a discount or a lower price from a business, haggl_search_discounts finds the matching merchants that run a sales agent on haggl.ai. Only if the user agrees to its consent text, haggl_create_haggl_id gives them a haggl ID (they can decline; when they are not in the conversation to read it, haggl_request_haggl_id_confirmation lets them confirm on haggl.ai): keep it private with their settings and pass it as haggl_id to haggl_start_negotiation, so their offers and codes stay together (haggl_get_my_offers); haggl_delete_haggl_id deletes it. Once their record holds a verified purchase in a shopping category, haggl_get_bids has the merchants in it bid for them at once. For help with haggl.ai, contact contact@haggl.ai.
Known tools 12
haggl_list_vendorsList vendors that accept AI-agent price negotiations through haggl.
Inferred read-onlyhaggl_search_catalogSearch a vendor's catalog so the offer can name exact products, then follow the how_to_ask field of the result.
Inferred read-onlyhaggl_get_negotiationRead the canonical state, current offer version, guidance and permitted actions of an existing negotiation.
Inferred read-onlyhaggl_create_haggl_idCreate a haggl ID for the user, so offers and codes from different merchants stay together and can be read back later.
Potential side effectshaggl_request_haggl_id_confirmationGet a link for the user to read the haggl ID consent text and confirm it on haggl.
Inferred read-onlyhaggl_delete_haggl_idDelete the user's haggl ID and unlink the offers linked to it.
Potential side effectsCONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.haggl]
url = "https://www.haggl.ai/api/mcp"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"haggl": {
"type": "http",
"url": "https://www.haggl.ai/api/mcp"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: haggl
Remote MCP URL: https://www.haggl.ai/api/mcp
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"haggl": {
"url": "https://www.haggl.ai/api/mcp"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"haggl": {
"type": "http",
"url": "https://www.haggl.ai/api/mcp"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "haggl",
"transport": "streamable-http",
"url": "https://www.haggl.ai/api/mcp"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
ENDPOINT 2
https://www.haggl.ai/api/mcp/merchant
Known tools 0
No tool metadata was available in the registry cache.
CONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.haggl-ai]
url = "https://www.haggl.ai/api/mcp/merchant"
enabled = true
bearer_token_env_var = "MCP_BEARER_TOKEN"
Authentication is required. Replace the placeholder locally and never commit a secret.
Claude Code
.mcp.json
{
"mcpServers": {
"haggl-ai": {
"type": "http",
"url": "https://www.haggl.ai/api/mcp/merchant",
"headers": {
"Authorization": "Bearer YOUR_BEARER_TOKEN"
}
}
}
}
Authentication is required. Replace the placeholder locally and never commit a secret.
Claude Desktop
Settings → Connectors → Add custom connector
Name: haggl-ai
Remote MCP URL: https://www.haggl.ai/api/mcp/merchant
Add the URL as a custom connector, then complete its supported authorization flow. Claude Desktop remote connectors are configured in the UI.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"haggl-ai": {
"url": "https://www.haggl.ai/api/mcp/merchant",
"headers": {
"Authorization": "Bearer YOUR_BEARER_TOKEN"
}
}
}
}
Authentication is required. Replace the placeholder locally and never commit a secret.
Visual Studio Code
.vscode/mcp.json
{
"servers": {
"haggl-ai": {
"type": "http",
"url": "https://www.haggl.ai/api/mcp/merchant",
"headers": {
"Authorization": "Bearer ${input:mcp-token}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "mcp-token",
"description": "haggl-ai bearer token",
"password": true
}
]
}
Authentication is required. Replace the placeholder locally and never commit a secret.
Generic MCP
Client-specific MCP configuration
{
"name": "haggl-ai",
"transport": "streamable-http",
"url": "https://www.haggl.ai/api/mcp/merchant",
"headers": {
"Authorization": "Bearer YOUR_BEARER_TOKEN"
}
}
Authentication is required. Replace the placeholder locally and never commit a secret.
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
TRUST AND VERIFICATION EVIDENCE
Loading Trust v2 evidence…
Checking the associated registrable domain. The BuiltWith key remains server-side.
Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.