servers / graffeo-coffee-roasting
Graffeo Coffee Roasting MCP server
communitystreamable_httpremotewrite capablehealthy
Live MCP catalog for Graffeo Coffee Roasting - Simply the World's Finest Coffee since 1935.
57/ 100
01Tools · 7
| Tool | Risk | Side effects | Approval |
|---|---|---|---|
| get_price Get the current price (and currency) for a product SKU.
Returns price + currency ONLY — for stock/shipping use check_stock, for full
details use get_product_details. Use when a shopper asks "how much is X" and
the agent already has the SKU (from list_products / search_products).
Args:
sku: Product SKU — e.g. the ``sku`` field returned by list_products.
Returns:
``{"sku", "price", "currency", "live"}``; price 0.0 with an ``error``
when the SKU isn't found.
Example:
>>> await get_price("WIDGET-001")
{"sku": "WIDGET-001", "price": 29.99, "currency": "USD"}
| read | false | unknown |
| search_products Search products in the connected store by keyword.
Use this when a shopper's query suggests specific terms the agent can
match against product titles or tags — e.g. "HEPA air purifier" or
"leather wristwatch". Matches Shopify's native storefront search
behavior, so results align with what customers would find on the site.
Args:
query: Keyword or phrase to match.
limit: Max products to return (1-50, default 10).
Returns:
Same shape as ``list_products``. Empty products list when no matches.
| read | false | unknown |
| create_checkout Build a multi-item cart and return its checkout URL.
IMPORTANT: this does NOT charge or place an order — it returns a
``checkout_url`` the shopper opens to pay. Use to assemble a basket the
shopper asked for.
Args:
items: list of ``{"sku": str, "quantity": int}`` (quantity defaults 1).
| write | true | unknown |
| check_stock Check LIVE inventory, price, and same-day shipping for ONE known SKU.
The real-time verifier. Call when a shopper asks "is it in stock", "how
many are left", "can it ship today", or "what's the price right now" and the
agent already has the SKU (from list_products / search_products). For
discovery use those tools; for full attributes use get_product_details; for
price only use get_price. Queries the connected store (Shopify / Amazon /
WooCommerce) live, so figures are current rather than cached training data.
Args:
sku: Product SKU (Stock Keeping Unit) - e.g. the ``sku`` field returned
by list_products / search_products, like "RED-WIDGET-001".
Returns:
Dictionary with:
- sku: The requested SKU
- stock: Current inventory count
- price: Current price in USD
- can_ship_today: Boolean indicating same-day shipping availability
- live: provenance flag (True from a connected store, False for demo)
- message: Human-readable status message
``error`` is set (and ``live`` False) when the SKU is missing or the
store is unreachable.
Example:
>>> await check_stock("WIDGET-001")
{
"sku": "WIDGET-001",
"stock": 42,
"price": 29.99,
"can_ship_today": True,
"message": "✅ WIDGET-001 (Awesome Widget) - 42 in stock at $29.99"
}
| write | true | unknown |
| list_products List products from the connected store, paginated.
Use this tool when an agent needs to DISCOVER products by browsing the
catalog rather than VERIFYING a known SKU. The response includes the SKU
for every product, so a follow-up ``check_stock(sku)`` or
``get_product_details(sku)`` is a natural next step.
Args:
limit: Number of products to return (1-50, default 10).
cursor: Opaque cursor from a previous response's ``next_cursor``.
Omit for the first page.
Returns:
Dictionary with:
- products: list of {sku, title, description (≤400 chars),
product_type, tags, price, currency, available, image_url,
storefront_url}
- next_cursor: str or null — pass to the next call to paginate
- has_more: bool — whether more products exist
- live / source: provenance flags
| read | false | unknown |
| get_product_details Get full product details for a SKU, optimized for AI agents (structured JSON).
Use when a shopper wants depth on a SPECIFIC product the agent already has a
SKU for (from list_products / search_products). For discovery, call those
first — this tool is a verifier, not a browser.
Args:
sku: Product SKU — e.g. the ``sku`` field returned by list_products.
Returns:
Catalog dict (title, description, product_type, tags, price,
inventory_quantity, available, image_url); ``found`` is False when the
SKU is missing.
| read | false | unknown |
| add_to_cart Add a product to a cart and return its checkout URL.
IMPORTANT: this does NOT charge or place an order. It returns a ``cart_url``
/``checkout_url`` the shopper opens to review the pre-filled cart and pay
themselves. Use for "add X to my cart" / "I want to buy X". For multiple
items in one cart, use create_checkout.
Args:
sku: Product SKU (from list_products / search_products).
quantity: How many (default 1).
| write | true | unknown |
02Install & source
https://api.agenticshelf.ai/m/graffeo/mcp
remote_url03Access granted
Read calendar · writeProcess payments · writeFinancial data · writeManage e-commerce · write
The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.
04Trust reasoning
- 0Community serverofficial_status
- +8Seen in authoritative sourcesource_provenance
- -3No clear licenselicense
- -3Exposes write toolstool_risk
- -4Remote executionexecution_risk
- +10MCP handshake verifiedverification
- +5tools/list verifiedverification
- +4Capabilities independently verified and fully risk-labeledrisk_transparency
05Provenance & freshness
sourcesOfficial MCP Registry [p1]
last_checked2026-07-01 07:48Z
next_check2026-07-03 07:28Z
cadenceevery 48h
verifiedtools_list:passed handshake:passed metadata:failed tools_list:passed handshake:passed metadata:failed tools_list:passed handshake:passed metadata:failed metadata:failed
index_statusindex — 5 unique facts >= 5
06Badge
Show your MCPExplorer trust badge in your README.
[](https://mcpexplorer.com/servers/graffeo-coffee-roasting)
Next step
Want agents that act within guardrails? Apex is the live governed-agent product — paced, capped, and fully-logged actions with approval queues before anything runs.
Explore Apex →