SmartSite & feed
Edit the user’s SmartSite and publish to their feed.
5 tools. Generated from the Swop MCP server’s own tools/list (server version 0.2.2), so names, inputs and limits match what your client sees.
swop_get_my_smartsite
See my SmartSite · Sign-in: smartsite.write · /mcp and /mcp/commerce · Read-only
Get the linked account's current SmartSite so you can see it BEFORE editing: name, bio, appearance (background/theme), the links already on it (icons, buttons, info bars, with their item ids for removal), product tiles, and a viewUrl to preview it. ALWAYS call this before adding or changing things so edits stay additive.
| Input | Type | Required | Description |
|---|---|---|---|
smartsiteId | string | No | Specific SmartSite id (default: primary) |
swop_update_my_smartsite
Edit my SmartSite (name, bio, background) · Sign-in: smartsite.write · /mcp and /mcp/commerce
Edit the linked account's SmartSite: display name, bio, and appearance (background color, a gradient of hex stops, a background image URL, theme/font color, font family, or header layout). Pass only what you want to change. For adding links/buttons/info bars use swop_add_link; for products use swop_create_product / swop_feature_product.
| Input | Type | Required | Description |
|---|---|---|---|
name | string | No | New display name (max length 80) |
bio | string | No | New bio text (max length 500) |
backgroundColor | string | No | Solid background hex, e.g. "#0b0b0f" |
backgroundGradient | array of string | No | Gradient hex stops, e.g. ["#5b3df5","#0b0b0f"] (clears the solid color) (max items 8) |
backgroundImg | string | No | Background/wallpaper image URL (format uri) |
themeColor | string | No | Accent/theme hex color |
fontColor | string | No | Primary font hex color |
fontFamily | string | No | Font family name |
headerFormat | "centered" | "left" | "cover" | "hero" | "orbit" | "card" | "bar" | No | Header layout style |
smartsiteId | string | No | Specific SmartSite id (default: primary) |
swop_add_link
Add a link to my SmartSite · Sign-in: smartsite.write · /mcp and /mcp/commerce
Add a link to the linked account's SmartSite, with smart placement. TWO STEPS: (1) call with just the url — the tool detects what kind of link it is (payment like Venmo/PayPal/Cash App, social, contact, website) and returns a recommendation with a text preview of each layout: a small ICON in the icon row, a link BUTTON tile, or a full-width INFOBAR call-to-action card. Show the user the message + previews and ask which they want. (2) call again with the same url plus displayAs = 'icon' | 'button' | 'infobar' to place it. You can override title / buttonName / description / style ('solid' | 'glass') for an info bar. Returns a viewUrl to preview the result.
| Input | Type | Required | Description |
|---|---|---|---|
url | string | Yes | The link to add (any URL, or mailto:/tel:) |
displayAs | "icon" | "button" | "infobar" | No | Omit first to get a placement suggestion; then set to place it |
title | string | No | Override the label/title (max length 120) |
buttonName | string | No | Info-bar button text (e.g. "Pay", "Book") (max length 40) |
description | string | No | Info-bar description line (max length 300) |
style | "solid" | "glass" | No | Info-bar card style (default solid) |
smartsiteId | string | No | Specific SmartSite id (default: primary) |
swop_remove_link
Remove a SmartSite link · Sign-in: smartsite.write · /mcp and /mcp/commerce · Changes or moves things
Remove a link/icon/info-bar/product tile from the SmartSite. Get the item's id and contentType from swop_get_my_smartsite (icons → 'socialTop', buttons → 'socialLarge', info bars → 'infoBar', product tiles → 'marketPlace'). Confirm with the user first.
| Input | Type | Required | Description |
|---|---|---|---|
contentType | "socialTop" | "socialLarge" | "infoBar" | "marketPlace" | Yes | The kind of item to remove |
itemId | string | Yes | The item id from swop_get_my_smartsite |
smartsiteId | string | No | Specific SmartSite id (default: primary) |
swop_create_feed_post
Post to my Swop feed · Sign-in: smartsite.write · /mcp and /mcp/commerce · Preview, then confirm
Publish a PUBLIC post to the Swop feed as the linked account's SmartSite: a caption plus up to 4 images. Each image may be an https URL, a data:image/...;base64 URI, or bare base64 (PNG/JPEG/GIF/WebP, max 5 MB; keep inline images under ~3 MB total so the request fits). TWO-STEP like swop_send: call WITHOUT confirm to get a preview — Swop hosts the images and returns who it posts as, the exact caption, the hosted image URLs and a previewId. Show the user that exact caption and every image and get an explicit yes. Then call again with the SAME caption and smartsiteId, the images array exactly as the preview returned it, the previewId, and confirm: true. Any change after the preview is refused — preview again. Each preview publishes at most once: re-confirming it returns the same post (duplicate: true). Never confirm before the user has seen the preview.
| Input | Type | Required | Description |
|---|---|---|---|
caption | string | No | Post text. Hashtags and @handle.swop.id mentions work as in the app (max length 2000) |
images | array of string | No | Images: https URLs, data:image/...;base64 URIs, or base64. On confirm, pass the hosted URLs from the preview (max items 4) |
smartsiteId | string | No | Post as this SmartSite (default: primary). Ids from swop_get_my_profile |
previewId | string | No | From the preview step |
confirm | boolean | No | true ONLY after the user explicitly approved the preview |