@kentico/management-api-mcp 31.2.2-preview → 31.3.0-preview

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.
Files changed (3) hide show
  1. package/README.md +7 -57
  2. package/dist/index.js +7 -2
  3. package/package.json +31 -61
package/README.md CHANGED
@@ -1,62 +1,12 @@
1
- # Xperience by Kentico ManagementApiMcp
1
+ # Xperience by Kentico - Management API MCP server
2
2
 
3
- Model Context Protocol (MCP) server for managing data in Xperience by Kentico.
3
+ This package provides a Model Context Protocol (MCP) server that allows AI tools to work with the Xperience by Kentico management API. Currently, the management API allows interaction with content types and reusable field schemas.
4
4
 
5
- ## Development
5
+ ## Documentation
6
6
 
7
- To develop the ManagementApiMcp
7
+ For setup instructions and usage guidelines, refer to the official Xperience by Kentico documentation:
8
+ [Content type management API](https://docs.kentico.com/x/management_api_xp)
8
9
 
9
- 1. Run the `npm install` to install packages
10
- 2. Run the `npm run dev` to start watcher that will rebuild the mcp on any change.
10
+ ## License
11
11
 
12
- To run the development Management API MCP in cursor/vscode/etc:
13
- 1. Run `npm run dev` or `npm run build` at least once
14
- 2. Add Kentico.Xperience.ManagementApi integration package to the DancingGoat and call `AddKenticoManagementApi()` / `UseKenticoManagementApi()`. Specify 32char length secret.
15
- 3. Run the DancingGoat
16
- 4. Update the `./mcp-config.json` to include correct secret and run `npm run debug`.
17
- 5. Otherwise, you can add the following config to vscode/cursor/etc.:
18
-
19
- ```json
20
- {
21
- "mcpServers": {
22
- "xperience": {
23
- "type": "stdio",
24
- "command": "node",
25
- "args": ["C:\\CMS\\XbK\\CMSSolution\\Integrations\\Kentico.Xperience.ManagementApiMcp\\dist\\index.js"],
26
- "env": {
27
- "NODE_OPTIONS": "--use-system-ca",
28
- "CACHE_OPENAPI": "false",
29
- "MANAGEMENT_API_URL": "https://localhost:5001/kentico-api/management",
30
- "MANAGEMENT_API_SECRET": "<your-32+char-secret>"
31
- }
32
- }
33
- }
34
- }
35
- ```
36
-
37
- Or prettier one if you execute `npm link`:
38
-
39
- ```json
40
- {
41
- "mcpServers": {
42
- "xperience": {
43
- "type": "stdio",
44
- "command": "xperience-mcp",
45
- "env": {
46
- "NODE_OPTIONS": "--use-system-ca",
47
- "CACHE_OPENAPI": "false",
48
- "MANAGEMENT_API_URL": "https://localhost:5001/kentico-api/management",
49
- "MANAGEMENT_API_SECRET": "<your-32+char-secret>"
50
- }
51
- }
52
- }
53
- }
54
- ```
55
-
56
- ## Custom environment variables
57
-
58
- The following environment variables are used:
59
-
60
- - `MANAGEMENT_API_URL` - path to the Management API endpoint
61
- - `MANAGEMENT_API_SECRET` - required, secret used for Authorization header when calling the Management API (must be at least 32 characters)
62
- - `CACHE_OPENAPI` - optional, can disable caching of OpenAPI spec for development purposes.
12
+ See LICENSE.txt for license information.
package/dist/index.js CHANGED
@@ -1796,11 +1796,16 @@ var StdioTransport = class {
1796
1796
  if (line.trim()) {
1797
1797
  try {
1798
1798
  const message = JSON.parse(line);
1799
+ const is_init = message.method === "initialize";
1800
+ const session_info = is_init ? {
1801
+ clientCapabilities: message.params?.capabilities,
1802
+ clientInfo: message.params?.clientInfo
1803
+ } : this.#session_info;
1799
1804
  const response = await this.#server.receive(message, {
1800
1805
  custom: ctx,
1801
1806
  sessionInfo: (
1802
1807
  /** @type {Context["sessionInfo"]} */
1803
- this.#session_info
1808
+ session_info
1804
1809
  )
1805
1810
  });
1806
1811
  if (response) {
@@ -3346,7 +3351,7 @@ var ImplementationSchema = object({
3346
3351
  websiteUrl: optional(string()),
3347
3352
  ...IconsSchema.entries
3348
3353
  });
3349
- var ClientCapabilitiesSchema = object({
3354
+ var ClientCapabilitiesSchema = looseObject({
3350
3355
  /**
3351
3356
  * Experimental, non-standard capabilities that the client supports.
3352
3357
  */
package/package.json CHANGED
@@ -1,61 +1,31 @@
1
- {
2
- "name": "@kentico/management-api-mcp",
3
- "version": "31.2.2-preview",
4
- "description": "Model Context Protocol server for Xperience by Kentico Management API",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "bin": {
8
- "xperience-mcp": "./dist/index.js"
9
- },
10
- "files": [
11
- "dist"
12
- ],
13
- "scripts": {
14
- "start": "node dist/index.js",
15
- "debug": "mcp-inspector --config .\\mcp-config.json",
16
- "dev": "esbuild src/index.ts --bundle --platform=node --target=node22 --format=esm --outfile=dist/index.js --sourcemap --watch",
17
- "build": "esbuild src/index.ts --bundle --platform=node --target=node22 --format=esm --outfile=dist/index.js",
18
- "lint": "eslint src/**/*.ts",
19
- "lint:fix": "eslint src/**/*.ts --fix",
20
- "format": "prettier --check \"src/**/*.ts\"",
21
- "format:fix": "prettier --write \"src/**/*.ts\"",
22
- "version:bump": "npm version",
23
- "prepack": "node -e \"require('fs').copyFileSync('PACKAGE_README.md', 'README.md')\" && clean-pkg-json"
24
- },
25
- "keywords": [
26
- "kentico",
27
- "xperience",
28
- "mcp",
29
- "model-context-protocol",
30
- "management-api"
31
- ],
32
- "author": "Kentico",
33
- "license": "SEE LICENSE IN LICENSE.txt",
34
- "dependencies": {
35
- "tmcp": "^1.19.2",
36
- "@tmcp/adapter-zod": "^0.1.7",
37
- "@tmcp/transport-stdio": "^0.4.1",
38
- "zod": "^4.0.5"
39
- },
40
- "devDependencies": {
41
- "@eslint/js": "^9.39.2",
42
- "@modelcontextprotocol/inspector": "^0.19.0",
43
- "@types/node": "22.19.9",
44
- "@typescript-eslint/eslint-plugin": "^8.54.0",
45
- "@typescript-eslint/parser": "^8.54.0",
46
- "esbuild": "^0.27.3",
47
- "eslint": "^9.39.2",
48
- "prettier": "^3.8.1",
49
- "typescript": "5.9.3",
50
- "typescript-eslint": "^8.54.0",
51
- "clean-pkg-json": "^1.3.0"
52
- },
53
- "overrides": {
54
- "serve-handler": {
55
- "minimatch": "3.1.3"
56
- }
57
- },
58
- "engines": {
59
- "node": ">= 22.0.0"
60
- }
61
- }
1
+ {
2
+ "name": "@kentico/management-api-mcp",
3
+ "version": "31.3.0-preview",
4
+ "description": "Model Context Protocol server for Xperience by Kentico Management API",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "xperience-mcp": "./dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist"
12
+ ],
13
+ "keywords": [
14
+ "kentico",
15
+ "xperience",
16
+ "mcp",
17
+ "model-context-protocol",
18
+ "management-api"
19
+ ],
20
+ "author": "Kentico",
21
+ "license": "SEE LICENSE IN LICENSE.txt",
22
+ "dependencies": {
23
+ "tmcp": "^1.19.3",
24
+ "@tmcp/adapter-zod": "^0.1.7",
25
+ "@tmcp/transport-stdio": "^0.4.2",
26
+ "zod": "^4.3.6"
27
+ },
28
+ "engines": {
29
+ "node": ">= 22.0.0"
30
+ }
31
+ }