Plone Dynamic Pages MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PLONE_TOKEN | No | Bearer token for authentication. | |
| PLONE_COOKIE | No | Session cookie (__ac) for authentication (alternative to token). | |
| PLONE_API_URL | No | The base URL of your Plone REST API (optional if provided in tool calls). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| check_credentials_statusA | Checks if Plone credentials (token or cookie) are provided in the arguments. |
| set_session_contextC | Sets the default site URL and credentials for the current session. |
| get_site_definitionsC | Fetches site-specific definitions (Schemas and Row Types) from Plone. |
| get_dynamic_page_contentB | Fetches the full JSON structure of a DynamicPage including rows and featured items. |
| create_contentC | Creates any content type in Plone. |
| create_dynamic_page_rowC | Creates a DynamicPageRow in Plone. |
| create_dynamic_page_row_featuredC | Creates a DynamicPageRowFeatured in Plone. |
| search_contentC | Searches for content in the Plone site. |
| patch_contentC | Updates an existing Plone object (PATCH). |
| delete_contentA | Deletes a Plone object. Confirmation required. |
| move_dynamic_page_rowC | Moves a row to a new position. |
| upload_fileC | Uploads a file to Plone. |
| upload_local_assetB | Reads a file from the local filesystem and uploads it to Plone. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Most tools have clear, distinct purposes (e.g., get_site_definitions vs. get_dynamic_page_content). However, overlap exists between create_content and the specialized row creation tools, and between upload_file and upload_local_asset, which could lead to confusion about which to use.
All tool names follow a consistent verb_noun pattern using lowercase with underscores (e.g., create_content, patch_content, search_content). The naming is uniform and predictable, with no mixing of conventions.
The server has 13 tools, which is within the ideal 3-15 range. Each tool serves a distinct functional need—configuration, CRUD, dynamic page operations, and file uploads—without being excessive or sparse.
The tool set covers the core domain of Dynamic Page management, including creation, retrieval, update, delete, search, and specialized row operations. A notable gap is the lack of a generic get_content tool for non-DynamicPage objects, but search_content can serve that purpose, so the gap is minor.