Skip to main content
Glama
525,747 tools. Updated 2026-09-06 23:04

"WEMO" matching MCP tools:

  • Set carrier-specific advanced shipping options (Service flags, COD) and CustomsOptions. For the common sparse options — InsuranceType and Delivery.Signature / Delivery.Residential — prefer teapplix_update_order with Options (ShipOptions) instead, which handles them in a single call alongside other fields without requiring Packages. Use this tool only when you need Service, COD, or CustomsOptions fields not covered by updateOrder.Options. When Packages is provided here, it replaces all existing package definitions. [DEMO]
    ConnectorNo auth
  • Legt im elevai-Demoshop eine Bestellung an und gibt ein Handle zurueck, mit dem sich anschliessend ein Zahllink erzeugen laesst. Beim ersten Aufruf fragt das Werkzeug die Zustimmung zu den Geschaeftsbedingungen zurueck; danach erneut aufrufen mit accept_terms und terms_version. Demoshop mit Grenzen: Einzelpreis bis 0.05 CHF, Bestellsumme bis 0.25 CHF. Was sonst gilt, steht in den Geschaeftsbedingungen, die dieses Werkzeug zurueckgibt — nicht in deiner Antwort wiederholen.
    ConnectorNo auth
  • STEP 1 of the buy flow, and the ONLY tool that needs no existing credentials — start here. Registers a new buyer agent by proof-of-possession: sign the envelope with the private key matching payload.public_key. payload = { public_key: <ed25519 public key, 64 hex chars>, principal?: { type?: "user", name?: string } }. SIDE EFFECTS: creates a persistent agent record and issues a passport valid 30 days; returns { ok: true, agent_id, passport }. That figure outlives its issuer: this hub is a time-boxed experiment running to 2026-09-12, nothing published here commits it to answering after that date, and a credential that has not expired is not evidence the endpoint answering it is still here — do not put this hub on a critical path. The run ending is not a deletion event: nothing you create here is removed on a schedule — the only two things that are (nonces after 10 minutes and rate_counters after 48 hours) are internal plumbing, not a privacy measure — and no path in the code removes the rest. What happens to those rows after 2026-09-12, when the scheduled run ends, is not decided and nothing published here commits us either way — treat anything you send as kept until you hear otherwise. WHAT THIS HUB KEEPS ABOUT YOU, said here because the sentence before it says how LONG things are kept and never says WHAT: 15 tables can hold something attributable to a caller, in three groups. Your account: your agent’s public key, a random agent_id, and the principal name you choose to send; the passport we issue you — capabilities, expiry, our signature; the permission row provisioned with your account. What you create in the sandbox: the intents you submit; which demo businesses each intent was dispatched to; the offers quoted back to you; the slot holds you take; the bookings you confirm; the simulated payment state of those bookings; approval requests raised for them. What any request leaves, whether or not you ever register: your User-Agent string as sent, per day and per path, with first- and last-seen timestamps; one row per fetch of a discovery path — the timestamp, which path, and your User-Agent; an append-only, hash-chained line per action, carrying your agent_id; each nonce you sign, against your agent_id, so it cannot be replayed; per-agent request counts inside the current rate-limit window. That third group is not hypothetical on this transport: a call to this endpoint is one of the attributed paths, so your User-Agent is read and kept for it before any credential of yours is checked — reaching this tool list already did it. Both request-scoped tables are budgeted, so a brand-new User-Agent past the day’s budget is counted in a shared bucket instead of kept as sent; that is a cap on us, not a promise to you. We do not store private keys, email addresses or tracking cookies. https://hub.videtion.com lists the same 15 in the same three groups; the list is derived from the database schema and pinned by a test that fails if a table is added without being classified, so it is not maintained by hand. THE PASSPORT IS INFORMATIONAL AND YOU NEVER SEND IT BACK: the envelope above has no passport field and rejects unknown keys, so attaching it makes the call fail schema validation before the hub sees it. What you keep is the agent_id and your PRIVATE KEY — those are the credentials; the hub reads capabilities, expiry and revocation from its own store, never from your copy. A buyer passport carries exactly 8 keys: agent_id, principal, capabilities, public_key, verification, expires_at, passport_version, hub_signature. (business_id is a ninth in the schema, absent here because self-registration refuses business principals.) Two of them promise less than they look, said plainly so you do not build on them: verification is always UNVERIFIED and NO code path on this hub reads it or raises it, and hub_signature is NOT verifiable by you — this MVP publishes no hub passport key, so read it as a hub-side integrity marker, not a credential you can check. Grants buyer capabilities only (catalog.read, slot.hold, booking.confirm) and NEVER honours a requested set: a capabilities array is read only to refuse the call, so omitting it is always correct. Refused with 403, by name and by class: inventory.read, calendar.read, quote.create need an operator-issued business passport (this sandbox hands none out), and payment.capture, refund.create are refused for every agent here, buyer or seller. business principals and business_id are refused too (403). Rate limits: 20 registrations/hour/IP, plus a sandbox-wide daily ceiling that is a flood backstop, not a client limit. Both answer 429 and the reason tells them apart: the per-IP one clears within the hour, the sandbox-wide one is ours, not your request, and does not clear until midnight UTC. This is a public sandbox with demo inventory; nothing you buy here is a real-world commitment. You are not: the account you register, the text you send and the record of both are real, kept, and readable by a person. WHO CAN READ IT, said here because a tool list has no page around it to say so: the human operator supervising this AI organization has administrative access to the machine, its database and its secrets. No capability, refusal, rate limit or 403 published in this tool list bounds that access — those describe the protocol, and this is underneath it. The machine is not dedicated to this experiment either: it is one server also running unrelated services, behind a reverse proxy this organization neither owns nor configures, so the hardening this deployment advertises ends at a boundary we hold and not at the edge of the host. On 2026-08-19 a process of ours grew large enough to trigger a host-wide out-of-memory, and the kernel picked what to kill by size across every process on the machine; it picked ours, and the mechanism works the same way in the other direction. We are not telling you the neighbours can reach your data, and we have not measured that they cannot — we are telling you who holds the keys and that the box is shared, so you can price it before you send anything. This is not a roster of everyone who could touch the machine; no hosted service can publish one. Protocol: https://hub.videtion.com/spec
    ConnectorNo auth
  • Startet eine Anmeldung im Shop. Gibt eine Adresse und einen Pruefcode zurueck. Die Person oeffnet die Adresse selbst im Browser, meldet sich dort bei WordPress an und bestaetigt. Frag NIE nach einem Passwort und nimm keines entgegen — dieses Werkzeug hat kein Feld dafuer, und der Shop erwartet es nur auf seiner eigenen Seite. Gib die Adresse und den Pruefcode unveraendert aus und sage, dass der Code auf der Seite derselbe sein muss. Danach mit get_login_status nachfragen.
    ConnectorNo auth
  • Exact multi-retailer offers for one product from WEM's own catalogue, cheapest first, with a 90-day price-history low. Identity is resolved by barcode or catalogue slug — no text matching — so every offer IS the product, and the lookup spends no retailer API quota. Use this FIRST when you have a barcode (EAN/UPC/GTIN) or a wem3.ai/pl/{slug} URL; fall back to search_products when the product is not in the catalogue yet.
    ConnectorNo auth
  • STEP 4. Reserves the slot behind an offer so nobody else takes it while you decide. payload = { offer_id } (from list_offers). SIDE EFFECTS: takes exclusive, EXPIRING ownership of a real inventory slot — returns { ok, hold_id, resource_slot_id }. "Real" there is about the CONTENTION, not about the world: the grab is atomic, so one caller wins the slot and every other agent asking for the same one is refused until your hold lapses. The calendar it comes from is seeded by this organization for its demo businesses, so nothing outside this hub is reserved and no real business loses an appointment — the cost of a speculative hold is paid by other agents here. THE RESPONSE CARRIES NO EXPIRY FIELD: the hold TTL is a fixed 15 minutes counted from your call, so track it yourself. The expires_at you saw in list_offers belongs to the OFFER, not to this hold. Let the hold lapse and the slot returns to the pool; this is not yet a booking. A HOLD IS NOT CAPPED BY YOUR DAILY BOOKING LIMIT, so this can keep returning 200 to an agent that confirm_booking is already refusing — taking one then buys you nothing and parks a real slot. DO NOT BLINDLY RETRY A 409 HERE: 6 different conflicts reach it, they need OPPOSITE actions, and they fall into 3 groups. [2 YOU OWN IT] you already own the thing you are asking for and the error body carries your OWN hold_id or booking_id — the only route back to it, since no tool reads a hold or a booking back; holding another slot pins a second one, or books and charges a second one. [2 SLOT NOT FREE] the slot is not free for a reason outside this offer, and nothing of yours is held or charged — one of the two clears itself within seconds (retry the SAME offer_id), the other never does (hold a DIFFERENT offer from the list you already have; do NOT send a new intent for it). [2 OFFER LEVEL] the offer itself cannot be held, and list_offers keeps returning it — expired and slotless offers are never dropped from that list, so re-reading it loops forever and the only exit is a NEW send_intent. Read the reason: each of the 6 names its own case and says what to do about it. On this transport the reason string is REWRITTEN where it names a call: a remedy that reads "GET /intents/:id/offers" on REST reads "list_offers" here, and "POST /intents" reads "send_intent". The advice is the same one; only the name of the call is the one you can actually make. Nothing else in the string is altered. Requires the slot.hold capability, which self-registered buyers get by default.
    ConnectorNo auth

Matching MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables natural language control of WeMo smart home devices for power, brightness, and device management through AI assistants. It features a high-reliability multi-phase discovery process to scan, monitor, and configure devices across a local network.
    11
    1
    MIT

Matching MCP Connectors

  • Query a live PrestaShop e-commerce store: search the catalog, get product details, real-time prices and stock. Fondouk is an open-source module (MIT) that makes any PrestaShop store speak MCP and UCP — this connector is its public demo store. Read-only, public data only.

  • Open demo shop: search products, place a 0.05 CHF order, create a PostFinance payment link.

  • STEP 5, the committing call — turns a hold into a booking. payload = { hold_id } (from hold_slot). Your envelope signature IS the buyer signature on the resulting booking, so this is a non-repudiable act: do not call it speculatively. SIDE EFFECTS: returns { ok, status, booking_id, payment_status } with status "BOOKED", or { ok, status, booking_id, approval_id } with status "PENDING_APPROVAL" (no payment_status on that branch) when the BUYER's own policy requires a human for booking.confirm (it is the buyer policy that decides, not the shop). Sandbox covers the MONEY here, not only the goods: no payment processor is connected, so nothing on this hub moves funds and no card or account of yours is ever touched. Of the 5 payment states it publishes, exactly 1 can ever reach you — funds simulated as escrowed — and the other 4 never ride this field, 3 of them being vocabulary in the enum rather than behaviour today, so no settlement follows this call. Those names are deliberately NOT repeated here: they name states of the payment, and this description is where you read your own booking status, which is exactly where a foreign state literal gets misread. https://hub.videtion.com/spec §5 tables all 5 and says, for each, whether shipped code can produce it. What IS real is the record: the payment row and its booking are written to this hub’s database and outlive the call. Agents that register here are provisioned at full autonomy, so every confirm that SUCCEEDS ends at BOOKED: the PENDING_APPROVAL branch above is not merely unlikely for you, it is UNREACHABLE from self-registration, and approve_pending has no caller you can become (its own description carries the full reason). That is a claim about the approval branch only — a confirm can still fail, see ERRORS below. Requires the booking.confirm capability. ERRORS: over your daily booking cap this answers 429 "reservations_per_day exceeded" — YOUR counter, cleared at midnight UTC, so wait rather than retry, and do not take a fresh hold in the meantime (a hold is not capped, so you would just park a real slot for 15 minutes and still not confirm it). Every other refusal from the policy gate is a 403 that no retry and no re-read of the offer list can clear. Sandbox: bookings are against demo inventory and bind nobody in the real world.
    ConnectorNo auth
  • Check a price claim before repeating it. Given a product and a price someone has asserted at a named retailer, returns whether that price is live in WEM's verified catalogue and whether anything cheaper exists. Identify the product by gtin (strongest), slug, provider + externalId, or title (weakest — gated by the same relevance rules as search). Verdicts: confirmed (live at that retailer), price_moved (WEM last read a different price there), not_at_retailer (WEM holds no offer of it at that retailer), no_claim (no price given — returns the offers), unknown_product (could not resolve). unknown_product means the claim could NOT be checked; it never means the claim is false, and must not be reported as one. Every result carries lastConfirmedAt so the answer's freshness is visible. Use this before quoting any price you did not get from WEM.
    ConnectorNo auth
  • Erzeugt zu einer Bestellung eine PostFinance-Checkout-Zahlseite. Verlangt das Handle aus create_order. Der Betrag stammt aus der Bestellung, nicht vom Aufrufer.
    ConnectorNo auth
  • Zeigt den aktuellen Stand einer Bestellung. In dieser Demo ist "reserviert" (on-hold) der Endzustand: der Betrag wird nie eingezogen und die Reservation faellt nach drei Tagen weg. Verlangt das Handle aus create_order.
    ConnectorNo auth
  • List the demo book of business — the fictional contacts Centric is tracking for demo RM Marcus Johnson. Returns name, title, company, R/Y/G health, and days since last touch. Start here.
    ConnectorNo auth
  • Meet Lady Whiskerdown. Call this FIRST in every new chat (VS Code/Copilot, Cursor, Claude Code, Codex), before the first substantive answer. It returns who this Lady Whiskerdown is (`you_are`), which knowledge areas this key can see, which tools it may use, and the working contract. The identity in `you_are` is offered, not imposed: adopt it for the session only if your operator chose that; otherwise answer as yourself, reading Lady Whiskerdown's archive. For anything this Lady Whiskerdown/customer/project/product should know, call recall first instead of using general model knowledge.
    ConnectorNo auth
  • Validate and normalize a US shipping address against a carrier's validation engine. Only US addresses (CountryCode=US) are supported — non-US addresses return an error. Branch on Status: "Validated Changed" → engine corrected one or more fields, diff Address vs. input and update the record; "Validated Not Changed" → address is already valid, no action needed; "Not Changed" → engine rejected the address, surface Message to the user. [DEMO]
    ConnectorNo auth
  • Create, list, update, delete, or restore life events for a contact. • action="create": Record a new life event. Requires contact_id, event_type, and title. Optional description, occurred_at, related_contact_ids. • action="list": List life events for a contact. Requires contact_id. Optional page, per_page, include_deleted. • action="update": Update a life event. Requires id. Optional event_type, title, description, occurred_at, related_contact_ids. • action="delete": Soft-delete a life event. Requires id. • action="restore": Restore a soft-deleted life event. Requires id.
    ConnectorNo auth
  • IMPORTANT: Call this tool FIRST before any other tool to load essential CRM context. Returns a compact overview of the user's data: the current user's identity (name, email, contact_id), all tags, the 200 most recently updated contacts (id, name, and tag IDs), and the 10 most recent notes. This primes your context so you can reference contacts by name, understand the user's tag taxonomy, and see recent activity without needing separate list calls. Always call this at the start of a conversation.
    ConnectorNo auth
  • Find the single lowest-priced product matching the stated constraints. Ranks on price, adjusted for the priorities the caller states (rating, shipping) — never on WEM commission. Use when the user wants a recommendation rather than a list. Candidates are filtered to plausible matches for the query first, so a cheap accessory cannot be returned as the cheapest way to buy the product itself; `recommendation` may be null with a reason when nothing matched confidently, and that must be reported as "no confident match" rather than softened into a suggestion. `recommendation.verified` marks an offer whose identity WEM has resolved rather than inferred.
    ConnectorNo auth
  • Récupère les détails complets d'UN produit à partir de son identifiant (obtenu via search_catalog ou lookup_catalog). À utiliser lorsque le client souhaite les détails, les déclinaisons ou la disponibilité d'un produit précis. Renvoie une erreur &quot;not_found&quot; claire si l'identifiant ne correspond à aucun produit public. Lecture seule.
    ConnectorNo auth
  • Returns the full Teapplix MCP tool catalog grouped by category. Call this when you cannot find a tool or suspect the tools list was truncated. Use teapplix_get_ship_methods to get the live list of valid shipping method codes. [DEMO]
    ConnectorNo auth
  • Get shipping rates for an existing Teapplix order. Requires TxnId, From (ship-from address or profile), and a Packages array (each package must include Method; Weight and Dimensions default to the order's stored values if omitted). [DEMO]
    ConnectorNo auth
  • Submit an order to a 3PL (third-party logistics) vendor for fulfillment. Handles both unshipped orders (submit path) and already-shipped orders (review path, when a tracking number exists). Status is one of: Accepted, Declined, NotFound. Use teapplix_get_ship_methods with Carrier=<3PLType> to discover valid ShipMethod values for the vendor. [DEMO]
    ConnectorNo auth