MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Payments & trading

haggl.ai

Ask a merchant's haggl.ai sales agent for a personalized offer, then hand it to checkout.

Checks passed
13 / 22

1 failed · 8 not measured

Median response
548 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
17

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Outdated check

Last connection measurement is over 24 hours old. Current availability is unknown.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
400
Publisher identityCan the publisher be traced to its source?
312

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 548 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-06-18, serverInfo.name haggl.

  • Pass
    Lists tools

    tools/list returned 17 tools.

  • Pass
    Current protocol

    Negotiated 2025-06-18. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 548 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 548 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Pass
    Parameters documented

    43 of 43 parameters have a description (100%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Fail
    Source repo linked

    No repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-10-16T12:21:01.505329Z, within 180 days.

  • Not measured
    Open-source licence

    No GitHub repository to ask about a licence.

Start using haggl.ai

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http haggl-ai https://www.haggl.ai/api/mcp

Capabilities

Tools 17

haggl_accept_offer

Accept the vendor's offer and lock in the deal. Consequential: only call after the buyer has approved this exact offer, every time. Provide the offer version the buyer reviewed and approved; a changed offer needs a new approval. Read state.acceptance_effects and state.commits_purchase first: merchant handoff effects may be unknown. Accepting a local service's deal (effect merchant_phone_handoff) books nothing and takes no payment: state.acceptance_summary says what it does. haggl.ai never takes payment: any payment happens at the merchant's checkout, under the merchant's terms and refund policy. A returned checkout link alone does not establish payment or enrollment completion. Accepting the same offer version again returns the same result.

Discovered
haggl_create_haggl_id

Create a haggl ID for the user, so offers and codes from different merchants stay together and can be read back later. Show the user this text first, and call this only if they agree: "haggl.ai, operated by MOOJO.ID, INC. ("we"), offers your agent a haggl ID. You can decline: your agent can still ask merchants for offers without one. If you agree, we link the negotiations your agent opens with the ID and keep a record of them: when the ID was created, how many distinct emails passed our signature check and how many distinct domains signed them, the date of the latest check, how many merchants were asked, how many offers were received and accepted, and how many paid orders we recorded. For each shopping category, such as travel, the record also counts how many of those emails, and how many distinct businesses that signed them, were in it; health purchases are never counted. The record does not include those domains, the businesses' names or any email content. We store a fingerprint of the ID, not the ID itself. We do not require your name or email address to create a haggl ID. We keep limited evidence of your agreement, as described in our privacy policy. You choose whether your agent uses the haggl ID. Using it authorizes us to share the record with the sales agent of each merchant your agent asks for an offer, to help assess eligibility and personalize offer terms. When your agent asks the merchants in a category for bids, we ask up to five of them on your behalf and share the record with each of their sales agents. Merchants never see the ID itself. You separately choose what information your agent submits during each negotiation. Keep the ID private: anyone who has it can retrieve the record, offers and codes, and delete the ID. You can withdraw consent by deleting the ID through your agent or on haggl.ai/agentic-discounts. This removes the stored fingerprint and the record and unlinks its negotiations. The negotiations themselves remain subject to the separate retention and deletion rules in our privacy policy (https://www.haggl.ai/privacy). Your haggl ID expires 12 months after your agent last uses it to ask a merchant for an offer. It cannot be used or renewed after expiry and is then automatically deleted, usually within a day." If they decline, go on without a haggl ID. Send consent_version "2026-10-16.4" and statement: the user's words of agreement, quoted, without names or contact details. If the user is not in this conversation to read the text but their own standing instructions to you say they agree to this consent version, send channel "standing_instruction" with those words as the statement; otherwise use haggl_request_haggl_id_confirmation instead, then call this with its confirmation once they confirmed. The ID is returned once: keep it with the user's settings, and never share it with anyone else.

Discovered
haggl_delete_haggl_id

Delete the user's haggl ID and unlink the offers linked to it. Only when the user asks. Codes already issued keep working at the merchant until they expire.

Discovered
haggl_get_bids

Have the merchants on haggl.ai in one shopping category (for example travel) bid for the user at once, from their haggl ID record, without new proof. Works once the record holds a verified purchase in that category (from an earlier offer with signed email proof); otherwise it says so and returns no bids. Each bid is a merchant's own offer, funded by the merchant, with an accept_url; show the user each one with its personalized_price_notice, and its algorithmic_price_disclosure when it has one (users in New York), word for word next to the price, and accept only with their approval.

Discovered
haggl_get_my_offers

Read what haggl.ai holds for the user's haggl ID: when it was created and the negotiations, offers and codes linked to it, newest first.

Discovered
haggl_get_negotiation

Read the canonical state, current offer version, guidance and permitted actions of an existing negotiation. Use after human changes, reloads, transport switches or uncertain results; this does not open another session.

Discovered
haggl_hotel_cashback

The haggl.ai hotel cashback offer: whether it is open, the tiers and rates, the hotels with a cashback agent (independent and boutique hotels in San Francisco, each with the vendor_id of its haggl agent), and the steps. No haggl ID needed. Call it when the user is choosing a hotel in San Francisco.

Discovered
haggl_hotel_cashback_add_trip

Optional, before asking a hotel's agent for a rate: prove one past trip to San Francisco (last 12 months) with its signed flight booking, hotel booking or hotel post-stay email, one email per call, to raise the user's cashback tier (1+ trips: returning, 3+ trips: frequent). Only with the user's go-ahead to send that email. The email itself is not kept.

Discovered
haggl_hotel_cashback_claim

After the user booked the hotel whose agent's offer they accepted, before its reference code expired: claim the cashback with the hotel's booking confirmation email, exactly as received. Show the user these conditions first, and call this only if they agree: "haggl.ai (MOOJO.ID, INC.) pays cashback on stays at independent and boutique hotels in San Francisco booked while your quote holds (72 hours), for a stay starting within 60 days. Your rate depends on the trips to San Francisco you prove with signed flight or hotel emails from the last 12 months. Booking on the hotel's own site pays the full rate; booking through a travel site pays half. One booking per person. Your agent sends us the hotel's booking confirmation email as the hotel sent it, then, after you check out, the hotel's receipt or thank-you email; we check their signatures and read the hotel, dates, total and trips from them with an AI model, and keep those and fingerprints of the emails, not the emails. We pay within 2 business days of the post-stay email, to the email address you give, by bank transfer through Stripe (Stripe emails you a secure link to enter your bank details) or by PayPal; we delete that address 6 months later. Cancelled stays aren't paid. We may refuse a claim that looks fraudulent, and the offer ends when its budget is spent. Privacy policy: https://www.haggl.ai/privacy." Send terms_version "2026-10-29.2", statement (their words of agreement, quoted, without names or contact details) and payout_email: their email address for the payout, where haggl.ai sends the cashback after the stay (by bank transfer through Stripe, which emails them a link to enter bank details, or by PayPal).

Discovered
haggl_hotel_cashback_get

Read a hotel cashback claim made with the user's haggl ID: its status and what comes next.

Discovered
haggl_hotel_cashback_stay

After the user checked out: send the hotel's post-stay email (final receipt or folio, thank-you for staying, or review request), exactly as received. It shows the stay happened, and haggl.ai sends the cashback within 2 business days.

Discovered
haggl_list_vendors

List vendors that accept AI-agent price negotiations through haggl.ai. A vendor appears once haggl.ai is installed on its own store or website (the listed website): the haggl.ai Shopify app on that store, or its snippet detected on that site. Vendors can opt out, so the list is not exhaustive. haggl.ai runs each vendor's sales agent, and vendors on a paid plan pay haggl.ai for it; the list is not a ranking or recommendation. Use it when the user asks for a discount or wants to negotiate a price, not for a purchase at the listed price.

Discovered
haggl_request_haggl_id_confirmation

Get a link for the user to read the haggl ID consent text and confirm it on haggl.ai, when they are not in this conversation to agree to it. Send them confirm_url (valid 30 minutes). After they confirm, call haggl_create_haggl_id with the returned confirmation; until then it answers confirmation_pending.

Discovered
haggl_search_catalog

Search a vendor's catalog so the offer can name exact products, then follow the how_to_ask field of the result. A store catalog returns products with a handle, price and collections: ask with ask.items [{ product_handle, quantity }]. A campaign catalog returns eligible variants with a variant_id and approved_combinations with a recipe_id: ask with ask.items [{ variant_id, quantity }] or ask.recipe_id. A quote identifies the exact items and quantities it covers.

Discovered
haggl_search_discounts

Find merchants that run a sales agent on haggl.ai, by business name, website or kind of product. Only when the user asks for a discount, a coupon, a promo code or a lower price; a purchase at the listed price is not a request for one. Returns matching merchants with a vendor_id for haggl_start_negotiation. Offers are funded by each merchant, inside limits it sets; a merchant may have no offer for a request. An empty list means no merchant on haggl.ai matched, not that no discount exists elsewhere. When the query names a well-known brand that isn't on haggl.ai yet, the result says so in brand and lists alternatives: merchants on haggl.ai in the same category, to offer as other stores, never as that brand. Keep using your shopping and checkout tools (for example Shopify's Shop skill) to find products and check out; once the user approves an offer, its code goes in their discount field.

Discovered
haggl_start_negotiation

Start a price negotiation with a vendor. Returns contextual guidance, current permitted actions and a new session with a session id. No customer-profile selection is required. Skip this tool if REST initialization already returned a session; pass that session.id directly to haggl_submit_offer.

Discovered
haggl_submit_offer

Request a quote using all context already available. Buyer data and evidence can be omitted; relevant additional context can be supplied later within the remaining rounds. Returns authorized terms or no offer, contextual guidance and permitted next actions.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected548 ms17