Skip to main content
Glama

Score a resume

score_resume
Read-only

Score a resume's ATS quality (0-100) by id, with a per-area breakdown (formatting, content, completeness, length), a verdict and the checks that failed, each with its tip. Matches the resume editor's ATS badge — no AI guesswork. Use get_resume_suggestions for the actionable fix list. Returns 'not_found' if the resume does not exist or does not belong to the current user.

Input Schema

NameRequiredDescriptionDefault
inputYes

Output Schema

NameRequiredDescriptionDefault
verdictYesexcellent | good | needs_work | poor.
resume_idYes
area_scoresNo
checks_totalYesTotal quality checks applied.
checks_passedYesNumber of quality checks that passed.
failed_checksNoEvery check that did not pass, highest-impact first.
overall_scoreYes0-100 ATS quality score (same scale as the resume editor's ATS badge).
critical_issuesYesNumber of failed high-impact checks (10-point checks).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, yet the description still adds meaningful behavioral context: the breakdown areas, the verdict output, the failed-check-with-tip structure, the guarantee of parity with the editor's ATS badge ('no AI guesswork'), and the 'not_found' failure mode. Auth relevance is covered by stating the resume must belong to the current user.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences, front-loaded with the core purpose and score range, then output shape, then usage routing and the failure case. No filler sentences and nothing repeated from the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an output schema, so return-format detail is optional, yet the description still summarizes the return surface (breakdown, verdict, failed checks). Combined with the documented not_found behavior and sibling routing, an agent has everything needed to select and call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With reported schema coverage at 0%, the description has to carry parameter meaning; it clarifies the input is an id (not a full resume object) and adds that the target must belong to the current user, which the schema does not express. It stops short of stating the id format or how to obtain it beyond the 'by id' phrasing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (score) and resource (resume) with the exact output scope (ATS quality 0-100 plus per-area breakdown). It explicitly contrasts itself with get_resume_suggestions, so an agent can separate it from the many get_resume* siblings without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the alternative (get_resume_suggestions) and its purpose ('the actionable fix list'), which signals when to route elsewhere. However it never states the positive trigger condition for choosing this tool (e.g. 'use when you want a diagnostic score rather than fixes'), leaving that inference implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.