Skip to main content

Copilot Tools API

The Copilot MCP server exposes twenty tools.

ask​

Ask GitHub Copilot a freeform question.

Parameters​

ParameterTypeRequiredDescription
questionstringYesThe question to ask (max 500KB)

Response​

Plain text string with Copilot's response.

Example​

Input:

{
"question": "How does React's useEffect cleanup function work with async operations?"
}

code_review​

Send a diff for review.

Parameters​

ParameterTypeRequiredDescription
diffstringYesThe git diff to review (max 500KB)
contextstringNoAdditional context for the review

Response​

JSON when the response is parseable as a ReviewResult, otherwise plain text.

interface ReviewResult {
verdict: "APPROVED" | "NEEDS_REVISION";
issues: Array<{
severity: "critical" | "major" | "minor";
description: string;
recommendation: string;
}>;
suggestions: string[];
}

Output Parsing​

The Copilot server parses JSONL output from the copilot -p --output-format json CLI. Each line is a JSON object representing a message in the conversation. The server extracts the final assistant message and attempts to parse it as structured JSON.

If JSON parsing fails, the raw text response is returned. This means code_review may return either structured JSON or freeform text depending on Copilot's response format.


Resume & Career Tools​

All 18 tools below are also available on the Claude and Codex servers with identical parameters. All return plain text with structured AI-generated content. For full methodology details and usage examples, see SKILLS.md and the Resume Tools Guide.

career_fact_extractor​

Extract a structured, fact-ID-tagged database of career facts from any source material. Use before resume_tailor to enforce truthful, evidence-mapped tailoring.

Parameters​

ParameterTypeRequiredDescription
source_materialstringYesResume, LinkedIn profile, brag doc, performance reviews, project notes — any source of career information (max 100KB)
additional_contextstringNoTarget role, industry, or any other relevant context

cover_letter_generator​

Generate a personalized cover letter with match analysis, alternative hooks, and interview talking points.

Parameters​

ParameterTypeRequiredDescription
resumestringYesCandidate's resume or experience summary
job_descriptionstringYesFull job posting text
company_namestringYesName of the target company
role_titlestringYesTitle of the role being applied for
additional_contextstringNoMutual connections, company news, personal motivation

creative_portfolio_resume​

Generate both an ATS-compatible and a fully designed resume for creative professionals.

Parameters​

ParameterTypeRequiredDescription
experiencestringYesWork history and project experience
skillsstringYesCreative and technical skills
fieldstringYesCreative field (e.g. graphic_design, ux_design, photography, writing, marketing)
target_rolestringNoSpecific role being targeted
portfolio_urlstringNoURL of the candidate's portfolio
additional_contextstringNoAny additional information

executive_resume_writer​

Create a 2-3 page executive resume focused on leadership brand and strategic transformation story.

Parameters​

ParameterTypeRequiredDescription
experiencestringYesCareer history including company context and scope
current_levelstringYesOne of: c_suite, vp, director, other_executive
target_rolestringNoTarget role or title
industrystringNoTarget industry
board_experiencestringNoBoard and advisory roles
additional_contextstringNoAny additional information

interview_prep_generator​

Generate STAR-method interview prep with predicted questions ranked by probability.

Parameters​

ParameterTypeRequiredDescription
resumestringYesCandidate's resume
job_descriptionstringYesJob posting text
company_namestringYesTarget company
role_titlestringYesRole being interviewed for
interview_formatstringNoe.g. behavioral, technical, panel, case study
additional_contextstringNoAny additional information

job_description_analyzer​

Extract requirements, score match against a resume, detect red flags, and generate application recommendations.

Parameters​

ParameterTypeRequiredDescription
job_descriptionstringYesFull job posting text
resumestringNoCandidate's resume (enables match scoring)
additional_contextstringNoAny additional information

linkedin_profile_optimizer​

Rewrite a LinkedIn profile for recruiter visibility using LinkedIn's search algorithm best practices.

Parameters​

ParameterTypeRequiredDescription
current_profilestringYesCurrent LinkedIn profile content (headline, about, experience)
target_rolestringNoRole type being targeted
industrystringNoTarget industry
resumestringNoResume for reference
additional_contextstringNoAny additional information

portfolio_case_study_writer​

Write a structured portfolio case study in the six-section framework (Overview, Problem, Process, Solution, Results, Learnings).

Parameters​

ParameterTypeRequiredDescription
project_descriptionstringYesProject context including your role and constraints
outcomesstringYesResults, metrics, and impact achieved
fieldstringYesOne of: product_management, design, engineering, marketing, other
depthstringNoessential (~700 words) or deep_dive (~2500 words). Default: essential
additional_contextstringNoAny additional information

reference_list_builder​

Build a reference strategy with formatted list, briefing email templates, and talking points per reference.

Parameters​

ParameterTypeRequiredDescription
referencesstringYesList of potential references with their details
target_rolestringYesRole being applied for
company_namestringYesTarget company
resume_highlightsstringNoKey achievements for references to emphasize
additional_contextstringNoAny additional information

resume_ats_optimizer​

Optimize a resume to pass ATS screening via keyword matching and formatting compliance fixes.

Parameters​

ParameterTypeRequiredDescription
resumestringYesCurrent resume text
job_descriptionstringYesJob posting to optimize against
industrystringNoIndustry context (tech, finance, healthcare, marketing)
additional_contextstringNoAny additional information

resume_bullet_writer​

Transform weak, duty-focused bullets into achievement-focused statements using the X-Y-Z formula.

Parameters​

ParameterTypeRequiredDescription
bulletsstringYesOne or more bullets to transform (one per line)
role_contextstringYesRole, company, and industry context
metrics_availablestringNoAny data or numbers that can be incorporated
additional_contextstringNoAny additional information

resume_formatter​

Audit and fix resume formatting for ATS compliance and human readability.

Parameters​

ParameterTypeRequiredDescription
resumestringYesResume text to format
career_levelstringYesOne of: entry_level, mid_level, senior_executive
additional_contextstringNoAny additional information

resume_quantifier​

Add data-driven metrics to every bullet using six metric categories and estimation methodology.

Parameters​

ParameterTypeRequiredDescription
bulletsstringYesBullets to quantify (one per line)
role_contextstringYesRole and industry context
data_availablestringNoAny raw data or numbers to draw from
additional_contextstringNoAny additional information

resume_section_builder​

Build targeted resume sections (summary, skills, experience, education) tailored to career stage.

Parameters​

ParameterTypeRequiredDescription
experiencestringYesWork history
skillsstringYesSkills and competencies
career_stagestringYesOne of: entry_level, mid_career, senior, executive, career_changer
target_rolestringYesRole being targeted
educationstringNoEducation history
additional_sectionsstringNoProjects, volunteer work, certifications, etc.
additional_contextstringNoAny additional information

resume_tailor​

Tailor a master resume to a specific job posting by selecting and emphasizing relevant experience. When career_facts is provided, every tailored bullet maps to a source fact ID — producing an evidence map, a list of removed unsupported claims, and questions for missing proof.

Parameters​

ParameterTypeRequiredDescription
resumestringYesMaster resume or current resume
job_descriptionstringYesFull job posting text
company_namestringYesTarget company
role_titlestringYesRole being applied for
career_factsstringNoFact-ID-tagged output from career_fact_extractor — enables evidence map and removed-claims output
additional_contextstringNoAny additional information

recruiter_first_screen_simulation​

Simulate a skeptical hiring manager's 45-second resume screen. Returns a Yes/Maybe/No decision, scores across 6 dimensions, and exact text to rewrite before applying.

Parameters​

ParameterTypeRequiredDescription
resumestringYesThe resume to screen (max 50KB)
job_descriptionstringYesThe job description for the role (max 20KB)
seniority_levelstringNoExpected seniority level for calibration (e.g. senior, staff, director)
additional_contextstringNoAny additional context for the simulation

resume_version_manager​

Organize and maintain multiple resume versions using a master resume strategy and application tracker.

Parameters​

ParameterTypeRequiredDescription
master_resumestringNoCurrent resume or experience (to build the master from)
existing_versionsstringNoDescription of existing resume files/versions
target_rolesstringNoTarget roles and industries
job_applicationsstringNoCurrent or recent job applications
additional_contextstringNoAny additional information

tech_resume_optimizer​

Optimize resumes for software engineering, data, DevOps, and technical PM roles.

Parameters​

ParameterTypeRequiredDescription
resumestringYesCurrent resume
role_typestringYese.g. software_engineer, data_engineer, devops_sre, technical_pm
job_descriptionstringNoTarget job posting (enables ATS keyword analysis)
career_levelstringNoe.g. junior, mid, senior, staff, principal
additional_contextstringNoAny additional information