@debugg-ai/debugg-ai-mcp 3.0.0 → 3.0.1

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/CHANGELOG.md CHANGED
@@ -5,6 +5,19 @@ All notable changes to the DebuggAI MCP project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [3.0.1]
9
+
10
+ ### Fixed — 5 action tools were invisible in Claude Code (and any Anthropic-API client)
11
+
12
+ 3.0.0's action tools (`project`, `environment`, `test_suite`, `test_case`,
13
+ `executions`) declared a top-level `oneOf` in their JSON Schema to express
14
+ per-action required fields. The Anthropic tool `input_schema` does not accept
15
+ top-level `oneOf`/`anyOf`/`allOf`, so clients **silently dropped all 5 tools** —
16
+ only the 3 browser tools showed up (the server still advertised all 8). Removed
17
+ the `oneOf`; per-action required fields remain enforced by the Zod discriminated
18
+ unions at call time and documented in each tool's description. Added a registry
19
+ regression test asserting no tool schema uses top-level `oneOf`/`anyOf`/`allOf`.
20
+
8
21
  ## [3.0.0]
9
22
 
10
23
  ### Changed — Tool surface consolidated to 8 action-based tools (BREAKING)
@@ -38,13 +38,10 @@ export function buildEnvironmentTool() {
38
38
  confirm: { type: 'boolean', description: '[delete] Set true to confirm deletion (when the client cannot prompt).' },
39
39
  },
40
40
  required: ['action'],
41
- oneOf: [
42
- { properties: { action: { const: 'get' } }, required: ['action', 'uuid'] },
43
- { properties: { action: { const: 'list' } }, required: ['action'] },
44
- { properties: { action: { const: 'create' } }, required: ['action', 'name', 'url'] },
45
- { properties: { action: { const: 'update' } }, required: ['action', 'uuid'] },
46
- { properties: { action: { const: 'delete' } }, required: ['action', 'uuid'] },
47
- ],
41
+ // No top-level oneOf/anyOf/allOf: the Anthropic tool input_schema rejects
42
+ // them and clients (Claude Code) silently drop the tool. Per-action required
43
+ // fields are enforced by the Zod discriminated union in types/index.ts and
44
+ // documented in DESCRIPTION above.
48
45
  additionalProperties: false,
49
46
  },
50
47
  };
@@ -21,10 +21,10 @@ export function buildExecutionsTool() {
21
21
  pageSize: { type: 'number', description: '[list] Page size (1..200).' },
22
22
  },
23
23
  required: ['action'],
24
- oneOf: [
25
- { properties: { action: { const: 'get' } }, required: ['action', 'uuid'] },
26
- { properties: { action: { const: 'list' } }, required: ['action'] },
27
- ],
24
+ // No top-level oneOf/anyOf/allOf: the Anthropic tool input_schema rejects
25
+ // them and clients (Claude Code) silently drop the tool. Per-action required
26
+ // fields are enforced by the Zod discriminated union in types/index.ts and
27
+ // documented in DESCRIPTION above.
28
28
  additionalProperties: false,
29
29
  },
30
30
  };
@@ -27,11 +27,10 @@ export function buildProjectTool() {
27
27
  repoName: { type: 'string', description: '[create] GitHub repo name "org/repo" (or repoUuid).' },
28
28
  },
29
29
  required: ['action'],
30
- oneOf: [
31
- { properties: { action: { const: 'get' } }, required: ['action', 'uuid'] },
32
- { properties: { action: { const: 'list' } }, required: ['action'] },
33
- { properties: { action: { const: 'create' } }, required: ['action', 'name', 'platform'] },
34
- ],
30
+ // No top-level oneOf/anyOf/allOf: the Anthropic tool input_schema rejects
31
+ // them and clients (Claude Code) silently drop the tool. Per-action required
32
+ // fields are enforced by the Zod discriminated union in types/index.ts and
33
+ // documented in DESCRIPTION above.
35
34
  additionalProperties: false,
36
35
  },
37
36
  };
@@ -26,11 +26,10 @@ export function buildTestCaseTool() {
26
26
  confirm: { type: 'boolean', description: '[delete] Set true to confirm deletion (when the client cannot prompt).' },
27
27
  },
28
28
  required: ['action'],
29
- oneOf: [
30
- { properties: { action: { const: 'create' } }, required: ['action', 'name', 'description', 'agentTaskDescription'] },
31
- { properties: { action: { const: 'update' } }, required: ['action', 'testUuid'] },
32
- { properties: { action: { const: 'delete' } }, required: ['action', 'testUuid'] },
33
- ],
29
+ // No top-level oneOf/anyOf/allOf: the Anthropic tool input_schema rejects
30
+ // them and clients (Claude Code) silently drop the tool. Per-action required
31
+ // fields are enforced by the Zod discriminated union in types/index.ts and
32
+ // documented in DESCRIPTION above.
34
33
  additionalProperties: false,
35
34
  },
36
35
  };
@@ -34,13 +34,10 @@ export function buildTestSuiteTool() {
34
34
  confirm: { type: 'boolean', description: '[delete] Set true to confirm deletion (when the client cannot prompt).' },
35
35
  },
36
36
  required: ['action'],
37
- oneOf: [
38
- { properties: { action: { const: 'list' } }, required: ['action'] },
39
- { properties: { action: { const: 'create' } }, required: ['action', 'name', 'description'] },
40
- { properties: { action: { const: 'run' } }, required: ['action'] },
41
- { properties: { action: { const: 'results' } }, required: ['action'] },
42
- { properties: { action: { const: 'delete' } }, required: ['action'] },
43
- ],
37
+ // No top-level oneOf/anyOf/allOf: the Anthropic tool input_schema rejects
38
+ // them and clients (Claude Code) silently drop the tool. Per-action required
39
+ // fields are enforced by the Zod discriminated union in types/index.ts and
40
+ // documented in DESCRIPTION above.
44
41
  additionalProperties: false,
45
42
  },
46
43
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@debugg-ai/debugg-ai-mcp",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "description": "Zero-Config, Fully AI-Managed End-to-End Testing for all code gen platforms.",
5
5
  "type": "module",
6
6
  "bin": {