swebsy-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SWEBSY_APP_URL | No | Studio origin for the swebsy_start_pairing link (set for local/self-host) | https://studio.swebsy.com |
| SWEBSY_NO_OPEN | No | Set to skip auto-opening the pairing link in the browser | |
| SWEBSY_AGENT_DIR | No | Where screenshots/exports land (default is workspace .swebsy-agent) | .swebsy-agent |
| SWEBSY_AGENT_PORT | No | Port the local relay listens on | 37373 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| swebsy_replace_page_contentA | Replace ALL top-level sections of the CURRENTLY SELECTED page with a generated list of components. This OVERWRITES the page — it does NOT create a new page (use |
| swebsy_create_pageA | Create a NEW blank page in the project and (by default) select it. Returns the new page's id and fileName. The page starts nearly empty — fill it with |
| swebsy_link_pageA | Point an existing link at a project page — the same wiring the UI's 'Link to' picker does. Pass the link's |
| swebsy_add_sectionA | Insert a new section into the current page. Use for adding discrete sections (hero, features, pricing, CTA) to an existing page. Appends to the end by default; to place it somewhere specific, pass |
| swebsy_edit_sectionA | Modify an existing component. By default this edits the selected component. To edit a component identified by |
| swebsy_delete_sectionA | Remove a component from the current page entirely. Use this instead of emptying a section's contents — an emptied section leaves a stray blank div on the page. Deletes the selected component by default; pass |
| swebsy_insert_blockA | Insert a pre-built block from the catalog and optionally customize its content. STRONGLY preferred over generating from scratch when a matching block exists. The block re-themes on insert — its colour and font classes resolve against THIS site's theme, so the result is meant to differ from the catalog thumbnail (a screenshot of the block in the template it came from). |
| swebsy_update_settingsA | Update site settings — SEO title/description, site URL, structured data (JSON-LD), per-page SEO overrides, language, theme tokens (light + dark), Google fonts, dark mode toggle, and site-wide custom CSS for component-level restyling (globalTheme.customTailwindConfig). Provide ONLY the fields that change. |
| swebsy_commit_design_directionA | Commit this site to a specific visual direction, and apply it (fonts, type roles, palette swatches). Call this ONCE, BEFORE generating a new site's first page — a site with no committed direction has nothing for later edits to stay consistent with, and the result drifts to generic. Prefer a |
| swebsy_animate_pageA | Apply Swebsy's built-in scroll-reveal animation in one step — a smart, per-section staggered entrance on headings, text, images, buttons, and cards (navbars/footers skipped). Prefer this over hand-placing animate-* classes whenever the user asks to animate the page or site, or wants a consistent reveal. |
| swebsy_read_pageA | Read the current page structure and addressable component target paths. Call this BEFORE editing a named or relative page component that is not the current selection. The default |
| swebsy_get_skillA | Load deep, on-demand guidance for a specific area before acting on it (e.g. before adding animations, composing a new page, writing copy, building forms, editing the nav, or reusing components with symbols). Returns the full instructions for that skill. |
| swebsy_start_pairingA | Start a pairing session. Returns a single-use |
| swebsy_statusA | Report bridge status, siteName, selected page, and editorReady, plus a short theme summary (fonts, default color mode, brand colors). After creating or opening a site, wait until editorReady is true and siteId matches the expected site before editing. |
| swebsy_list_pagesA | List the project's pages (id, name, fileName, section count, which one is selected). Call this instead of guessing a page name for select_page or link_page. |
| swebsy_list_templatesA | Refresh and list installed site templates with names, descriptions, tags, fonts, preview URLs, and thumbnail URLs. Works from Home or Studio. |
| swebsy_create_siteA | Create a site and open it in Studio. Omit templateId for Swebsy's standard blank site; provide an installed template ID to import that template unchanged. Then poll swebsy_status until editorReady is true and siteId matches before editing. |
| swebsy_list_sitesA | List saved sites newest-first as metadata only: IDs, internal names, status, timestamps, template ID, page count, and whether each site is open. |
| swebsy_open_siteA | Open a saved site by ID in the paired tab and return its metadata. Idempotent if it is already open. Poll swebsy_status for the expected siteId and editorReady before editing. |
| swebsy_rename_siteA | Rename a saved site's internal Studio/Home name. This does not change its SEO or public title settings. |
| swebsy_select_pageC | Select a page in the connected Studio project. |
| swebsy_read_selectionA | Read the currently selected component (type, classes, attributes, text). Secrets are never surfaced. |
| swebsy_list_symbolsA | List the project's SYMBOLS (reusable components that stay in sync across every page). Returns each symbol's id, name, component type, instance count, and how many pages use it, plus a |
| swebsy_promote_to_symbolA | Promote an existing component into a reusable SYMBOL so it can be shared, in sync, across pages. Pass its |
| swebsy_add_symbol_instanceA | Add a linked INSTANCE of an existing symbol (see list_symbols) to the CURRENT page. The instance stays in sync with the symbol main and every other instance — the way to reuse one navbar/footer/CTA across pages. Select the target page with select_page first. |
| swebsy_get_builder_guideA | Load the static Swebsy builder guidance (component system, theme classes, conventions) that the in-app AI Builder is primed with. |
| swebsy_list_skillsA | List the available deep-guidance skills (animation, page-composition, copywriting, forms, nav) with one-line summaries. |
| swebsy_list_blocksA | List the pre-built block catalog (ids + labels) available to insert_block. |
| swebsy_captureA | Capture a styled screenshot of the current page at a fixed viewport, written under .swebsy-agent/screenshots/. Returns the file path. Scope it with |
| swebsy_list_assetsA | List managed assets in the open site with whole-project usage counts. References are checked across every page, shared symbols, styles, and site settings. Use imagesOnly:true and unusedOnly:true before deleting unused gallery images. |
| swebsy_upload_assetA | Upload a local image file into the open site's asset library and return the |
| swebsy_delete_assetA | Delete one managed asset from the open site's asset gallery. By default this refuses assets referenced by any page, shared symbol, style, or site setting; call swebsy_list_assets first. force:true also clears live component references and should be used only when that is explicitly intended. |
| swebsy_exportA | Export the site to .swebsy-agent/exports/. Static files via the site exporter and/or the project JSON (with assets). Returns |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| swebsy | Connect to Swebsy Studio and open a site to build. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 33 tools
Each tool targets a distinct resource (site, page, section, block, symbol, asset, skill) with clear responsibilities. Cross-references in descriptions (e.g. create_page vs replace_page_content) explicitly disambiguate similar actions. No two tools appear to do the same job.
Tools consistently follow a swebsy_ verb_noun snake_case pattern (list_pages, create_site, edit_section). Minor deviations: `status` and `capture` lack a noun/verb complement, and `get_*`/`read_*`/`list_*` verbs are used interchangeably. Overall the pattern is predictable and scannable.
At 33 tools this is a large surface, exceeding the 25-tool threshold for 'too many'. However, the broad scope (site management, page structure, symbols, assets, settings, guidance) means most tools serve a distinct purpose. The count still feels heavy for an agent to navigate, warranting a below-average score.
The surface covers the full lifecycle of site creation, page composition, section editing, symbol reuse, asset management, and export. Obvious gaps like delete_page or site publish are absent, but agents can work around them via export and other tools. The inclusion of capture and guidance tools adds round-trip verification and learning support.