update_application_stage
Update a job application's stage to track progress through the hiring process. Choose from stages like Applied, Interviewing, Offer, or Rejected.
Instructions
Update the stage/status of a job application. Valid stages: WISHLIST, APPLIED, INTERVIEWING, OFFER, REJECTED, WITHDRAWN.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| application_id | Yes | Job application ID to update | |
| stage | Yes | New application stage | |
| notes | No | Optional notes about this stage change |
Implementation Reference
- index.js:216-217 (registration)The tool 'update_application_stage' is defined in the WEEK2_TOOLS array with its name, description, and inputSchema.
}, { - index.js:220-235 (schema)Input schema for update_application_stage: requires application_id (string) and stage (string enum with values applied, screening, interview, technical, offer, accepted, rejected, withdrawn).
inputSchema: { type: 'object', properties: { application_id: { type: 'string', description: 'Application ID to update', }, stage: { type: 'string', enum: ['applied', 'screening', 'interview', 'technical', 'offer', 'accepted', 'rejected', 'withdrawn'], description: 'New pipeline stage for the application', }, }, required: ['application_id', 'stage'], }, }, - index.js:275-305 (handler)All tools (including update_application_stage) are proxied to the backend via handleToolsCall using callBackend(). If the backend is unreachable, returns a stub message indicating the handler is not yet deployed.
async function handleToolsCall(id, params) { const toolName = params && params.name; try { const result = await callBackend({ jsonrpc: '2.0', id, method: 'tools/call', params }); send({ ...result, id }); } catch (err) { // If the backend is unreachable and this is a new tool, return a clear stub message if (NEW_TOOL_NAMES.has(toolName)) { send({ jsonrpc: '2.0', id, result: { content: [ { type: 'text', text: JSON.stringify({ status: 'not_implemented', tool: toolName, message: `The '${toolName}' tool is defined in the MCP layer but the backend handler is not yet deployed. Backend error: ${err.message}`, }, null, 2), }, ], isError: false, }, }); } else { send({ jsonrpc: '2.0', id, error: { code: -32000, message: err.message } }); } } }