Cockpit CMS MCP for AI. Directly query and modify your entire content ecosystem.
Works with every AI agent you already use
…and any MCP-compatible client








Connect to your AI in seconds.
Cockpit CMS MCP connects any AI agent directly to your self-hosted headless content system. You can read all structured data—from blog articles and product listings to localized content and asset metadata—and programmatically write back changes without touching a dashboard.
It's full control over your digital assets, accessed via natural conversation.
What your AI can do
Batch content items
Requests data from multiple different content models in a single call.
Create or update content item
Creates a new content item, or overwrites an existing one if the ID is provided.
Delete content item
Permanently removes a specific content item using its unique identifier.
Fetch lists of content items by applying filters and sorting criteria across any defined collection.
Write new data records, or update existing ones if you provide the unique item ID.
Get metadata for files by ID and generate resized versions or thumbnails on demand.
Access the current navigation menus, page lists, and sitemap data for site mapping.
Retrieve all available translations or focus on a specific language locale within a project.
Ask an AI about this
Waiting for input…
Cockpit (Self-hosted Headless CMS API) - 17 Tools
These tools let you perform everything from basic listing to complex batch operations across your entire CMS data model.
Make your AI actually useful.
Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.
Start using Cockpit (Self-hosted Headless CMS API) on VinkiusBatch Content Items
Requests data from multiple different content models in a single call.
Create Or Update Content Item
Creates a new content item, or overwrites an existing one if the ID is provided.
Delete Content Item
Permanently removes a specific content item using its unique identifier.
Get Asset Image
Generates resized versions or thumbnail images from an existing digital asset.
Get Asset
Fetches the technical metadata for a file or asset by its ID.
Get Content Item
Retrieves the complete data for a single content item using its unique identifier.
Get Lokalize Project Locale
Retrieves the specific translation data for a single language within a localization project.
Get Lokalize Project
Lists all available translations for an entire localization project.
Get Menu
Fetches the details of one specific navigation menu by its assigned name.
Get Page By Route
Retrieves content and structure for a page based on its URL route.
Get Sitemap
Gets the complete, current sitemap listing for all available pages.
List Content Items
Fetches a list of content items from any collection, supporting filtering and sorting.
List Menus
Gets a full list of all the menu structures defined in the CMS.
List Pages
Retrieves an enumeration of every page currently configured on the site.
List Routes
Provides a lightweight list containing all defined routes and their associated slugs.
Search Detektivo
Performs targeted searches within a specific indexed content area called Detektivo.
Submit Inbox
Submits form data collected in an inbox to be processed by the CMS.
Security and governance baked right in.
Pick your AI client below to get set up. Just create a Vinkius account, subscribe, and you're instantly up and running. We handle the entire backend infrastructure, delivering out-of-the-box support for HTTPS Streamable, SSE, and OAuth2—zero messy routing required.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with Cockpit (Self-hosted Headless CMS API), then connect any of our 5,100+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 5,100+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This connection provides 17 powerful capabilities that interface natively with Claude, ChatGPT, Cursor, and other compatible AI platforms. No middleware. No custom integration required.
The current way of updating content feels like navigating a maze.
Right now, changing anything—even correcting a typo in an old product description or pulling fresh assets for a campaign banner—requires logging into the CMS dashboard. You click through menus, navigate to specific collections, find the item by ID, and manually edit fields one by one. It's slow, it involves copy-pasting data between tabs, and you constantly worry about which version is the most current.
With this MCP connection, that process vanishes. Your agent handles the entire sequence. You just tell it what needs changing—like 'Update product 456 with the new price'—and the system executes the precise API call for you. It’s immediate data manipulation.
Manipulating CMS Data with Specific Tools
You no longer need to copy and paste IDs or worry about payload structures. If a developer needs a list of all available routes, they call `list_routes`. To get specific content for an article, they use `get_content_item`. For bulk changes, the system handles it with `batch_content_items`.
The difference is control. You're no longer limited by the UI flow; you talk directly to the data layer using tools like `create_or_update_content_item` and `delete_content_item`. It’s pure, programmatic access.
What your AI can actually do with this
This MCP gives you complete programmatic access to the data powering your Cockpit CMS instance. Instead of logging into a separate web dashboard to check a product SKU or update an article, you talk directly to it through your AI agent. You can list all content collections, fetch specific items by ID, and perform batch operations across multiple models in one go.
Need to change a price or correct localized text? Use the appropriate tool to write the data back. It’s designed for developers who need to query content structures while coding, and for marketing teams that need reliable access to multi-language assets. By connecting it through Vinkius, your agent can manage everything—from fetching asset metadata to updating entire menu structures—all from a single, unified connection point.
019e5d09-228f-72ba-958a-750c31fb4f9f Here's how it actually works
The bottom line is you get direct, API-level control over your CMS content and assets through natural language prompts.
Subscribe to this MCP and supply your Cockpit CMS instance URL and API Key.
Select any compatible AI client, like Cursor or Claude.
Ask your agent to perform a task, such as 'List all blog posts from the last month' or 'Update product 456 with new details'.
Who is this actually for?
This MCP is for developers who treat their CMS like a backend database. It’s for the Ops Engineer tired of juggling multiple dashboards to perform simple data audits, or the Content Editor who needs to update dozens of product descriptions without logging into the dedicated content portal.
Querying content structures and asset metadata directly from their IDE while writing application code.
Making bulk updates to product details or FAQs, ensuring data consistency across multiple collections.
Retrieving localized content and asset metadata needed for multi-channel campaign builds.
What Changes When You Connect
Manage complex data relationships using batch_content_items. Instead of running separate queries for products, blogs, and services, you fetch them all in one request.
Maintain site structure integrity by accessing page maps with list_pages or specific routes using get_page_by_route, ensuring your agent always knows what content exists.
Handle media assets without manual steps. Use get_asset to check metadata, and then use get_asset_image to generate the exact size image needed for a component.
Update product details or articles using create_or_update_content_item. You can modify fields like price or status directly via your agent call, bypassing the admin UI entirely.
Manage global content changes efficiently. With tools like get_lokalize_project and get_lokalize_project_locale, you keep multi-language sites consistent across all markets.
Eliminate manual data retrieval. Use list_content_items to fetch filtered lists—for example, 'all draft articles'—and pass that list directly into a downstream workflow.
See it in action
Need to build an inventory audit report.
An Ops Specialist needs to know every product SKU and its associated image metadata. They ask their agent: 'Give me the details for all items in the 'products' collection, plus the asset ID for each.' The agent uses list_content_items combined with get_asset, giving a single structured report.
A new landing page is ready but needs content updates.
A Marketing Manager provides updated copy and images. They prompt the agent: 'Update the main hero banner for the /landing route using this text and asset ID.' The agent uses get_page_by_route to find the target and then calls create_or_update_content_item.
Need to build a global content aggregator.
A Dev needs localized data for a new market. They ask: 'What are all the translations available for the project, and what does the German version of the 'About Us' page say?' The agent calls get_lokalize_project and then get_lokalize_project_locale.
Running a content cleanup job.
A Content Admin needs to remove several old, unused articles. They ask: 'Delete the three blog posts with IDs 123, 456, and 789.' The agent uses delete_content_item multiple times for precise deletion.
The honest tradeoffs
Trying to update a single item using batch tools.
A user might try to use the batch_content_items tool when they only need to modify one product's price. This is inefficient and overkill, resulting in unnecessary API overhead.
For modifying just one specific content record, always use create_or_update_content_item. If you genuinely need updates across five different collections at once, then use batch_content_items.
Using general listing tools for structured queries.
Asking 'list all content' when they actually need specific data like only the title and slug. This forces the agent to retrieve entire payloads unnecessarily, slowing down the workflow.
Use list_content_items with precise filtering arguments in your prompt (e.g., 'filter by collection=products and status=draft'). Don't just list; filter.
Ignoring asset types when generating images.
Asking the agent to resize an image without specifying the target dimensions, which can lead to distorted or incorrectly sized outputs for web components.
Always specify the required output size. Use get_asset first to check metadata, then call get_asset_image with concrete width and height parameters.
When It Fits, When It Doesn't
Use this MCP if your primary workflow requires reading or writing structured content data that lives in a self-hosted CMS backend. Specifically, you need to perform CRUD operations on articles, products, menus, or localized strings without using the web UI. Don't use it if: 1) You only need to read static site URLs—use simple file system tools instead. 2) Your content is stored in a general object database (like raw JSON files); you need a dedicated API connection for that. If your goal is simply viewing documentation, just look at the list_routes tool; don't try to create new data.
Questions you might have
How do I update a product price using create_or_update_content_item? +
You must call the create_or_update_content_item tool and include the specific product ID in your data payload. You'll send the new price field, and the MCP handles overwriting the old value.
What is the best way to find all my menus? +
Use list_menus. This tool pulls a full list of every menu structure defined in your CMS. If you only need one, use get_menu and provide the name.
Can I fetch content from multiple collections at once? +
Yes, that's what batch_content_items is for. It allows you to request data from several different content models in a single API call, improving performance.
How do I get the metadata for an image asset? +
Use the get_asset tool and provide the asset's ID. This returns technical details like file size, dimensions, and upload date without needing to generate a new image.
When I need to retrieve all translations for a project, how do I use the `get_lokalize_project` tool? +
The get_lokalize_project tool returns a list of every available locale for your specified Lokalize project. This lets you see exactly which languages are configured before fetching content. You then follow up by using get_lokalize_project_locale to pull the actual translated strings for a single language.
What parameters should I use with `list_content_items` if I only want to see posts from a specific date range? +
You pass filtering criteria, including start and end dates, directly into the list_content_items call. This narrows down results instantly, so you don't have to sift through thousands of entries. It's much faster than pulling everything and filtering it yourself.
If I need a complete overview of my site for SEO purposes, how do I use the `get_sitemap` tool? +
Calling get_sitemap pulls the full list of accessible routes and pages from your CMS. This is useful for auditing or ensuring search engines can find every piece of content. It gives you a comprehensive view of what's live on the site.
Before I use `delete_content_item`, how can I verify that an item exists and has the correct ID? +
You should always run get_content_item first, using the suspected ID. This confirms the data payload is present and valid before you attempt deletion. It prevents accidental removal of live content by confirming all details match what you expect.
Can I filter content items using Mongo-style queries? +
Yes! The list_content_items tool supports a filter parameter where you can pass a JSON object with Mongo-style query operators to precisely target your data.
Is it possible to resize images directly through the agent? +
Absolutely. Use the get_asset_image tool with parameters like w (width), h (height), and m (mode) to request processed versions of your stored image assets.
Can I fetch data from multiple collections at once? +
Yes, the batch_content_items tool allows you to define multiple models and their respective query parameters in a single JSON object to retrieve all required data in one go.
We've already built the connector for Cockpit CMS. Just plug in your AI agents and start using Vinkius.
No hosting. No infrastructure. No complex setup.
All 17 tools are live and waiting.
You're up and running in seconds.
Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.
Built, hosted, and secured by Vinkius. You just connect and go.