MCP Server Reference
Available Tools List
Below is the list of tools / features that Duda's MCP server exposes. Availability of these varies based on your plan type, as specified in the table below.
| Category | Tool | Plan Availability | What it does |
|---|---|---|---|
| Account Management | create_account | Custom | Creates a new staff‑level or client account. |
get_account_details | Custom | Retrieves account information. | |
update_account | Custom | Updates account details (name, permissions, etc.). | |
delete_account | Custom | Permanently removes an existing account. | |
| Site Permissions | list_site_permissions | Custom | Shows a client’s access and roles for a given site. |
grant_site_access | Custom | Grants edit access to a site for a client account. | |
update_site_permissions | Custom | Adjusts permissions or role level for a client. | |
revoke_site_access | Custom | Removes a client’s access from a site. | |
| SSO & Welcome Links | generate_sso_link | Custom | Provides a secure one‑time login link. |
generate_reset_password | Custom | Generates a one‑time link for password reset. | |
create_welcome_link | Custom | Creates a welcome link for the account | |
| Client Management | get_client_permission_from_email | Custom | Finds a client account using their email address. |
list_client_sites | Custom | Lists sites that a client can currently access. | |
| Blog Management | create_blog | Agency and up | Adds the blog feature to a site. |
list_blog_posts | Agency and up | Retrieves all blog posts for the site. | |
get_blog_post | Agency and up | Retrieves full details for a specific post. | |
create_blog_post | Agency and up | Creates a new blog post. | |
update_blog_post | Agency and up | Edits an existing blog post | |
delete_blog_post | Agency and up | Permanently removes a post from the blog. | |
publish_blog_post | Agency and up | Publishes a draft post live to visitors. | |
unpublish_blog_post | Agency and up | Returns a post to draft status. | |
| Content Library | get_content_library | Agency and up | Retrieves the site’s business info and content fields. |
update_content_library | Agency and up | Updates texts, images or fields in the content library. | |
publish_content_library | Agency and up | Pushes content‑library changes live instantly. | |
| URL Rules | create_url_rule | Custom | Adds a redirect or URL rewrite rule to a site. |
update_url_rule | Custom | Modifies an existing URL rule. | |
delete_url_rule | Custom | Deletes an existing redirect or rewrite rule. | |
| Store | create_store | Agency and up | Adds a native store to the site. |
| Store Products | get_store_details | Agency and up | Retrieves store settings (currency, categories, etc.). |
list_store_products | Agency and up | Lists all products in the store. | |
get_store_product | Agency and up | Retrieves details of a specific product. | |
create_store_product | Agency and up | Adds a new product. | |
update_store_product | Agency and up | Modifies an existing product’s data. | |
delete_store_product | Agency and up | Removes a product entirely from the store. | |
get_product_variation | Agency and up | Fetches variation details (size, color, etc.). | |
update_product_variation | Agency and up | Updates a product variant. | |
| Store Orders | list_store_orders | Agency and up | Retrieves all orders made through the store. |
get_store_order | Agency and up | Retrieves detailed information for a specific order. | |
update_store_order | Agency and up | Updates order status or shipping details. | |
| Site Stats / Activities | get_site_stats | Agency and up | Shows site metrics like visits, views, and leads. |
get_site_activities | Agency and up | Returns a log of recent actions on a site. | |
list_form_submissions | Agency and up | Lists entries submitted via site‑embedded forms. | |
| Site Management | list_sites | Agency and up | Lists all sites in the account. |
get_site_details | Agency and up | Retrieves site metadata (name, domains, etc.). | |
publish_site | Custom | Publishes the site. | |
unpublish_site | Custom | Unpublishes a live site. | |
create_or_generate_site | Custom | Creates a new site from a template, generates one with AI, or creates an empty Vibe site. | |
list_templates | Custom | Lists available templates in the account. | |
list_recently_published_sites | Agency and up | Retrieves sites published within a recent timeframe. | |
list_recently_created_sites | Agency and up | Finds sites created within a recent timeframe. | |
| Theme | get_site_theme | Custom | Shows current theme settings for a site. |
update_site_theme | Custom | Updates the site's theme settings. | |
| Pages Management | list_pages | Custom | Lists all pages currently set up on a site. |
update_page | Custom | Edits layout or metadata of an existing page. | |
create_page | Custom | Adds a new page to a site. | |
| Collections | get_collections | Agency and up | Retrieves collection schemas and data rows. |
create_collection | Agency and up | Defines a new data collection schema. | |
create_collection_rows | Agency and up | Adds rows to a collection. | |
update_collection_rows | Agency and up | Edits one or more rows in a collection. | |
delete_collection_rows | Agency and up | Removes specific rows from a collection. | |
create_collection_fields | Agency and up | Adds new field(s) to an existing collection (TEXT, IMAGE, NUMBER, DATE_TIME, MULTI_SELECT, etc.). | |
update_collection_field | Agency and up | Renames an existing collection field. | |
delete_collection_field | Agency and up | Permanently deletes a field and its data from all collection rows. | |
| Bookings | create_booking | Agency and up | Creates a booking organization for a site to initialize bookings. |
manage_booking | Agency and up | Retrieves the booking organization or changes its status (ACTIVE / SOFT_DELETED). | |
list_booking_appts | Agency and up | Lists all appointments with filtering by status, dates, attendee, type, and staff. | |
get_booking_appt_types | Agency and up | Retrieves all appointment types, or one by ID. | |
manage_booking_appt_type | Agency and up | Creates, updates, or deletes an appointment type, including FREE/PAID pricing. | |
get_booking_staff | Agency and up | Retrieves all staff members, or one by ID. | |
manage_booking_staff | Agency and up | Creates, updates, or deletes a staff member, by linked account or name + email. | |
manage_booking_staff_avail | Agency and up | Gets or updates a staff member's availability: weekly slots and per-date overrides. | |
| Vibe | conversation_send_message | All plans | Sends an instruction to a Vibe site’s AI agent, or answers a question the agent asked. Starts a turn. |
conversation_wait | All plans | Waits for the current turn to finish and returns what happened since the given cursor. | |
conversation_get_messages | All plans | Returns a conversation’s full log, page by page. | |
conversation_find | All plans | Lists a site’s conversations and their state, or returns one conversation. Never waits. | |
conversation_cancel | All plans | Stops the turn that’s running. Changes already made to the site are kept. | |
vibe_list_files | All plans | Lists the source files of a Vibe site (paths and sizes). | |
vibe_read_files | All plans | Reads up to 20 source files of a Vibe site in one call. |
Working with Vibe sites
The Vibe tools let your AI tool build and edit a Duda Vibe site by talking to the site’s own AI agent. The Vibe tools work on any existing Vibe site on every plan. On the Custom plan, you can also create an empty Vibe site with create_or_generate_site (creation_method: vibe).
- Each message starts a turn.
conversation_send_messagereturns right away with acursor. Callconversation_waitwith that cursor until the conversation isidle. A turn usually takes from tens of seconds to a few minutes. Ifconversation_waitreturnsin_progress, call it again with the new cursor. - The agent may ask a question. When the state is
waiting_for_answer, reply withconversation_send_messageusinganswers(for questions) orapproved(for approval and credential requests), not free text. - One turn per site at a time. A new message is refused while any conversation on the site is running a turn.
- Conversations. Leave out
conversation_idto start a new conversation. Pass it to continue one and keep the agent’s context. Put the whole task in one message. - Files and images. Pass public URLs in
file_urls. The agent downloads them itself, so private or expired links fail the turn. - Checking the result. Use
vibe_list_filesandvibe_read_filesto see the site’s code. Only the site’s own source is exposed: pages, components, and API handlers. - AI credits. Vibe turns use AI credits from your account, the same as building in the Vibe editor.
Updated 10 days ago
Did this page help you?