@contentful/mcp-server 1.19.2 → 1.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +85 -75
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -63,15 +63,15 @@ npm run build
|
|
|
63
63
|
|
|
64
64
|
### Environment Variables
|
|
65
65
|
|
|
66
|
-
| Environment Variable | Required | Default Value | Description
|
|
67
|
-
| ------------------------------------ | -------- | -------------------- |
|
|
68
|
-
| `CONTENTFUL_MANAGEMENT_ACCESS_TOKEN` | ✅ Yes | - | Your Contentful Management API personal access token
|
|
69
|
-
| `SPACE_ID` | ✅ Yes | - | Your Contentful Space ID
|
|
70
|
-
| `ENVIRONMENT_ID` | ❌ No | `master` | Target environment within your space
|
|
71
|
-
| `CONTENTFUL_HOST` | ❌ No | `api.contentful.com` | Contentful API host
|
|
72
|
-
| `EXPORT_BASE_DIR` | ❌ No | `process.cwd()`
|
|
73
|
-
| `NODE_ENV` | ❌ No | `production` | Node Environment to run in
|
|
74
|
-
| `MAX_BULK_SIZE` | ❌ No | `10` | Maximum number of IDs allowed in a single bulk-operation tool call (1–100). Caps publish/unpublish/archive/unarchive on entries and assets. Mitigates accidental mass operations from AI hallucinations.
|
|
66
|
+
| Environment Variable | Required | Default Value | Description |
|
|
67
|
+
| ------------------------------------ | -------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
68
|
+
| `CONTENTFUL_MANAGEMENT_ACCESS_TOKEN` | ✅ Yes | - | Your Contentful Management API personal access token |
|
|
69
|
+
| `SPACE_ID` | ✅ Yes | - | Your Contentful Space ID |
|
|
70
|
+
| `ENVIRONMENT_ID` | ❌ No | `master` | Target environment within your space |
|
|
71
|
+
| `CONTENTFUL_HOST` | ❌ No | `api.contentful.com` | Contentful API host |
|
|
72
|
+
| `EXPORT_BASE_DIR` | ❌ No | `process.cwd()` | Server-controlled root directory for `export_space` output. The tool creates a dedicated subdirectory per export. |
|
|
73
|
+
| `NODE_ENV` | ❌ No | `production` | Node Environment to run in |
|
|
74
|
+
| `MAX_BULK_SIZE` | ❌ No | `10` | Maximum number of IDs allowed in a single bulk-operation tool call (1–100). Caps publish/unpublish/archive/unarchive on entries and assets. Mitigates accidental mass operations from AI hallucinations. |
|
|
75
75
|
| `ENABLE_EXO_TOOLS` | ❌ No | `false` | Opt in to Experience Orchestration (ExO) tools. Set to `true` to register the ExO tool collections (components, data assemblies, design tokens, experiences, experience templates, experience fragments). Also requires the token to hold the `exoM1` entitlement in at least one accessible org — both gates must pass. |
|
|
76
76
|
|
|
77
77
|
### Configuration
|
|
@@ -99,72 +99,82 @@ Below is a sample configuration:
|
|
|
99
99
|
|
|
100
100
|
## 🛠️ Available Tools
|
|
101
101
|
|
|
102
|
-
| Category | Tool Name | Description
|
|
103
|
-
| ------------------------- | ---------------------------------- |
|
|
104
|
-
| **Context & Setup** | `get_initial_context` | Initialize connection and get usage instructions
|
|
105
|
-
| **Content Types** | `list_content_types` | List content types (max 10 per request)
|
|
106
|
-
| | `get_content_type` | Get detailed content type information
|
|
107
|
-
| | `create_content_type` | Create new content types
|
|
108
|
-
| | `update_content_type` | Modify existing content types
|
|
109
|
-
| | `publish_content_type` | Publish content type changes
|
|
110
|
-
| | `unpublish_content_type` | Unpublish content types
|
|
111
|
-
| | `delete_content_type` | Remove content types
|
|
112
|
-
| **Entries** | `search_entries` | Search and filter entries in your space
|
|
113
|
-
| | `get_entry` | Retrieve specific entries
|
|
114
|
-
| | `get_entry_snapshot` | Retrieve entry version history (snapshots)
|
|
115
|
-
| | `create_entry` | Create new content entries with locale support
|
|
116
|
-
| | `update_entry` | Modify existing entries with locale support
|
|
117
|
-
| | `publish_entry` | Publish entries (single or bulk up to 100)
|
|
118
|
-
| | `unpublish_entry` | Unpublish entries (single or bulk up to 100)
|
|
119
|
-
| | `delete_entry` | Remove entries
|
|
120
|
-
| | `resolve_entry_references` | Recursively resolve an entry's references tree
|
|
121
|
-
| **Editor Interfaces** | `list_editor_interfaces` | List all editor interfaces in a space
|
|
122
|
-
| | `get_editor_interface` | Get editor interface for a content type
|
|
123
|
-
| | `update_editor_interface` | Update field controls, sidebars, and layouts
|
|
124
|
-
| **Assets** | `upload_asset` | Upload new assets
|
|
125
|
-
| | `list_assets` | List and browse assets (max 3 per request)
|
|
126
|
-
| | `get_asset` | Retrieve specific assets
|
|
127
|
-
| | `update_asset` | Modify asset metadata
|
|
128
|
-
| | `publish_asset` | Publish assets (single or bulk up to 100)
|
|
129
|
-
| | `unpublish_asset` | Unpublish assets (single or bulk up to 100)
|
|
130
|
-
| | `delete_asset` | Remove assets
|
|
131
|
-
| **Spaces & Environments** | `list_spaces` | List available spaces (max 10 per request)
|
|
132
|
-
| | `get_space` | Get space details
|
|
133
|
-
| | `list_environments` | List environments in a space
|
|
134
|
-
| | `create_environment` | Create new environments
|
|
135
|
-
| | `delete_environment` | Remove environments
|
|
136
|
-
| **Locales** | `list_locales` | List all locales in your environment
|
|
137
|
-
| | `get_locale` | Retrieve specific locale information
|
|
138
|
-
| | `create_locale` | Create new locales for multi-language content
|
|
139
|
-
| | `update_locale` | Modify existing locale settings
|
|
140
|
-
| | `delete_locale` | Remove locales from environment
|
|
141
|
-
| **Tags** | `list_tags` | List all tags in an environment
|
|
142
|
-
| | `create_tag` | Create new tags with public/private visibility
|
|
143
|
-
| **Organizations** | `list_orgs` | List organizations user has access to
|
|
144
|
-
| | `get_org` | Get details of a specific organization
|
|
145
|
-
| **
|
|
146
|
-
| | `
|
|
147
|
-
| | `
|
|
148
|
-
| | `
|
|
149
|
-
| | `
|
|
150
|
-
| | `
|
|
151
|
-
| | `
|
|
152
|
-
| | `
|
|
153
|
-
| | `
|
|
154
|
-
|
|
|
155
|
-
|
|
|
156
|
-
| | `
|
|
157
|
-
| | `
|
|
158
|
-
| | `
|
|
159
|
-
|
|
|
160
|
-
| | `
|
|
161
|
-
| | `
|
|
162
|
-
| | `
|
|
163
|
-
| | `
|
|
164
|
-
| **
|
|
165
|
-
| | `
|
|
166
|
-
| | `
|
|
167
|
-
| | `
|
|
102
|
+
| Category | Tool Name | Description |
|
|
103
|
+
| ------------------------- | ---------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
104
|
+
| **Context & Setup** | `get_initial_context` | Initialize connection and get usage instructions |
|
|
105
|
+
| **Content Types** | `list_content_types` | List content types (max 10 per request) |
|
|
106
|
+
| | `get_content_type` | Get detailed content type information |
|
|
107
|
+
| | `create_content_type` | Create new content types |
|
|
108
|
+
| | `update_content_type` | Modify existing content types |
|
|
109
|
+
| | `publish_content_type` | Publish content type changes |
|
|
110
|
+
| | `unpublish_content_type` | Unpublish content types |
|
|
111
|
+
| | `delete_content_type` | Remove content types |
|
|
112
|
+
| **Entries** | `search_entries` | Search and filter entries in your space |
|
|
113
|
+
| | `get_entry` | Retrieve specific entries |
|
|
114
|
+
| | `get_entry_snapshot` | Retrieve entry version history (snapshots) |
|
|
115
|
+
| | `create_entry` | Create new content entries with locale support |
|
|
116
|
+
| | `update_entry` | Modify existing entries with locale support |
|
|
117
|
+
| | `publish_entry` | Publish entries (single or bulk up to 100) |
|
|
118
|
+
| | `unpublish_entry` | Unpublish entries (single or bulk up to 100) |
|
|
119
|
+
| | `delete_entry` | Remove entries |
|
|
120
|
+
| | `resolve_entry_references` | Recursively resolve an entry's references tree |
|
|
121
|
+
| **Editor Interfaces** | `list_editor_interfaces` | List all editor interfaces in a space |
|
|
122
|
+
| | `get_editor_interface` | Get editor interface for a content type |
|
|
123
|
+
| | `update_editor_interface` | Update field controls, sidebars, and layouts |
|
|
124
|
+
| **Assets** | `upload_asset` | Upload new assets |
|
|
125
|
+
| | `list_assets` | List and browse assets (max 3 per request) |
|
|
126
|
+
| | `get_asset` | Retrieve specific assets |
|
|
127
|
+
| | `update_asset` | Modify asset metadata |
|
|
128
|
+
| | `publish_asset` | Publish assets (single or bulk up to 100) |
|
|
129
|
+
| | `unpublish_asset` | Unpublish assets (single or bulk up to 100) |
|
|
130
|
+
| | `delete_asset` | Remove assets |
|
|
131
|
+
| **Spaces & Environments** | `list_spaces` | List available spaces (max 10 per request) |
|
|
132
|
+
| | `get_space` | Get space details |
|
|
133
|
+
| | `list_environments` | List environments in a space |
|
|
134
|
+
| | `create_environment` | Create new environments |
|
|
135
|
+
| | `delete_environment` | Remove environments |
|
|
136
|
+
| **Locales** | `list_locales` | List all locales in your environment |
|
|
137
|
+
| | `get_locale` | Retrieve specific locale information |
|
|
138
|
+
| | `create_locale` | Create new locales for multi-language content |
|
|
139
|
+
| | `update_locale` | Modify existing locale settings |
|
|
140
|
+
| | `delete_locale` | Remove locales from environment |
|
|
141
|
+
| **Tags** | `list_tags` | List all tags in an environment |
|
|
142
|
+
| | `create_tag` | Create new tags with public/private visibility |
|
|
143
|
+
| **Organizations** | `list_orgs` | List organizations user has access to |
|
|
144
|
+
| | `get_org` | Get details of a specific organization |
|
|
145
|
+
| **Releases** | `list_releases` | List releases (max 10 per request) |
|
|
146
|
+
| | `get_release` | Retrieve a release |
|
|
147
|
+
| | `create_release` | Create a release with Entries/Assets |
|
|
148
|
+
| | `update_release` | Modify a release's title and/or contents |
|
|
149
|
+
| | `delete_release` | Remove a release (and its linked release actions) |
|
|
150
|
+
| | `publish_release` | Publish a release (async; check via `get_release_action`) |
|
|
151
|
+
| | `unpublish_release` | Unpublish a release (async; check via `get_release_action`) |
|
|
152
|
+
| | `validate_release` | Validate a release, optionally against publish/unpublish |
|
|
153
|
+
| | `get_release_action` | Check the status of a queued release action |
|
|
154
|
+
| | `list_release_actions` | List release actions (max 10 per request) |
|
|
155
|
+
| **AI Actions** | `create_ai_action` | Create custom AI-powered workflows |
|
|
156
|
+
| | `invoke_ai_action` | Invoke AI action with variables (bulk support) |
|
|
157
|
+
| | `get_ai_action_invocation` | Get AI action invocation details |
|
|
158
|
+
| | `get_ai_action` | Retrieve AI action details and configuration |
|
|
159
|
+
| | `list_ai_actions` | List AI actions in a space (max 3 per request) |
|
|
160
|
+
| | `update_ai_action` | Update existing AI actions |
|
|
161
|
+
| | `publish_ai_action` | Publish AI actions for use |
|
|
162
|
+
| | `unpublish_ai_action` | Unpublish AI actions |
|
|
163
|
+
| | `delete_ai_action` | Remove AI actions |
|
|
164
|
+
| **Taxonomy Concepts** | `create_concept` | Create new taxonomy concepts with localization |
|
|
165
|
+
| | `get_concept` | Retrieve specific taxonomy concept |
|
|
166
|
+
| | `list_concepts` | List concepts with filtering and hierarchy |
|
|
167
|
+
| | `update_concept` | Update taxonomy concept properties |
|
|
168
|
+
| | `delete_concept` | Remove taxonomy concepts |
|
|
169
|
+
| **Taxonomy Schemes** | `create_concept_scheme` | Create new taxonomy concept schemes |
|
|
170
|
+
| | `get_concept_scheme` | Retrieve specific concept scheme |
|
|
171
|
+
| | `list_concept_schemes` | List concept schemes with pagination |
|
|
172
|
+
| | `update_concept_scheme` | Update concept scheme properties |
|
|
173
|
+
| | `delete_concept_scheme` | Remove concept schemes |
|
|
174
|
+
| **Space Migration** | `space_to_space_migration_handler` | Enable/disable space migration workflow |
|
|
175
|
+
| | `space_to_space_param_collection` | Collect parameters for migration workflow |
|
|
176
|
+
| | `export_space` | Export space to file for migration |
|
|
177
|
+
| | `import_space` | Import space from exported file |
|
|
168
178
|
| **Usage** | `get_usages` | Get aggregated usage metrics for an organization, optionally filtered or grouped by space |
|
|
169
179
|
|
|
170
180
|
## 🤝 Contributing
|
package/dist/index.js
CHANGED
|
@@ -4129,7 +4129,7 @@ init_esm_shims();
|
|
|
4129
4129
|
|
|
4130
4130
|
// src/mcpVersion.ts
|
|
4131
4131
|
init_esm_shims();
|
|
4132
|
-
var MCP_VERSION = "1.
|
|
4132
|
+
var MCP_VERSION = "1.20.0";
|
|
4133
4133
|
|
|
4134
4134
|
// src/getVersion.ts
|
|
4135
4135
|
var getVersion = () => {
|
|
@@ -4175,6 +4175,7 @@ async function registerAllTools(server) {
|
|
|
4175
4175
|
const localeTools = tools.getLocaleTools();
|
|
4176
4176
|
const orgTools = tools.getOrgTools();
|
|
4177
4177
|
const spaceTools = tools.getSpaceTools();
|
|
4178
|
+
const releaseTools = tools.getReleaseTools();
|
|
4178
4179
|
const tagTools = tools.getTagTools();
|
|
4179
4180
|
const taxonomyTools = tools.getTaxonomyTools();
|
|
4180
4181
|
const usageTools = tools.getUsageTools();
|
|
@@ -4190,6 +4191,7 @@ async function registerAllTools(server) {
|
|
|
4190
4191
|
localeTools,
|
|
4191
4192
|
orgTools,
|
|
4192
4193
|
spaceTools,
|
|
4194
|
+
releaseTools,
|
|
4193
4195
|
tagTools,
|
|
4194
4196
|
taxonomyTools,
|
|
4195
4197
|
usageTools,
|