# Zesty.io MCP MCP

> Zesty.io lets your AI client manage content models, data entries, and site instances from natural language. Instead of logging into a CMS dashboard or writing complex API calls, you talk to it: ask for all associated sites, check what data structures exist, or tell it to create and update specific pieces of content.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** content-modeling, enterprise-cms, api-first, content-delivery, schema-management, digital-experience

## Description

This MCP connects your AI agent directly to the Zesty.io platform, giving it full read/write access over your digital assets. You can treat your CMS like a database you talk to. Need to know what sites you run? Ask for all associated instances and get their metadata. Want to publish an article? Instruct your agent to create a new content item using the correct data structure. It handles listing, retrieving, updating, or outright deleting existing content pieces across any model. Because this MCP manages credentials through Vinkius's zero-trust proxy, your API tokens never sit on disk; they only flow securely during transit. This capability lets you manage complex site architectures and content lifecycles without ever needing to handle the raw API keys yourself.

## Tools

### create_content_item
Builds and publishes a new piece of content by defining its field values in a JSON object.

### delete_content_item
Removes an existing content item from the CMS.

### get_content_item
Fetches all details for a single, specific piece of content.

### list_zesty_instances
Retrieves a list of every Zesty.io property associated with the account.

### list_content_items
Lists all content items belonging to a specific data model.

### list_content_models
Reads all available content models, helping you find the correct unique identifier (ZUID) for your data structure.

### get_instance_settings
Retrieves the configuration settings and technical metadata for the connected CMS instance.

### update_content_item
Modifies existing content items by accepting updated field values.

## Prompt Examples

**Prompt:** 
```
List all Zesty instances I have access to.
```

**Response:** 
```
I've retrieved your instances. You have access to 3 properties: 'Corporate Blog' (ZUID: 8-abc-123), 'Product Showcase' (ZUID: 8-xyz-456), and 'Marketing Landing Pages' (ZUID: 8-def-789).
```

**Prompt:** 
```
Show me the content items for the 'Press Releases' model (ZUID: '6-ghi-987').
```

**Response:** 
```
I found 5 items in the 'Press Releases' model. Recent titles include 'Q3 Earnings Report' and 'New Partnership Announcement'. Would you like to see the details for any of them?
```

**Prompt:** 
```
Update the title of content item '7-jkl-654' in model '6-ghi-987' to '2024 Product Roadmap'.
```

**Response:** 
```
Successfully updated content item '7-jkl-654'. The new title is now '2024 Product Roadmap' in your Zesty instance.
```

## Capabilities

### Discover all Zesty sites
List every single instance associated with your account, giving you visibility into multiple properties.

### Inspect data schemas
List available content models to understand the required structure and unique IDs for your content types.

### List existing content assets
Fetch lists of specific items within a given model, giving you an overview of current published data.

### Read specific content details
Get the full set of information for one particular content item using its unique identifier.

### Create new content records
Build and publish brand-new content items by passing a structured JSON object with required field values.

### Modify existing content
Update specific fields on an already published content item, like changing a title or body copy.

## Use Cases

### Checking site inventory
A marketing manager needs to know how many properties are linked under their account. They ask: 'List all my Zesty instances.' The agent uses `list_zesty_instances` and provides a clean, immediate list of every property ID.

### Drafting new product copy
A growth engineer has 20 pieces of copy ready for a new landing page. They instruct their agent: 'Create 20 content items in the Product Landing model.' The agent handles the JSON formatting and calls `create_content_item` repeatedly.

### Auditing stale data
A developer needs to see which articles haven't been updated in six months. They ask: 'List all content items from the blog model.' The agent uses `list_content_items`, giving them a dataset they can then filter.

### Mass updating metadata
A team needs to change the boilerplate legal text on 50 existing pages. They ask: 'Update the content item ID X with new terms and conditions.' The agent executes `update_content_item` for every specified asset.

## Benefits

- Get instant visibility across all your sites using `list_zesty_instances`. You don't have to manually navigate through multiple dashboards just to know which properties you own.
- Know exactly what data structures are available by running `list_content_models`. This lets developers test schema requirements before they write a single line of code.
- Need an overview of published content? Use `list_content_items` to get lists of assets for any model, letting you audit your current content inventory quickly.
- Instead of copy-pasting data and refreshing pages, use the agent to execute updates via `update_content_item`. The AI handles the field mapping and API calls in one go.
- Need to publish a piece of content from scratch? Use `create_content_item` to generate new assets directly through natural language instructions.
- The ability to delete obsolete content using `delete_content_item` keeps your CMS clean, letting you manage the entire lifecycle—creation, modification, and archival.

## How It Works

The bottom line is you tell your AI client what content change you need, and the MCP executes the API action directly.

1. Subscribe to this MCP and input your Zesty API Token along with the instance's unique identifier.
2. Connect your preferred AI client (like Cursor or Claude) to Vinkius. The agent now has access to all configured tools.
3. Ask your agent a natural language question, such as 'List all models for my marketing site,' and it executes the necessary tool call.

## Frequently Asked Questions

**How do I find all properties linked to my account using list_zesty_instances?**
You simply ask your agent to 'List all Zesty.io instances.' The MCP will execute `list_zesty_instances` and provide a clean, categorized list of every property you have access to.

**Can I use create_content_item if I don't know the model ID?**
No. First, you need to run `list_content_models` so your agent can show you all available content structures and identify the correct Model ZUID before attempting creation.

**Is update_content_item safe for large batches of data?**
It works best when you specify exactly which fields need updating. It's safest to run `get_content_item` first, verify the current structure, and then provide a targeted instruction for the update.

**What is the difference between list_content_items and get_content_item?**
`list_content_items` shows you a summary of multiple assets (like an index), while `get_content_item` fetches all the deep, detailed data for one single asset.

**How do I get started running list_content_models?**
You must provide a valid Zesty API Token and the specific Instance ZUID. With those credentials, your agent can call `list_content_models` to immediately map out all available content types in your account.

**If I run get_content_item and the item ID is wrong, what should happen?**
The system returns a specific 'Not Found' status code. This means you need to double-check the content item ID or use `list_content_items` first to verify the correct record.

**How can I check my agent’s permissions for deletions using get_instance_settings?**
You run `get_instance_settings` to review the current configuration and access scopes. This view tells you exactly which permissions are active, confirming if your agent has delete rights.

**What data structure does create_content_item require?**
It requires a structured JSON object containing all field values. The required keys and types must match an existing content model schema; check your models using `list_content_models`.

**How do I find my Instance ZUID?**
You can list all your accessible instances using the `list_zesty_instances` tool, or find it in your Zesty.io URL (it starts with `8-`).

**Can I see all content items for a particular model?**
Yes, use the `list_content_items` tool with the unique ZUID of the model (starts with `6-`) to retrieve all associated entries.

**Is it possible to update content via the agent?**
Absolutely. Use the `update_content_item` tool by providing the Model ZUID, the Item ZUID, and a JSON object containing the fields you wish to modify.