@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.
Files changed (44) hide show
  1. package/README.md +48 -2
  2. package/dist/AgentHookCli.js +2 -2
  3. package/dist/ManagedAgentHookCli.js +53653 -38089
  4. package/dist/agent/AgentIndex.js +2 -2
  5. package/dist/{chunk-GCE6PUYD.js → chunk-KV4WA4BV.js} +2 -2
  6. package/dist/{chunk-5Q6BCK32.js → chunk-XMQRTHQK.js} +29709 -17143
  7. package/dist/chunk-XMQRTHQK.js.map +1 -0
  8. package/dist/index.js +3005 -426
  9. package/dist/index.js.map +1 -1
  10. package/dist/policy_core.wasm +0 -0
  11. package/distribution/chatgpt/Install.md +40 -0
  12. package/distribution/chatgpt/Linked.md +25 -0
  13. package/distribution/chatgpt/Manifest.json +45 -0
  14. package/distribution/chatgpt/Mcp.json +9 -0
  15. package/distribution/chatgpt/Review.json +48 -0
  16. package/distribution/chatgpt/Setup.md +24 -0
  17. package/distribution/claude/Code.md +35 -0
  18. package/distribution/claude/Connected.json +13 -0
  19. package/distribution/claude/Install.md +47 -0
  20. package/distribution/claude/Manifest.json +11 -0
  21. package/distribution/claude/Mcp.json +8 -0
  22. package/distribution/common/Consent.md +22 -0
  23. package/distribution/common/Skill.md +111 -0
  24. package/distribution/copilot/Agent.json +22 -0
  25. package/distribution/copilot/App.json +34 -0
  26. package/distribution/copilot/AuthoringAgent.json +22 -0
  27. package/distribution/copilot/AuthoringApp.json +34 -0
  28. package/distribution/copilot/AuthoringInstructions.md +96 -0
  29. package/distribution/copilot/AuthoringM365.md +38 -0
  30. package/distribution/copilot/AuthoringPlugin.json +20 -0
  31. package/distribution/copilot/Connector.json +36 -0
  32. package/distribution/copilot/Instructions.md +21 -0
  33. package/distribution/copilot/M365.md +38 -0
  34. package/distribution/copilot/Plugin.json +20 -0
  35. package/distribution/copilot/Studio.md +16 -0
  36. package/distribution/schema/CopilotAgent.json +950 -0
  37. package/distribution/schema/CopilotApp.json +2927 -0
  38. package/distribution/schema/CopilotPlugin.json +723 -0
  39. package/distribution/schema/Mcp.json +120 -0
  40. package/distribution/schema/Plugin.json +65 -0
  41. package/distribution/schema/Source.md +36 -0
  42. package/package.json +27 -24
  43. package/dist/chunk-5Q6BCK32.js.map +0 -1
  44. /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.0",
4
- "description": "Local MCP policy checks with Decionis policy packs and Presence human verification, plus native Codex, Copilot, and Claude execution hooks.",
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
- "dependencies": {
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
+ }