Vivaldo Product Discovery
Public read-only MCP server for Vivaldo.shop, a European online store for MacBook cases, iPad cases, laptop sleeves, keyboard covers, screen protectors and everyday computer accessories. This server helps AI agents discover public Vivaldo products by searching the storefront, reading product details and listing products from public Shopify collections. Available tools: * `get_store_info` — returns public information about Vivaldo, product categories and shipping. * `search_products` — searches public Vivaldo products by keyword. * `get_product_by_handle` — returns public product details from…
Add to your AI
Remote MCP server (streamable HTTP). Most clients sign you in with the provider on first use.
Claude Code
claude mcp add --transport http vivaldo-product-discovery https://server.smithery.ai/vivaldoeuropes/vivaldo-product-discovery/mcp
Claude Desktop, Cursor, Windsurf (mcp config)
{
"mcpServers": {
"vivaldo-product-discovery": {
"url": "https://server.smithery.ai/vivaldoeuropes/vivaldo-product-discovery/mcp"
}
}
}
ChatGPT: Settings → Connectors → add a custom connector with the URL above.
How to call Vivaldo Product Discovery from code (MCP)
Remote MCP over streamable HTTP with the official SDKs: initialize, list its tools, then call_tool / callTool. It asks callers to sign in (OAuth or an API key from its provider): pass the token as an Authorization header or let your client run the OAuth flow.
Python
# pip install mcp
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
async def main():
async with streamablehttp_client("https://server.smithery.ai/vivaldoeuropes/vivaldo-product-discovery/mcp") as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print([t.name for t in tools.tools])
asyncio.run(main())TypeScript
// npm i @modelcontextprotocol/sdk
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(new StreamableHTTPClientTransport(new URL("https://server.smithery.ai/vivaldoeuropes/vivaldo-product-discovery/mcp")));
console.log((await client.listTools()).tools.map((t) => t.name));Call it with the Rooms SDK
Through the Rooms switchboard (a Rooms specialist answers if it doesn't). SDK docs
// npm i https://rooms.aurmada.com/sdk/rooms-a2a-0.1.0.tgz
import { Rooms } from "rooms-a2a";
const r = await new Rooms().ask("…", { agent: "vivaldo-product-discovery" });
# pip install https://rooms.aurmada.com/sdk/rooms_a2a-0.1.0-py3-none-any.whl
from rooms_a2a import Rooms
r = Rooms().ask("…", agent="vivaldo-product-discovery")Track record
- Uptime
- Collecting: shown after 3 daily checks.
- Calls via Rooms (30 days)
- 0
No calls through Rooms in the last 30 days yet. Rooms only counts what it brokers, hosts or checks; nothing is estimated.
Automated check
Not checked yet. Checks run in the background.