# Makeswift MCP

> Makeswift MCP Server connects your AI agent directly to a visual CMS backend, letting you manage site content and versions without writing code. Get details on sites (`get_site_details`), list every page or component, and create full backups using `create_snapshot`—all through natural conversation.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** visual-builder, nextjs, react, page-editor, web-development, content-publishing

## Description

Makeswift MCP Server hooks your AI agent right into a visual CMS backend. You manage site content and versions without ever touching code—it's all just conversation with your agent. 

**Getting the Site Blueprint**
You can get the full current site details, including which plan level you're on and what primary hostname is linked up using `get_site_details`. If you need to know every available address for your account, `list_hostnames` gives you that list. For language versions, use `list_locales` to see all the locales configured for the site, like en-US or pt-BR.

**Mapping Out Content and Pages**
You'll find a complete index of every page in your project by running `list_pages`; this gives you basic publication status info on everything. If you need deep metadata on one specific URL, `get_page` pulls up all the details for that exact page or slug. You can also check out what old links point to new ones with `list_redirects`, which maps out every site redirect. For a deeper dive into the underlying structure, `list_components` returns a list of every registered React component that powers your site's layout.

**Version Control and Snapshots**
This server handles versioning like a pro. You can create an immutable backup snapshot of the entire site's current content using `create_snapshot`. This locks down the whole state for safe version control. If you ever need to see what was in a previous save, `list_snapshots` gives you an index of all historical snapshots available. To pull up the actual data from one of those old saves, use `get_snapshot`, passing it that specific snapshot ID. When you've retrieved a snapshot, you can check out its exact content state and data.

**Putting It Together**
Your agent uses these tools to let you manage everything in context. You can get the site config via `get_site_details` then list all pages with `list_pages`. If you spot something wrong on a page, you use `get_page` to check its specific metadata before running `create_snapshot` to save it. Need to make sure your new content is safe? You'll pull up the site details first, maybe checking out which hostnames are available with `list_hostnames`, then run `list_locales` so you don't mess up a language setting. When everything looks good, you use `create_snapshot`. Later, if you gotta roll back or just check what was there last week, you pull the index with `list_snapshots` and grab the data using `get_snapshot`.

## Tools

### create_snapshot
Creates an immutable backup snapshot of the entire site's current content for version control.

### get_page
Retrieves detailed metadata and configuration for a specific page URL or slug.

### get_site_details
Gets the full current site details, including plan level and primary hostname information.

### get_snapshot
Fetches the specific content state and data for a previously created snapshot ID.

### list_components
Returns a list of all registered React components that power the site structure.

### list_hostnames
Lists every available hostname associated with your Makeswift account.

### list_locales
Returns a list of all language locales (e.g., en-US, pt-BR) configured for the site.

### list_pages
Lists every page in the project and provides basic publication status information.

### list_redirects
Returns a list of all site redirects, helping map old URLs to new ones.

### list_snapshots
Provides an index listing all historical content snapshots available for retrieval.

## Prompt Examples

**Prompt:** 
```
List all pages in my Makeswift project.
```

**Response:** 
```
I've fetched your pages. You have 10 pages, including 'Home' (Published), 'About Us' (Draft), and 'Contact' (Published).
```

**Prompt:** 
```
Create a new snapshot called 'Pre-Launch Backup'.
```

**Response:** 
```
Success! The snapshot 'Pre-Launch Backup' (ID: snap_abc123) has been created. Your current site content is now saved as a version.
```

**Prompt:** 
```
Show me the site configuration details.
```

**Response:** 
```
Your site 'My Awesome Store' is on the 'Pro' plan. Primary hostname is 'example.com' and you have 2 locales configured (en-US, pt-BR).
```

## Capabilities

### Get Site Configuration Details
Retrieves the current configuration, hostnames, and localized settings for the entire Makeswift site.

### List All Pages and Metadata
Provides a list of every page in your project, along with its publication status and details.

### Create Content Snapshots
Generates an immutable backup snapshot of the site's current content state for safe versioning.

### Inspect Site Components and Redirects
Lists all registered React components or maps out existing URL redirects within the project.

### Manage Locales and Hostnames
Enumerates which language versions (locales) are configured, or lists the available hostnames for your site.

## Use Cases

### Pre-Launch Audit
The Content Manager needs to verify all 50 product pages are ready. They ask their agent to run `list_pages`. The agent responds, listing every page and confirming if the 'Draft' or 'Published' status is correct for each one.

### Rollback Scenario
The Frontend Developer pushes a bad update. They immediately instruct the agent to run `create_snapshot` with a name like 'Bad Deploy Pre-Fix'. Later, they use `list_snapshots` and then `get_snapshot` on that ID to restore the previous state.

### Global Deployment Check
The DevOps Engineer must ensure the new site works for both English and French. They first run `list_locales` to confirm 'en-US' and 'fr' are active, then use `get_site_details` to validate the primary hostname matches their CDN setup.

### Structural Review
A new developer joins and needs to understand the site architecture. They ask for a list of all registered components (`list_components`) and any legacy URL redirects (`list_redirects`), getting a full map without touching the live staging environment.

## Benefits

- Need to audit content? Use `list_pages` to get a complete list of every URL on the site. You can quickly check if that new landing page exists before you build it.
- Running an international launch? `list_locales` and `get_site_details` let your agent confirm all language versions are correctly configured under the primary hostname.
- Worried about bad deployments? `create_snapshot` lets your team take a full, programmatic backup of the site right before publishing. You've got an instant rollback point via `list_snapshots`.
- Mapping links is key. Use `list_redirects` to see exactly what happens when users hit old URLs, ensuring a smooth transition after a major redesign.
- Developer sanity check: Need to know if your custom component, like the new pricing widget, is correctly registered? Run `list_components` and get that list instantly.

## How It Works

The bottom line is: you talk to your agent, and the agent talks to Makeswift's API for you. No manual clicks required.

1. Subscribe to the Makeswift server on Vinkius and provide your Site API Key.
2. Your AI client (Claude, Cursor, etc.) uses natural language prompts to invoke specific tools.
3. The server executes the tool call—for instance, `list_pages`—and returns structured data directly to your agent.

## Frequently Asked Questions

**How do I list all pages using the Makeswift MCP Server?**
You use the `list_pages` tool. This returns a comprehensive list of every page in your project, including its current publication status and metadata.

**Can I check site configuration details with get_site_details?**
Yes, `get_site_details` provides the full context. It tells you things like the primary hostname and whether your site is on a 'Pro' plan.

**What is the best way to save a backup using create_snapshot?**
Use `create_snapshot` before any major deployment or content change. This function captures an immutable snapshot ID that you can later retrieve with `get_snapshot`.

**How do I list all possible languages (locales)?**
Run the `list_locales` tool. It gives you a clean list of every configured language version, like 'en-US' or 'pt-BR'.

**How do I use list_components to audit the structure of my site?**
It lists all registered React components. This lets you see exactly what building blocks your project uses across different pages. You get a full inventory, which is great for development teams checking dependencies.

**Can I use list_redirects to check my site's routing rules?**
Yes, it gives you a complete map of every defined URL redirect. This tool helps verify that old links still point to the right place and prevents broken internal routes.

**What kind of data can I retrieve using get_page for content review?**
You get detailed metadata for a single page, including its specific status (Draft/Published) and core settings. Use this tool when you need to verify the exact configuration or content fields for one particular URL.

**How do I check all available backups with list_snapshots?**
It retrieves a chronological list of every saved content snapshot ID and creation date. You can quickly see your project's version history without needing to manually navigate the dashboard.

**Can I list all pages in my Makeswift site using my AI agent?**
Yes! Use the `list_pages` tool. It will return a comprehensive list of all pages in your project, including their status and IDs.

**How do I create a new content snapshot programmatically?**
Use the `create_snapshot` action. Provide a descriptive name for the snapshot to trigger a new version save of your current site content.

**Is it possible to check the locales configured for my site?**
Yes, use the `list_locales` tool to retrieve all languages and regional settings defined for your site content.