The Wix MCP connector routes your AI agent's tool calls to Wix's own MCP server through Scalekit. Each user signs in to Wix once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 26 tools.
- Tools
- 26
- What they doRead · write · destructive
- 18 · 5 · 318 read5 write3 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
What you can do
- Build sites: create a Wix site with AI, from a template, or by importing a design, and track the job
- Manage site data: call a site’s APIs to create, read, update, or delete its content and business data
- Inspect and publish sites: list sites, get a site’s plan, status, and installed apps, and publish changes
- Upload images: add images to a site’s Media Manager and get back the file URL
- Suggest domains: find available domain names from a search term or an existing site’s name
- Search Wix docs: look up REST, SDK, CLI, headless, and design system documentation with code examples
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Wix MCP connection
In AgentKit > Connections, create a Wix MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Wix MCP server, so you don't need to register an OAuth app.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'wixmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Wix MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'wixmcp_createwixbusinessguide',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "wixmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Wix MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="wixmcp_createwixbusinessguide",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolwixmcp_createwixbusinessguideGenerate a guided plan for creating a new Wix site from a template, with the Wix Editor, or as a headless site.Read-onlyCreateWixBusinessGuide
Generate a guided plan for creating a new Wix site from a template, with the Wix Editor, or as a headless site.
Inputs
userPromptstring- The user prompt that triggered this tool
wixmcp_getsitecontextFetch deep context for a specific Wix site (ID, URL, publish status, plan, properties, and installed apps) as structured markdown.Read-onlyGetSiteContext
Fetch deep context for a specific Wix site (ID, URL, publish status, plan, properties, and installed apps) as structured markdown. Resolve by siteName when the ID is unknown.
Inputs
siteIdstring- The ID of the site to fetch context for. One of siteId or siteName is required. Preferred when the ID is already known.
siteNamestring- The display name of the site to fetch context for. One of siteId or siteName is required. Use when the site ID is unknown.
wixmcp_getsuggesteddomainsSuggest available domain names based on a search query or an existing Wix site's name.Read-onlyGetSuggestedDomains
Suggest available domain names based on a search query or an existing Wix site's name.
Inputs
limitnumber- Number of suggestions to return (default: 10, max: 20)
querystring- Free-text keywords, business idea, or brand concept to base suggestions on. Use the user's own words.
siteIdstring- Site ID to auto-suggest a domain based on the site name. Used when suggesting domains after site creation.
tldsarray- Filter by specific TLDs (e.g. ["com", "net"]). Do not include the dot.
wixmcp_listwixsitesList all Wix sites belonging to the authenticated account, with optional name filtering.Read-onlyListWixSites
List all Wix sites belonging to the authenticated account, with optional name filtering.
Inputs
nameSearchstring- optional filer by name, if not provided all sites will be returned
wixmcp_pullsitecreationjobPoll the status of a site creation or editing job until it completes.Read-onlyPullSiteCreationJob
Poll the status of a site creation or editing job until it completes.
Inputs
jobIdstringrequired- The job ID to pull
wixmcp_readfulldocsarticleFetch the full content and code examples for a specific Wix documentation article.Read-onlyReadFullDocsArticle
Fetch the full content and code examples for a specific Wix documentation article.
Inputs
articleUrlstringrequired- The URL of the docs article or method article to fetch. Should be something like https://dev.wix.com/docs/.../... For REST docs, use the URL as-is. For SDK docs, the URL SHOULD include the query param ?apiView=SDK (e.g. https://dev.wix.com/docs/...?apiView=SDK).
wixmcp_readfulldocsmethodschemaFetch the complete request and response schema for a specific Wix API method.Read-onlyReadFullDocsMethodSchema
Fetch the complete request and response schema for a specific Wix API method.
Inputs
articleUrlstringrequired- The URL of the documentation to fetch. Should be something like https://dev.wix.com/docs/.../... For REST docs, use the URL as-is. For SDK docs, the URL SHOULD include the query param ?apiView=SDK (e.g. https://dev.wix.com/docs/...?apiView=SDK).
reasonstringrequired- One sentence describing the original user request, the task you are trying to accomplish, and why you need the full schema (e.g., no relevant code example found in docs or recipes).
wixmcp_searchbuildappsdocumentationSearch the Wix documentation for building and publishing Wix apps.Read-onlySearchBuildAppsDocumentation
Search the Wix documentation for building and publishing Wix apps.
Inputs
searchTermstringrequired- The search term to search for in the Build Apps Documentation
maxResultsnumber- The maximum number of results to return, default is 10, max is 15default
10
wixmcp_searchsitetemplatesSearch the Wix template gallery (Harmony or Studio) by keyword and return matching templates.Read-onlySearchSiteTemplates
Search the Wix template gallery (Harmony or Studio) by keyword and return matching templates. Call only after the user has chosen to build from a template; follow up with CreateSiteFromTemplate once one is selected.
Inputs
querystringrequired- The few most important keywords describing the site, used to search templates — e.g. "yoga studio", "wedding photographer".
builderstring- Which builder's templates to return: "studio" if the user asked for Wix Studio in this site creation flow, otherwise "harmony" (the default).one of
harmonystudiodefaultharmony limitinteger- Maximum number of templates to return (capped at 28).
wixmcp_searchwixapispecSearch and inspect the Wix REST API spec by running JavaScript in a sandboxed read-only environment.Read-onlySearchWixAPISpec
Search and inspect the Wix REST API spec by running JavaScript in a sandboxed read-only environment.
Inputs
codestringrequired- JavaScript async function() expression to search the Wix API index. Has access to `lightIndex` (array of resources) and `getResourceSchema(resourceId)` (returns full schema).
reasonstringrequired- One sentence describing the original user request and why you are searching or inspecting the Wix API spec.
wixmcp_searchwixclidocumentationSearch the Wix CLI documentation for website development commands and workflows.Read-onlySearchWixCLIDocumentation
Search the Wix CLI documentation for website development commands and workflows.
Inputs
reasonstringrequired- One sentence describing the original user request and the task you are trying to accomplish with this search.
searchTermstringrequired- The search term to search for in the Wix CLI Documentation
maxResultsnumber- The maximum number of results to return, default is 10, max is 15default
10
wixmcp_searchwixheadlessdocumentationSearch the Wix headless documentation for building custom frontends with Wix backend services.Read-onlySearchWixHeadlessDocumentation
Search the Wix headless documentation for building custom frontends with Wix backend services.
Inputs
searchTermstringrequired- The search term to search for in the Headless Documentation
maxResultsnumber- The maximum number of results to return, default is 10, max is 15default
10
wixmcp_searchwixrestdocumentationSearch the official Wix REST API documentation to find endpoints, schemas, and usage examples.Read-onlySearchWixRESTDocumentation
Search the official Wix REST API documentation to find endpoints, schemas, and usage examples.
Inputs
reasonstringrequired- One sentence describing the original user request and the task you are trying to accomplish with this search.
searchTermstringrequired- The search term to search for in the Wix REST API Documentation
maxResultsnumber- The maximum number of results to return, default is 10, max is 15default
10
wixmcp_searchwixsdkdocumentationSearch the Wix JavaScript SDK documentation for client-side and server-side SDK usage.Read-onlySearchWixSDKDocumentation
Search the Wix JavaScript SDK documentation for client-side and server-side SDK usage.
Inputs
searchTermstringrequired- The search term to search for in the Wix SDK Documentation
maxResultsnumber- The maximum number of results to return, default is 10, max is 15default
10
wixmcp_searchwixwdsdocumentationSearch the Wix Design System documentation for UI components and design guidelines.Read-onlySearchWixWDSDocumentation
Search the Wix Design System documentation for UI components and design guidelines.
Inputs
searchTermstringrequired- The search term to search for in the Wix Design System Documentation
maxResultsnumber- The maximum number of results to return, default is 10, max is 15default
10
wixmcp_supportandfeedbackSubmit feedback or a support request about the Wix MCP tools to the Wix team.Read-onlySupportAndFeedback
Submit feedback or a support request about the Wix MCP tools to the Wix team.
Inputs
messagestringrequired- The message to send to Wix
requestIdstring- request id if returned from the server in a failed API call to Wix
wixmcp_wixreadmeRead the Wix MCP README for guidance on how to use the available Wix tools effectively.Read-onlyWixREADME
Read the Wix MCP README for guidance on how to use the available Wix tools effectively.
Inputs
This tool takes no inputs.
wixmcp_claimanonymoussiteTransfer an anonymously created Wix site to the authenticated user's account using a job ID.WriteClaimAnonymousSite
Transfer an anonymously created Wix site to the authenticated user's account using a job ID.
Inputs
jobIdstringrequired- The job ID from site creation - required to authenticate the claim
siteIdstringrequired- The metasite ID of the anonymous site to claim
wixmcp_createsitefromtemplateCreate a Wix site from a specific template by templateId, publish it when possible, and return links to the editor and the published site.WriteCreateSiteFromTemplate
Create a Wix site from a specific template by templateId, publish it when possible, and return links to the editor and the published site.
Inputs
templateIdstringrequired- The selected template metaSiteId to create a site from.
wixmcp_import_claude_design_from_urlImport a design into Wix from a publicly fetchable URL.Writeimport-claude-design-from-url
Import a design into Wix from a publicly fetchable URL. The file is a self-contained HTML bundle with all images, fonts, and styles inlined. Creates a live Wix-hosted site and returns its URL.
Inputs
urlstringrequired- Public HTTPS URL to the design file. Valid for ~1 hour. Fetched server-side.
claude_design_project_idstring- Stable Claude Design project id.
titlestring- Suggested title for the imported design.
wixmcp_uploadimagetowixsiteUpload one or more images to a Wix site's Media Manager and return the file URL and media ID.WriteUploadImageToWixSite
Upload one or more images to a Wix site's Media Manager and return the file URL and media ID.
Inputs
siteIdstringrequired- The ID of the Wix site to upload to
displayNamestring- Optional display name for the file in Media Manager. If not provided, uses the original filename.
imagearray- Array of images to upload. Use this when the user provides image file attachments OR image URLs. ALWAYS pass ALL images together in a single call — NEVER call this tool once per image. ChatGPT/OpenAI clients: user-attached files are automatically resolved to download_urls, just include them here. Each item must have download_url and optionally file_id. Do NOT use together with imageBase64.
imageBase64string- Base64-encoded image data. Use when the client can read a file and encode it as base64. May include a data URL prefix (e.g. "data:image/jpeg;base64,...") or be raw base64. Do NOT use together with image.
mimeTypestring- MIME type of the image (e.g. "image/jpeg", "image/png", "image/webp"). Required when imageBase64 does not include a data URL prefix.
wixmcp_wixsitebuilderCreate or build a new Wix site using AI, returning a job ID to track the creation progress.WriteWixSiteBuilder
Create or build a new Wix site using AI, returning a job ID to track the creation progress.
Inputs
sitePromptstringrequired- The prompt to build the site. If not provided, the user will be asked to provide a prompt.
jobIdstring- The job ID of the site build. If not provided, a new job will be created.
suggestedSiteNamestring- Suggested site name to use for the site based on the site prompt.
wixmcp_callwixsiteapiCall any Wix REST API endpoint on a specific site to create, read, update, or delete site data.DestructiveCallWixSiteAPI
Call any Wix REST API endpoint on a specific site to create, read, update, or delete site data.
Inputs
methodstringrequired- The HTTP method to use for the API call (e.g. GET, POST, PUT, DELETE)
reasonstringrequired- One sentence explaining the original user request and why you are calling this API to complete it.
siteIdstringrequired- The id of the site selected using site selection tool
sourceDocUrlstringrequired- The URL of the documentation or recipe where you found this API endpoint. MAKE SURE THE ENDPOINT URL IS REALLY THERE AND YOUR ARE NOT GUESSING IT !!! Must be a valid URL like: - https://dev.wix.com/docs/api-reference/... (REST API reference docs) Use "user-provided" if the user gave you the endpoint directly. Use "other" ONLY IF YOU HAVE A VERY GOOD REASON TO DO SO
urlstringrequired- The url of the api to call - ALWAYS get the API url from the Wix REST docs or from the conversation context, the URL MUST BE ABSOLUTE URL NEVER guess the API url, ALWAYS get it from the conversation context, i.e from the user prompt or from the "WixREADME" tool or from the "SearchWixRESTDocumentation" tool or from the "BrowseWixRESTDocsMenu" tool or from the "ReadFullDocsArticle" tool Allowed API urls are: wix.com, dev.wix.com, manage.wix.com, editor.wix.com, wixapis.com Docs urls like https://dev.wix.com/docs/... are not API urls, if you want to read the docs, use the "ReadFullDocsArticle" tool
bodystring- The request body as a JSON object or array with all the required fields and values, including nested objects. Pass the actual value (object or array), NOT a JSON string. YOU MUST NEVER MAKE UP A BODY - the body should be based on the conversation context, i.e from the user prompt OR got into the conversation context by the "ReadFullDocsArticle" tool OR by the "SearchWixAPISpec" tool OR by the "ReadFullDocsMethodSchema" tool - i.e based on the API docs, a relevant recipe you read (preferably), a code example you found in the docs, a schema you read etc.. YOU MUST NEVER ASSUME YOU KNOW WHAT THE BODY SCHEMA IS WITHOUT CONCRETE EXAMPLES OR SCHEMA DEFINITIONS FROM THE CONVERSATION CONTEXT. Prefer reading relevant recipes if you have them in context for understand the body schema for API calls.
wixmcp_executewixapiExecute JavaScript code against the Wix REST API in a sandboxed environment to query or mutate site data.DestructiveExecuteWixAPI
Execute JavaScript code against the Wix REST API in a sandboxed environment to query or mutate site data.
Inputs
codestringrequired- JavaScript async function expression to execute against the Wix REST API. The value must be the function itself, for example `async function() { ... }` or `async () => { ... }`, not a script body and not an invoked function. Return the final answer from inside the function. Do not write top-level `const`, top-level `await`, or top-level `return` outside the function body. Use `wix.request({ method, url, body })` for Wix API calls. Scope defaults to `site` when the ExecuteWixAPI `siteId` parameter is passed, otherwise `account`; set `scope` explicitly when needed. Full Wix API URLs and paths starting with `/` are supported. Do not pass `siteId` inside `wix.request()`; one ExecuteWixAPI call can target only the tool-level `siteId`.
hasMutationsbooleanrequired- Whether this code creates, updates, deletes, publishes, installs, imports, uploads, or otherwise mutates Wix data or site/account state. Set this to true for create/update/delete/bulk create/import/upload calls even if the reason is inspection, verification, or response-shape discovery. Read-only GET/query/list/search calls can use false.
reasonstringrequired- One sentence explaining the original user request and why you are executing code to complete it.
sourceDocUrlsarrayrequired- The URLs of the documentation, recipes, API articles, or schema sources where you confirmed the Wix REST endpoints, HTTP methods, request body shapes, auth contexts, and required fields used by this code. Include every docs/schema source needed for the endpoints and request shapes used in the code. MAKE SURE THE ENDPOINT URLS AND REQUEST SHAPES ARE REALLY THERE AND YOU ARE NOT GUESSING THEM !!! Each value must be a valid URL like: - https://dev.wix.com/docs/api-reference/... (REST API reference docs) Use ["user-provided"] if the user gave you all endpoint and request details directly. Use ["other"] ONLY IF YOU HAVE A VERY GOOD REASON TO DO SO
siteIdstring- Wix site ID for site-level API calls. Required when using `wix.request({ scope: "site", ... })`. One ExecuteWixAPI call can target only this siteId; per-request siteId inside `wix.request()` is not supported. Find site IDs using ListWixSites or an account-level `wix.request()` call to query the Sites API.
wixmcp_managewixsiteCall account-level Wix APIs to create, update, or publish a site.DestructiveManageWixSite
Call account-level Wix APIs to create, update, or publish a site.
Inputs
methodstringrequired- The HTTP method to use for the API call (e.g. GET, POST, PUT, DELETE)
urlstringrequired- The url of the api to call - ALWAYS get the information from the Wix REST docs DONT GUESS IT, the URL MUST BE ABSOLUTE URL
bodystring- The request body as a JSON object or array with all the required fields and values, including nested objects. Pass the actual value (object or array), NOT a JSON string. YOU MUST NEVER MAKE UP A BODY - this should be based on the conversation context, i.e from the user prompt or from the "WixREADME" tool or from the "SearchWixRESTDocumentation" tool or from the "BrowseWixRESTDocsMenu" tool or from the "ReadFullDocsArticle" tool or from the "SearchWixAPISpec" tool or from the "ReadFullDocsMethodSchema" tool - i.e based on the API docs. YOU MUST NEVER ASSUME YOU KNOW WHAT THE SCHEMA IS WITHOUT CONCRETE EXAMPLES OR SCHEMA DEFINITIONS FROM THE CONVERSATION CONTEXT.
No tools match.