@decionis/mcp 0.4.0 → 0.6.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 +48 -2
- package/dist/AgentHookCli.js +2 -2
- package/dist/ManagedAgentHookCli.js +53653 -38089
- package/dist/agent/AgentIndex.js +2 -2
- package/dist/{chunk-GCE6PUYD.js → chunk-KV4WA4BV.js} +2 -2
- package/dist/{chunk-5Q6BCK32.js → chunk-XMQRTHQK.js} +29709 -17143
- package/dist/chunk-XMQRTHQK.js.map +1 -0
- package/dist/index.js +3005 -426
- package/dist/index.js.map +1 -1
- package/dist/policy_core.wasm +0 -0
- package/distribution/chatgpt/Install.md +40 -0
- package/distribution/chatgpt/Linked.md +25 -0
- package/distribution/chatgpt/Manifest.json +45 -0
- package/distribution/chatgpt/Mcp.json +9 -0
- package/distribution/chatgpt/Review.json +48 -0
- package/distribution/chatgpt/Setup.md +24 -0
- package/distribution/claude/Code.md +35 -0
- package/distribution/claude/Connected.json +13 -0
- package/distribution/claude/Install.md +47 -0
- package/distribution/claude/Manifest.json +11 -0
- package/distribution/claude/Mcp.json +8 -0
- package/distribution/common/Consent.md +22 -0
- package/distribution/common/Skill.md +111 -0
- package/distribution/copilot/Agent.json +22 -0
- package/distribution/copilot/App.json +34 -0
- package/distribution/copilot/AuthoringAgent.json +22 -0
- package/distribution/copilot/AuthoringApp.json +34 -0
- package/distribution/copilot/AuthoringInstructions.md +96 -0
- package/distribution/copilot/AuthoringM365.md +38 -0
- package/distribution/copilot/AuthoringPlugin.json +20 -0
- package/distribution/copilot/Connector.json +36 -0
- package/distribution/copilot/Instructions.md +21 -0
- package/distribution/copilot/M365.md +38 -0
- package/distribution/copilot/Plugin.json +20 -0
- package/distribution/copilot/Studio.md +16 -0
- package/distribution/schema/CopilotAgent.json +950 -0
- package/distribution/schema/CopilotApp.json +2927 -0
- package/distribution/schema/CopilotPlugin.json +723 -0
- package/distribution/schema/Mcp.json +120 -0
- package/distribution/schema/Plugin.json +65 -0
- package/distribution/schema/Source.md +36 -0
- package/package.json +27 -24
- package/dist/chunk-5Q6BCK32.js.map +0 -1
- /package/dist/{chunk-GCE6PUYD.js.map → chunk-KV4WA4BV.js.map} +0 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://agent-plugins.org/schemas/1.0.0/mcp.schema.json",
|
|
4
|
+
"title": "Agent Plugins MCP Configuration",
|
|
5
|
+
"description": "Machine-readable schema for mcp.json in Agent Plugins 1.0.0. The Agent Plugins specification defines additional semantic and operational requirements.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"$schema": {
|
|
9
|
+
"const": "https://agent-plugins.org/schemas/1.0.0/mcp.schema.json",
|
|
10
|
+
"description": "Canonical identifier of the MCP configuration schema for the Agent Plugins version targeted by this document."
|
|
11
|
+
},
|
|
12
|
+
"mcpServers": {
|
|
13
|
+
"type": "object",
|
|
14
|
+
"additionalProperties": {
|
|
15
|
+
"$ref": "#/$defs/server"
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"required": ["$schema", "mcpServers"],
|
|
20
|
+
"additionalProperties": false,
|
|
21
|
+
"$defs": {
|
|
22
|
+
"server": {
|
|
23
|
+
"title": "MCP server",
|
|
24
|
+
"oneOf": [
|
|
25
|
+
{
|
|
26
|
+
"$ref": "#/$defs/stdioServer"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"$ref": "#/$defs/streamableHttpServer"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"$ref": "#/$defs/sseServer"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"stdioServer": {
|
|
37
|
+
"title": "stdio MCP server",
|
|
38
|
+
"type": "object",
|
|
39
|
+
"properties": {
|
|
40
|
+
"type": {
|
|
41
|
+
"const": "stdio"
|
|
42
|
+
},
|
|
43
|
+
"command": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"minLength": 1,
|
|
46
|
+
"description": "Executable token. Resolution rules are defined by the Agent Plugins specification."
|
|
47
|
+
},
|
|
48
|
+
"args": {
|
|
49
|
+
"type": "array",
|
|
50
|
+
"items": {
|
|
51
|
+
"type": "string"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"env": {
|
|
55
|
+
"type": "object",
|
|
56
|
+
"propertyNames": {
|
|
57
|
+
"not": {
|
|
58
|
+
"enum": ["PLUGIN_ROOT", "PLUGIN_DATA"]
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"additionalProperties": {
|
|
62
|
+
"type": "string"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
"cwd": {
|
|
66
|
+
"type": "string",
|
|
67
|
+
"pattern": "^(?:\\./|\\$\\{PLUGIN_ROOT\\}(?:/|$)|\\$\\{PLUGIN_DATA\\}(?:/|$))",
|
|
68
|
+
"description": "Plugin-relative, PLUGIN_ROOT-rooted, or PLUGIN_DATA-rooted working directory. Filesystem containment is validated separately."
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"required": ["type", "command"],
|
|
72
|
+
"additionalProperties": false
|
|
73
|
+
},
|
|
74
|
+
"streamableHttpServer": {
|
|
75
|
+
"title": "Streamable HTTP MCP server",
|
|
76
|
+
"type": "object",
|
|
77
|
+
"properties": {
|
|
78
|
+
"type": {
|
|
79
|
+
"const": "streamable-http"
|
|
80
|
+
},
|
|
81
|
+
"url": {
|
|
82
|
+
"type": "string",
|
|
83
|
+
"minLength": 1,
|
|
84
|
+
"description": "MCP endpoint URL. URL semantics are defined by the Agent Plugins specification."
|
|
85
|
+
},
|
|
86
|
+
"headers": {
|
|
87
|
+
"$ref": "#/$defs/headers"
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"required": ["type", "url"],
|
|
91
|
+
"additionalProperties": false
|
|
92
|
+
},
|
|
93
|
+
"sseServer": {
|
|
94
|
+
"title": "Legacy HTTP+SSE MCP server",
|
|
95
|
+
"type": "object",
|
|
96
|
+
"properties": {
|
|
97
|
+
"type": {
|
|
98
|
+
"const": "sse"
|
|
99
|
+
},
|
|
100
|
+
"url": {
|
|
101
|
+
"type": "string",
|
|
102
|
+
"minLength": 1,
|
|
103
|
+
"description": "MCP endpoint URL. URL semantics are defined by the Agent Plugins specification."
|
|
104
|
+
},
|
|
105
|
+
"headers": {
|
|
106
|
+
"$ref": "#/$defs/headers"
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
"required": ["type", "url"],
|
|
110
|
+
"additionalProperties": false
|
|
111
|
+
},
|
|
112
|
+
"headers": {
|
|
113
|
+
"title": "HTTP headers",
|
|
114
|
+
"type": "object",
|
|
115
|
+
"additionalProperties": {
|
|
116
|
+
"type": "string"
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
|
|
4
|
+
"title": "Agent Plugins Manifest",
|
|
5
|
+
"description": "Machine-readable schema for plugin.json in Agent Plugins 1.0.0. The Agent Plugins specification defines additional semantic and operational requirements.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"$schema": {
|
|
9
|
+
"const": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
|
|
10
|
+
"description": "Canonical identifier of the plugin manifest schema for the Agent Plugins version targeted by this document."
|
|
11
|
+
},
|
|
12
|
+
"name": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"minLength": 1,
|
|
15
|
+
"maxLength": 64,
|
|
16
|
+
"pattern": "^(?!.*(?:--|\\.\\.))[a-z0-9](?:[a-z0-9.-]*[a-z0-9])?$",
|
|
17
|
+
"description": "Human-readable plugin name."
|
|
18
|
+
},
|
|
19
|
+
"version": {
|
|
20
|
+
"type": "string"
|
|
21
|
+
},
|
|
22
|
+
"description": {
|
|
23
|
+
"type": "string"
|
|
24
|
+
},
|
|
25
|
+
"author": {
|
|
26
|
+
"type": "object",
|
|
27
|
+
"properties": {
|
|
28
|
+
"name": {
|
|
29
|
+
"type": "string"
|
|
30
|
+
},
|
|
31
|
+
"email": {
|
|
32
|
+
"type": "string"
|
|
33
|
+
},
|
|
34
|
+
"url": {
|
|
35
|
+
"type": "string"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"additionalProperties": false
|
|
39
|
+
},
|
|
40
|
+
"homepage": {
|
|
41
|
+
"type": "string"
|
|
42
|
+
},
|
|
43
|
+
"repository": {
|
|
44
|
+
"type": "string"
|
|
45
|
+
},
|
|
46
|
+
"license": {
|
|
47
|
+
"type": "string"
|
|
48
|
+
},
|
|
49
|
+
"keywords": {
|
|
50
|
+
"type": "array",
|
|
51
|
+
"items": {
|
|
52
|
+
"type": "string"
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"extensions": {
|
|
56
|
+
"type": "object",
|
|
57
|
+
"description": "Client-specific manifest data keyed by reverse-domain extension namespace. Agent Plugins assigns no semantics to namespace object contents.",
|
|
58
|
+
"additionalProperties": {
|
|
59
|
+
"type": "object"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"required": ["$schema", "name"],
|
|
64
|
+
"additionalProperties": false
|
|
65
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
Agent Plugins 1.0.0 validation schemas, retrieved 8 October 2026.
|
|
2
|
+
|
|
3
|
+
- `Plugin.json` from <https://agent-plugins.org/schemas/1.0.0/plugin.schema.json>;
|
|
4
|
+
SHA-256 `0a4aad95ce337878ad38802ebf0daa3fde76abe3f65400c86bcbb1ec0b3ab883`.
|
|
5
|
+
- `Mcp.json` from <https://agent-plugins.org/schemas/1.0.0/mcp.schema.json>;
|
|
6
|
+
SHA-256 `6539175bfcdf43085855183e86da40ea94b166547a72b47ae9a0a390516d3acb`.
|
|
7
|
+
|
|
8
|
+
These machine-readable format schemas are retained for deterministic offline
|
|
9
|
+
package validation. Semantic OpenAI review, consent and publication checks are
|
|
10
|
+
separate. Update the schemas and recorded hashes together after a reviewed
|
|
11
|
+
provider format change.
|
|
12
|
+
|
|
13
|
+
OpenAI listing text limits checked 9 October 2026 against the
|
|
14
|
+
[submission field reference](https://developers.openai.com/plugins/deploy/submission#listing-metadata).
|
|
15
|
+
`PolicyChatgptFormat` additionally checks the listing name, subtitle, description,
|
|
16
|
+
developer name, capability labels and starter prompts. The portable schema alone
|
|
17
|
+
accepts OpenAI extension metadata that exceeds these submission limits. These
|
|
18
|
+
checks do not establish publisher access, live OAuth qualification or review readiness.
|
|
19
|
+
|
|
20
|
+
Microsoft formats retained 8 October 2026:
|
|
21
|
+
|
|
22
|
+
- `CopilotPlugin.json` from <https://developer.microsoft.com/json-schemas/copilot/plugin/v2.4/schema.json>;
|
|
23
|
+
SHA-256 `a9b7b1e10d1c1292ca4a64d4c5495ccf3355fcb76b12a94984c597e8974123ee`.
|
|
24
|
+
- `CopilotAgent.json` from <https://developer.microsoft.com/json-schemas/copilot/declarative-agent/v1.6/schema.json>;
|
|
25
|
+
SHA-256 `08bca0093ef26ae53a8aa41b1568d4ddcf2134ba3b31db3412d1fcf029bd3c40`.
|
|
26
|
+
- `CopilotApp.json` from <https://developer.microsoft.com/json-schemas/teams/v1.25/MicrosoftTeams.schema.json>;
|
|
27
|
+
SHA-256 `a5915b255f54abb46308aee83d909d0fc7a5172969101b321e66fe8327b3cbd8`.
|
|
28
|
+
|
|
29
|
+
Hashes describe the retained, repository-formatted bytes. Microsoft labels these
|
|
30
|
+
schemas draft-04 while also using newer keywords such as `$defs`, `const` and
|
|
31
|
+
`if`/`then`. `PolicyCopilotFormat` removes only the dialect declaration in memory
|
|
32
|
+
and validates all retained constraints with Ajv's draft-07 implementation. No
|
|
33
|
+
external schema resolution or provider login occurs during package generation.
|
|
34
|
+
The app template is checked with an in-memory fixture UUID that is never emitted.
|
|
35
|
+
Configured app bundles require the operator's actual app and OAuth configuration
|
|
36
|
+
IDs. A schema-valid sample is not a registered or certified Microsoft app.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decionis/mcp",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Local
|
|
3
|
+
"version": "0.6.0",
|
|
4
|
+
"description": "Local Decionis execution checks and hooks, with opt-in delegated PolicyAgent authoring and independent workspace review.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"mcpName": "com.decionis/mcp",
|
|
@@ -46,7 +46,8 @@
|
|
|
46
46
|
"hooks",
|
|
47
47
|
"commands",
|
|
48
48
|
".claude-plugin",
|
|
49
|
-
"README.md"
|
|
49
|
+
"README.md",
|
|
50
|
+
"distribution"
|
|
50
51
|
],
|
|
51
52
|
"engines": {
|
|
52
53
|
"node": ">=20"
|
|
@@ -54,6 +55,25 @@
|
|
|
54
55
|
"publishConfig": {
|
|
55
56
|
"access": "public"
|
|
56
57
|
},
|
|
58
|
+
"dependencies": {
|
|
59
|
+
"ajv": "^8.20.0",
|
|
60
|
+
"ajv-formats": "^3.0.1",
|
|
61
|
+
"fast-json-stringify": "^7.0.1",
|
|
62
|
+
"fastify": "^5.12.5"
|
|
63
|
+
},
|
|
64
|
+
"devDependencies": {
|
|
65
|
+
"@types/node": "^20.11.30",
|
|
66
|
+
"@typescript-eslint/eslint-plugin": "^8.71.0",
|
|
67
|
+
"@typescript-eslint/parser": "^8.71.0",
|
|
68
|
+
"tsup": "^8.0.2",
|
|
69
|
+
"tsx": "^4.23.15",
|
|
70
|
+
"typescript": "^5.6.3",
|
|
71
|
+
"vitest": "^2.1.8",
|
|
72
|
+
"@decionis/shared": "0.0.0",
|
|
73
|
+
"@decionis/verify": "0.5.0",
|
|
74
|
+
"@decionis/protocol": "0.0.0",
|
|
75
|
+
"@decionis/sdk": "0.3.0"
|
|
76
|
+
},
|
|
57
77
|
"scripts": {
|
|
58
78
|
"dev": "tsx src/index.ts",
|
|
59
79
|
"agent-hook": "tsx src/AgentHookCli.ts",
|
|
@@ -66,25 +86,8 @@
|
|
|
66
86
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
67
87
|
"lint": "eslint .",
|
|
68
88
|
"format": "prettier --check . --ignore-path ../../.prettierignore",
|
|
69
|
-
"format:fix": "prettier --write . --ignore-path ../../.prettierignore"
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
"ajv": "^8.17.1",
|
|
73
|
-
"ajv-formats": "^3.0.1",
|
|
74
|
-
"fast-json-stringify": "^7.0.1",
|
|
75
|
-
"fastify": "^5.10.0"
|
|
76
|
-
},
|
|
77
|
-
"devDependencies": {
|
|
78
|
-
"@decionis/protocol": "workspace:*",
|
|
79
|
-
"@decionis/sdk": "workspace:*",
|
|
80
|
-
"@decionis/shared": "workspace:*",
|
|
81
|
-
"@decionis/verify": "workspace:*",
|
|
82
|
-
"@types/node": "^20.11.30",
|
|
83
|
-
"@typescript-eslint/eslint-plugin": "^8.44.0",
|
|
84
|
-
"@typescript-eslint/parser": "^8.44.0",
|
|
85
|
-
"tsup": "^8.0.2",
|
|
86
|
-
"tsx": "^4.19.2",
|
|
87
|
-
"typescript": "^5.6.3",
|
|
88
|
-
"vitest": "^2.1.8"
|
|
89
|
+
"format:fix": "prettier --write . --ignore-path ../../.prettierignore",
|
|
90
|
+
"package:policyagent": "tsx --conditions=development scripts/PackagePolicyAgent.ts",
|
|
91
|
+
"qualify:policyagent": "tsx --conditions=development scripts/QualifyPolicyAgent.ts"
|
|
89
92
|
}
|
|
90
|
-
}
|
|
93
|
+
}
|