# Plone MCP for AI Agents AI Agent Connect

> Plone MCP lets you manage your Plone CMS content, users, and workflows directly through your AI agent. You can search for specific resources, create new content objects, update user profiles, and move items through publication workflows without navigating complex web interfaces. It turns your AI into a functional content editor and site administrator.

## Overview
- **Category:** document-management
- **Price:** Free
- **Endpoint:** https://edge.vinkius.com/vk_preview_g6iXcoVFJw211BEVIrauCIn8dk9jo3oKnobRjnbL/ai-agent-connect
- **Tags:** cms, plone, enterprise-content, workflow-automation, user-management

## Description

This Plone MCP connects your enterprise CMS to any AI agent so you can manage content through natural conversation. Most people hate digging through nested folders and complex menus just to update one page or find a specific document. This Connector changes that by letting you talk to your CMS like a teammate. Instead of clicking through a web UI, you just tell your agent what to do. You can ask it to find every news item from last year, update the status of a pending article, or create a new user account for a new hire. It handles the heavy lifting of navigating the CMS hierarchy for you. By connecting this to Vinkius, you get a centralized way to manage your content across different platforms. It takes your natural language requests and turns them into specific actions within your Plone instance. You'll spend less time fighting the interface and more time actually getting content live.

## Tools

### update_content
Update existing content with partial changes. This lets you fix small errors without rewriting the whole page.

### create_group
Create a new group for organizing users. Use this to set up permissions for new departments.

### create_user
Add a new user to your CMS. This streamlines onboarding for new staff members.

### delete_content
Remove content from your Plone site. Use this to clear out outdated information quickly.

### delete_group
Remove a group from your CMS. This helps in reorganizing your site's permission structure.

### delete_user
Remove a user from the system. Use this to quickly clean up old accounts.

### get_content
Fetch a specific content object using its path. This is great for quickly checking data for a specific page.

### get_group
Retrieve details for a specific group. Use this to see who belongs to a certain permission set.

### get_user
Get details for a specific user. This helps you verify user roles and permissions instantly.

### get_workflow
Check the current status and history of content workflows. Use this to see where a piece of content is stuck.

### list_groups
See a list of all groups in your CMS. This helps you get an overview of your current organizational structure.

### list_users
View a list of all users in the system. This is perfect for performing regular security audits.

### search_content
Search for specific content using full-text queries. This helps you find exactly what you need across the whole site.

### transition_workflow
Trigger a specific transition in a content workflow. Use this to move content from draft to published status.

### update_group
Update the details of an existing group. This is useful for adjusting permissions on the fly.

### update_user
Update an existing user's profile details. This is useful for keeping your team's information current without manual editing.

### create_content
Make new content objects in your Plone instance. This lets you build out your site structure faster.

## Prompt Examples

**Prompt:** 
```
Search for all Documents containing 'roadmap' in the /news folder.
```

**Response:** 
```
I've searched the /news path. I found 2 documents: **Product Roadmap 2024** and **Q3 Engineering Roadmap**. Would you like to see the details of either one?
```

**Prompt:** 
```
Create a new Folder titled 'Marketing 2025' at the root path.
```

**Response:** 
```
Successfully created the folder **Marketing 2025** at path /marketing-2025. You can now start adding content to it.
```

**Prompt:** 
```
Get the content of the page at /about-us and show its current workflow state.
```

**Response:** 
```
I've retrieved the page. The title is **About Our Company** and its current workflow state is **private**. Would you like to transition it to **published**?
```

## Capabilities

### Search and retrieve content
Find specific content objects using paths, metadata, or full-text queries.

### Create and delete content
Add new content objects to your site or remove outdated resources.

### Manage users and groups
Create accounts, update profiles, and manage group memberships.

### Trigger workflow transitions
Move content through its lifecycle from draft to published status.

### Inspect content history
Check the current status and history of any content workflow.

### Perform full-text searches
Query your entire CMS for specific terms across all folders.

## Use Cases

### Finding specific documents across folders
A content manager needs to find every document with 'roadmap' in the /news folder. They ask the agent to search and get a list of results.

### Moving content from draft to published
An admin needs to move a 'private' page to 'published' status. They tell the agent to trigger a workflow transition.

### Onboarding a new team member
A new employee joins the team. The admin asks the agent to create a new user and add them to the 'Marketing' group.

### Inspecting page metadata
A developer needs to check the metadata of a specific page. They ask the agent to get the content by path.

## Benefits

- Stop navigating deep CMS menus. Use search_content and get_content to find what you need instantly without clicking through folders.
- Speed up content publishing. Use transition_workflow to move items through their lifecycle without manual status updates in the UI.
- Simplify user management. Use create_user, update_user, and list_users to handle team permissions and onboarding in seconds.
- Perform bulk content updates. Use update_content to make partial changes to multiple pages without re-entering all the metadata.
- Get real-time workflow visibility. Use get_workflow to see exactly where a piece of content is in the approval cycle at any moment.

## How It Works

The bottom line is you get a natural language interface for your entire Plone CMS.

1. Subscribe to the Plone MCP on Vinkius.
2. Enter your Plone Instance URL and Personal Access Token.
3. Start asking your AI client to manage content or users.

## Frequently Asked Questions

**Can I manage my Plone CMS content using this Connector?**
Yes, you can create, update, and delete content objects directly through your AI client. It handles all the navigation for you.

**How does the Plone MCP handle user permissions?**
You can create new users, update profiles, and manage groups. It gives your AI agent the ability to handle your site's administration.

**Can I move content through different publication stages?**
Yes, the Connector can trigger workflow transitions. You can ask your agent to move a piece of content from draft to published or any other state.

**Is it possible to search for specific documents in Plone?**
You can perform full-text searches and filter by path. Your agent can find exactly what you're looking for across your entire CMS.

**Does the Plone MCP support updating existing pages?**
It supports partial updates to content objects. This means you can change specific details without having to rewrite the entire page.

**Can I see the history of a content workflow?**
Yes, you can check the workflow status and history for any specific object. This helps you see exactly where a piece of content is in the approval cycle.

**Can I search for specific content types like Folders or Documents?**
Yes! Use the `search_content` tool and provide the `portal_type` parameter (e.g., 'Folder' or 'Document') to filter your results.

**How do I update the title or description of an existing page?**
Use the `update_content` tool. Provide the `path` to the content and a `json_body` containing the fields you want to change, such as `{"title": "New Title"}`.

**Is it possible to manage user accounts through this server?**
Yes, if your credentials have sufficient permissions, you can use `list_users`, `get_user`, and `create_user` to manage the site's membership.