{"record":{"id":"4eff7a434e3ca9f5","repo":"eyaltoledano/claude-task-master","slug":"missing-argument-4eff7a","errorCode":"MISSING_ARGUMENT","errorMessage":"tasksJsonPath is required","messagePattern":"tasksJsonPath is required","errorType":"error_code","errorClass":null,"httpStatus":null,"severity":"error","filePath":"mcp-server/src/core/direct-functions/scope-up.js","lineNumber":55,"sourceCode":"\t\ttag\n\t} = args;\n\tconst { session } = context; // Destructure session from context\n\n\t// Enable silent mode to prevent console logs from interfering with JSON response\n\tenableSilentMode();\n\n\t// Create logger wrapper using the utility\n\tconst mcpLog = createLogWrapper(log);\n\n\ttry {\n\t\t// Check if tasksJsonPath was provided\n\t\tif (!tasksJsonPath) {\n\t\t\tlog.error('scopeUpDirect called without tasksJsonPath');\n\t\t\tdisableSilentMode(); // Disable before returning\n\t\t\treturn {\n\t\t\t\tsuccess: false,\n\t\t\t\terror: {\n\t\t\t\t\tcode: 'MISSING_ARGUMENT',\n\t\t\t\t\tmessage: 'tasksJsonPath is required'\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\t// Check required parameters\n\t\tif (!id) {\n\t\t\tlog.error('Missing required parameter: id');\n\t\t\tdisableSilentMode();\n\t\t\treturn {\n\t\t\t\tsuccess: false,\n\t\t\t\terror: {\n\t\t\t\t\tcode: 'MISSING_PARAMETER',\n\t\t\t\t\tmessage: 'The id parameter is required for scoping up tasks'\n\t\t\t\t}\n\t\t\t};\n\t\t}\n","sourceCodeStart":37,"sourceCodeEnd":73,"githubUrl":"https://github.com/eyaltoledano/claude-task-master/blob/c0c98d367c55296bfe69e65680625b6db437af02/mcp-server/src/core/direct-functions/scope-up.js#L37-L73","documentation":"scopeUpDirect returns this error when the 'tasksJsonPath' argument is absent. The tool needs the filesystem path to the tasks.json file in order to locate and modify the task data. Without it, no file can be loaded and the call is rejected early with code MISSING_ARGUMENT.","triggerScenarios":"Invoking the scope-up MCP tool with an empty arguments object, or with tasksJsonPath undefined/null/empty-string because the caller did not resolve the project's tasks.json path.","commonSituations":"Running the MCP server outside a taskmaster-initialized project so the client has no tasksJsonPath to pass; agents that guessed arguments; refactors where the path field was renamed on the client side.","solutions":["Provide tasksJsonPath (absolute path to tasks.json) in the tool arguments","Run from a taskmaster project so the correct tasks.json path is available","Confirm the argument key is spelled 'tasksJsonPath', not 'tasksPath' or similar"],"exampleFix":"// before\nawait client.callTool('scope-up', { id: '3' });\n// after\nawait client.callTool('scope-up', { tasksJsonPath: '/project/.taskmaster/tasks.json', id: '3' });","handlingStrategy":"validation","validationCode":"if (!args?.tasksJsonPath) throw new Error('scope-up requires tasksJsonPath');","typeGuard":"function hasTasksPath(args) { return typeof args?.tasksJsonPath === 'string' && args.tasksJsonPath.trim().length > 0; }","tryCatchPattern":"try { const r = await callTool('scope-up', args); if (!r.success) throw new Error(`${r.error.code}: ${r.error.message}`); } catch (e) { if (e.message.includes('MISSING_ARGUMENT')) { /* resolve tasks.json path and retry */ } else throw e; }","preventionTips":["Resolve and store the project tasks.json path once in config","Run the MCP server from the project root","Validate required args with a schema (e.g. zod) before tool calls"],"tags":["mcp","validation","missing-argument"],"backgroundTag":"missing-required-parameter","analyzedSha":"c0c98d367c55296bfe69e65680625b6db437af02","analyzedAt":"2026-08-29T02:56:26.071Z","schemaVersion":2},"datasetVersion":"2026-08-29T07:17:48.351Z"}