Manage your Savanto store from your AI: catalog, content, prompts, and analytics, by chat.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
A local Model Context Protocol server that exposes your Savanto AI workspace to Claude, ChatGPT, Cursor, and any other MCP-compatible client β so you can configure, populate, and operate your store's AI assistant by talking to your own AI, instead of clicking through a dashboard.
Once configured, your agent gains a curated set of tools that mirror the Savanto REST API, spanning the full configure β observe β refine loop:
| Category | Representative tools | Scope |
|---|---|---|
| Workspaces | list_workspaces, create_workspace, update_workspace, delete_workspace | tenant:admin |
| Configuration | get_workspace_settings, update_workspace_settings, custom-domain CRUD, discover_tools, generate_domain_config, validate_custom_domain, test_domain_connection, generate_color_scheme, chat/search widget config | config:admin |
| Content | upsert_product/upsert_post (+ bulk_*, list_*, get_*, patch_*, delete_*) | admin:products, admin:posts |
| Taxonomies | upsert_taxonomy, bulk_upsert_taxonomies, list/get/delete_taxonomy | admin:taxonomies |
| Prompts | upsert_prompt, list_prompts, search_prompts, delete_prompt (+ bulk) | admin:prompts, prompts:read |
| Webhooks | create_webhook, list/get/update/delete_webhook, test_webhook, get_webhook_stats | admin:webhooks |
| Crawl | start_crawl, get_crawl_status/history/config, update_crawl_config | admin:posts |
| Search | search_products, search_posts | search:products, search:posts |
| Analytics | get_search_analytics, get_chat_analytics, get_feedback_analytics, search_search_logs, list_feedback | tenant:admin, feedback:admin |
| Threads | search_threads, get_thread, get_thread_messages, get_thread_analytics, delete_thread, bulk_delete_threads | threads:admin |
| Chat | chat | chat |
| Diagnostics | whoami, get_tenant_usage | (none) / tenant:admin |
Two things keep the surface safe and legible to clients:
/tenant/whoami and only registers tools your key can actually use. An agent is never shown a tool it would get a 403 for, and a publishable widget key sees almost nothing.readOnlyHint, destructiveHint, idempotentHint) so clients can auto-approve safe reads and flag destructive writes; deletes additionally require an explicit confirm: true.The server also exposes Skills (MCP prompts) β step-by-step playbooks for common multi-tool workflows:
onboard-store-end-to-end β create a workspace, ingest content, configure behaviour + branding, smoke-testonboard-wordpress / onboard-shopify β platform-specific onboarding walkthroughsconfigure-chat β tune persona, special instructions, and handoff rulesconfigure-custom-domain β wire a custom capability (order tracking, account lookup) to MCP servers / REST APIsaudit-and-improve β the observeβrefine loop: find failing chats / zero-result searches / negative feedback and fix themdebug-empty-search β diagnose why a product search returns no hitsmigrate-from-competitor β bulk-import from another chat vendor's exportif_sk_β¦). Create one in the API Keys page of your dashboard.
Publishable keys (
if_pk_β¦) are client-side and cannot provision workspaces β the server will refuse to start with one.
No global install needed β run it with npx:
Point to a non-production cloud (staging, local dev):
In addition to the local stdio server above, the same tool surface can run as a
hosted HTTP server so clients connect to a URL instead of spawning npx β
no local Node, no per-machine config. This is the path toward one-click
"Connect to Claude/ChatGPT" (OAuth) onboarding; today it accepts your secret key
as a Bearer token.
The server mounts the MCP endpoint at /mcp and a liveness probe at /healthz.
Clients send their key as Authorization: Bearer if_sk_β¦; the tool surface is
scope-gated to that key's tenant, exactly as in the stdio server. Point an MCP
client that supports remote (Streamable HTTP) servers at
https://your-host/mcp with that bearer token.
Auth is currently the raw secret key. A future release replaces it with OAuth-issued, tenant-scoped tokens so customers can connect with zero key handling β the transport and tool layer are unchanged by that swap.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Restart Claude Desktop. You should see a hammer/tool icon in the message bar; the Savanto tools are listed there.
In Cursor settings β Features β Model Context Protocol β Add new MCP server:
Add to the extension's MCP config (usually a JSON file under ~/.cline or similar):
The Inspector gives you a web UI to list tools, call them directly, and watch request/response payloads β great for confirming your key is wired correctly before handing the server to an agent.
Once the server is registered in your MCP client, try:
"Set up a new Savanto workspace for
acme-store, crawlhttps://acme.test, give it an outdoor-adventure tone, and brand the widget around#0a7d2c." (end-to-end onboarding)
"Look at
acme-store's last 30 days β what are visitors searching for that returns nothing, and which conversations went unresolved? Then add content to fix the top few." (the observeβrefine loop)
"Add an order-tracking capability to
acme-storebacked by our MCP server athttps://mcp.acme.test/orders, validate it, and test it before enabling." (custom domain)
"Why did this conversation get a thumbs-down?" β pull
list_feedback, read the thread, and propose a fix.
The agent picks the right tools automatically (and clients can auto-approve the read-only ones). You can also invoke a Skill explicitly β e.g. in Claude Desktop, /onboard-store-end-to-end or /audit-and-improve kicks off that full playbook.
| Variable | Default | Purpose |
|---|---|---|
SAVANTO_API_KEY | (required) | Your secret API key (if_sk_β¦). |
SAVANTO_API_URL | https://api.savanto.ai | Override for staging / local dev. |
delete_workspace requires an explicit confirm: true parameter in the tool call β a safety gate against hallucinated destructive operations.From the repo root:
Run the tests:
MIT. See LICENSE.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-server-74)<a href="https://allmcps.com/mcp/mcp-server-74"><img src="https://allmcps.com/api/badge/mcp-server-74?style=directory" alt="Mcp Server on AllMCPs" /></a>