@smartruns/mcp 1.1.0 → 1.1.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.
@@ -57,8 +57,8 @@ export function registerDefectTools(server, client) {
57
57
  status: z.object({ id: z.number().int().describe('Status ID') }).describe('Status object with ID (required) — drives the defect state'),
58
58
  extra: z.string().optional().describe('Additional context or notes'),
59
59
  state: z.string().optional().describe('Defect state — usually omitted; the API derives it from the status'),
60
- ticket_id: z.number().int().optional().describe('Associated Jira ticket ID'),
61
- pull_request_id: z.number().int().optional().describe('Associated pull request ID'),
60
+ ticket_id: z.number().int().optional().describe('Associated Jira ticket RECORD id'),
61
+ pull_request_id: z.number().int().optional().describe('Internal PullRequest RECORD id (from search/list), NOT the GitHub PR number'),
62
62
  test_run_id: z.number().int().optional().describe('Associated test run ID'),
63
63
  test_plan_id: z.number().int().optional().describe('Associated test plan ID'),
64
64
  project_id: z.string().optional().describe('Override the project for this call (WTProject header). Defaults to SMARTRUNS_PROJECT_ID.'),
@@ -93,10 +93,12 @@ export function registerDefectTools(server, client) {
93
93
  extra: z.string().optional().describe('Additional context or notes'),
94
94
  state: z.string().optional().describe('Defect state, e.g. "open" or "closed"'),
95
95
  status: z.object({ id: z.number().int().describe('Status ID') }).optional().describe('Status object with ID'),
96
- ticket_id: z.number().int().optional().describe('Associated Jira ticket ID'),
97
- pull_request_id: z.number().int().optional().describe('Associated pull request ID'),
98
- test_run_id: z.number().int().optional().describe('Associated test run ID'),
99
- test_plan_id: z.number().int().optional().describe('Associated test plan ID'),
96
+ // SR-spec-5 (defect 6800): these FK links are nullable so a wrong/cross-account link
97
+ // can be CLEARED by passing null (the API assigns nil). Omit to leave unchanged.
98
+ ticket_id: z.number().int().nullable().optional().describe('Associated Jira ticket RECORD id. Pass null to clear the link.'),
99
+ pull_request_id: z.number().int().nullable().optional().describe('Internal PullRequest RECORD id (from search/list), NOT the GitHub PR number. Pass null to clear the link.'),
100
+ test_run_id: z.number().int().nullable().optional().describe('Associated test run ID. Pass null to clear the link.'),
101
+ test_plan_id: z.number().int().nullable().optional().describe('Associated test plan ID. Pass null to clear the link.'),
100
102
  }, async ({ id, summary, steps, current, expected, extra, state, status, ticket_id, pull_request_id, test_run_id, test_plan_id }) => {
101
103
  try {
102
104
  const body = {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartruns/mcp",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "MCP server for the SmartRuns REST API",
5
5
  "type": "module",
6
6
  "bin": {