generate_resume_for_job
Create a customized resume optimized for a specific job application by highlighting relevant skills and experience. Generates JSON resume data or PDF with AI-enhanced sections.
Instructions
Generate an AI-optimized resume tailored for a specific job application. This creates a customized version of your resume highlighting relevant skills and experience for the job. Returns JSON resume data.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| applicationId | Yes | The job application ID to generate a resume for | |
| modifications | No | Custom modifications or instructions for resume customization | |
| keywords | No | Specific keywords to emphasize in the resume | |
| sections | No | Which resume sections to AI-enhance. Defaults to ["summary", "work", "skills"] if not specified. | |
| generatePdf | No | Generate a downloadable PDF from the resume (default: false). When true, returns a PDF download URL. |
Implementation Reference
- src/tools/resume.ts:112-130 (handler)The handler function for 'generate_resume_for_job' tool, which takes job application parameters, calls the client's API method, and returns the generated resume JSON/PDF info.
async (args) => { const result = await client.generateResumeForJob(args.applicationId, { modifications: args.modifications, keywords: args.keywords, sections: args.sections, generatePdf: args.generatePdf, }); const response: Record<string, unknown> = { message: 'Resume generation complete', resumeJson: result.jsonResume, addedKeywords: result.addedKeywords, }; if (result.pdfUrl) { response.pdfUrl = result.pdfUrl; response.generatedResumeId = result.generatedResumeId; response.message = 'Resume generated with downloadable PDF'; } return { content: [{ type: 'text' as const, text: JSON.stringify(response, null, 2) }] }; } - src/tools/resume.ts:102-111 (registration)Registration of the 'generate_resume_for_job' tool with its input schema definitions using Zod.
server.tool( 'generate_resume_for_job', 'Generate an AI-optimized resume tailored for a specific job application. This creates a customized version of your resume highlighting relevant skills and experience for the job. Returns JSON resume data.', { applicationId: z.string().describe('The job application ID to generate a resume for'), modifications: z.array(z.string()).optional().describe('Custom modifications or instructions for resume customization'), keywords: z.array(z.string()).optional().describe('Specific keywords to emphasize in the resume'), sections: z.array(z.enum(['summary', 'basics', 'work', 'education', 'skills', 'projects', 'certificates', 'awards', 'volunteer', 'publications', 'languages', 'interests', 'references'])).optional().describe('Which resume sections to AI-enhance. Defaults to ["summary", "work", "skills"] if not specified.'), generatePdf: z.boolean().optional().describe('Generate a downloadable PDF from the resume (default: false). When true, returns a PDF download URL.'), }, - src/api-client.ts:593-595 (helper)API client helper method that performs the POST request to the backend for generating a resume for a job application.
async generateResumeForJob(applicationId: string, params?: { modifications?: string[]; keywords?: string[]; sections?: string[]; generatePdf?: boolean }): Promise<GeneratedResumeJsonResponse> { return this.post<GeneratedResumeJsonResponse>(`/job-applications/${applicationId}/generate-resume`, params || {}); }