Skip to main content
Glama
niragmehta
by niragmehta

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool targets a distinct stage of the auto-apply pipeline—discovery, scoring, preparation, approval, submission, or tracking—with clear separation between single and batch operations (e.g., prepare_application vs. prepare_batch). The related board-probing and saving tools (resolve_company_board, add_company_board, scan_hiring_thread) are clearly differentiated by their input source and purpose. No two tools appear to perform the same action on the same resource.

    Naming Consistency4/5

    The overwhelming majority of tools follow a consistent verb_noun pattern (discover_jobs, prepare_application, approve_batch, etc.). Two tools, campaign_status and audit_log, use noun forms without an explicit verb, slightly deviating from the otherwise uniform convention. Overall the pattern is highly predictable and readable.

    Tool Count4/5

    With 22 tools, the server is on the heavier side of the typical range, but each tool maps to a necessary operation in the end-to-end job application workflow. The many batch and single variants double the count, yet they serve distinct use cases (individual review vs. bulk processing). The size feels justified for the scope, though it is not minimal.

    Completeness5/5

    The tool set provides full lifecycle coverage from board discovery to outcome recording, including preparation, approval, submission, batch handling, and monitoring. Administrative tools for configuration reload and audit logging round out the surface. There are no obvious dead ends; agents can compose these tools to simulate the entire auto-apply process.

  • Average 4/5 across 22 of 22 tools scored. Lowest: 2.9/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 112 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior3/5

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

    The readOnlyHint annotation already discloses the read-only nature. The description adds the specific returned fields (status, target role, outcome history) but does not disclose behavior like pagination, defaults, or effect of the limit/status parameters.

    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?

    A single, clear, and grammatically complete sentence. It is front-loaded with the verb and resource, with no filler.

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

    Completeness3/5

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

    The tool is a simple read-only list with two optional parameters, and the description gives basic return fields. However, without an output schema, it should explain filter semantics and default behavior to be fully complete for an agent.

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

    Parameters1/5

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

    Schema description coverage is 0% and the description provides no meaning for the 'limit' or 'status' parameters. It only mentions that applications are listed with status, but not that status can be used as a filter or how limit behaves.

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

    Purpose4/5

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

    The description clearly states the tool lists applications and specifies the returned attributes (status, target role, outcome history). However, it does not explicitly distinguish this from sibling list tools like list_queue or list_batches, though the resource and attributes are specific.

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

    Usage Guidelines2/5

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

    No mention of when to use this tool versus alternatives such as list_queue, list_batches, or audit_log. The description gives no context on appropriate usage or filtering scenarios.

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

  • Behavior3/5

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

    The readOnlyHint annotation already signals that this is a safe read operation. The description adds that it returns recent batches with status and counts, which is useful but does not disclose additional behavioral traits such as default ordering, pagination, or whether the output is a list. It does not contradict the annotation.

    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?

    The description is a single, short sentence that contains no redundancy or filler. Every word contributes to conveying the core function, making it highly concise and well-structured.

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

    Completeness3/5

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

    For a simple read-only list tool with one optional parameter and no output schema, the description is minimally sufficient. It covers the basic purpose but does not elaborate on the return shape, default limits, or the specific meaning of 'per-state counts,' leaving some gaps given the lack of an output schema.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description does not mention the 'limit' parameter at all. While the parameter name is somewhat self-explanatory, the description fails to provide any definition, default behavior, or context about how limiting works, leaving semantics undocumented.

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

    Purpose4/5

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

    The description clearly identifies the resource (recent batches) and the output (status and per-state counts), which is specific enough to understand the tool's purpose. However, it does not explicitly distinguish this from sibling list tools like list_queue or list_applications, though the resource name 'batches' offers some differentiation.

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

    Usage Guidelines3/5

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

    The description implies the tool is used to view recent batch statuses, but it provides no explicit guidance on when to prefer this over alternatives or when not to use it. No exclusions or alternative tool references are mentioned.

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

  • Behavior4/5

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

    With readOnlyHint=true, the description adds value by noting that the posting text is 'wrapped as untrusted data,' which is a security-relevant behavioral detail. It also implies the output includes quoted evidence, which clarifies the nature of the data. No contradiction with annotations, and the read-only nature is consistent.

    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?

    The description is a single sentence that is front-loaded with the core action and return value. Every part earns its place with no fluff or repetition.

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

    Completeness3/5

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

    For a read-only tool with two simple parameters and no output schema, the description covers the return value well. However, it lacks usage context and parameter details, and it does not clarify what 'gate result' or 'quoted evidence' mean for an agent unfamiliar with the domain. Adequate but with gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description does not compensate. It mentions neither jobId nor includeDescription. While parameter names are somewhat self-explanatory, the boolean includeDescription's effect is ambiguous — it likely controls whether the posting text is included, but this is not spelled out.

    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?

    The description clearly states a specific verb ('Returns') and a specific resource ('full gate result, score breakdown with quoted evidence, and the posting text wrapped as untrusted data'). This distinguishes it from sibling tools like 'discover_jobs' or 'preview_application', which serve different functions.

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool vs alternatives. The description only states what it returns, not when to call it (e.g., after an evaluation or when debugging a gate failure). No exclusions or alternative tools are mentioned.

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

  • Behavior4/5

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

    Beyond annotations declaring a non-read-only, non-destructive operation, the description adds a critical constraint: packetHash must match current content and any later edit invalidates approval. This is meaningful behavioral context not present in the annotations.

    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?

    Two sentences, front-loaded with the primary purpose followed by a key constraint. No redundant filler; every word earns its place.

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

    Completeness3/5

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

    The description captures the core purpose and constraint, but omits the fact that the decision field can be 'rejected' (despite the tool name), lacks workflow context (e.g., use after preview_application, before submit_application), and does not mention single vs batch scope. This is noticeable given many sibling tools.

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

    Parameters3/5

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

    Schema coverage is low (25%, only packetHash has a description). The tool description adds key context for packetHash (must match current content exactly), but gives no semantic information for applicationId, note, or decision, leaving the decision enum (approved/rejected) unexplained.

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

    Purpose4/5

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

    The description clearly states the tool records a human decision authorizing submission, which is a specific verb and resource. It implies single-application scope via the applicationId parameter, but it does not explicitly differentiate from the sibling approve_batch tool, so it slightly misses full sibling differentiation.

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

    Usage Guidelines3/5

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

    The description implies this tool is used at the approval stage before submission, but provides no explicit exclusions or alternatives. The packetHash constraint hints at a required prior step (preview_application), but this is not stated explicitly.

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

  • Behavior3/5

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

    Annotations already indicate destructive behavior, and the description adds that it runs submission guards and describes mode-specific actions (filling, clicking submit). However, it does not disclose what happens on guard failure or the irreversible nature of full auto submission beyond the annotation's generic destructive hint.

    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 sentences with zero fluff. The most important behavior (guard execution and mode outcomes) is front-loaded, and every sentence contributes unique information.

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

    Completeness3/5

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

    The description covers mode logic well, but omits key context such as what happens when a guard fails, prerequisites (e.g., application must be approved), and any relevant return value or side effects. Given the tool's complexity and lack of output schema, more detail would be helpful.

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

    Parameters3/5

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

    Schema already covers 4 of 6 parameters with descriptions. The tool description adds meaning to the 'mode' parameter by explaining each enum value, and implicitly references the verification gate for related parameters. However, it does not clarify applicationId or headless beyond schema constraints.

    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?

    The description clearly states the tool's purpose: it runs every submission guard and then submits according to the selected mode. It distinguishes from siblings by detailing three specific modes (manual, assisted, auto) and the allowlist constraint for auto mode.

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

    Usage Guidelines3/5

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

    The description provides clear context for choosing a mode, but does not explicitly compare this tool with siblings like submit_batch or record_submission. It lacks guidance on when to use submit_application vs batch alternatives, leaving the selection partially implicit.

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

  • Behavior2/5

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

    The annotation readOnlyHint=true is present, and the description's 'Summarizes' is consistent with a read-only operation. However, the description adds no additional behavioral context beyond the annotation—such as data freshness, aggregation timeframe, or whether the summary is real-time. With the annotation covering safety, the description contributes little extra behavioral disclosure.

    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?

    The description is a single, front-loaded sentence that packs specific, useful information without any fluff or repetition. Every phrase contributes meaning, and it is easily scannable.

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

    Completeness4/5

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

    For a parameterless summary tool with no output schema, the description clearly enumerates the main content areas (target progress, pipeline health, tier distribution, rejection reasons). This is sufficient for an agent to understand what the tool provides. It does not detail return format, but that is less critical for a summary tool and no output schema exists to supplement.

    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?

    The tool has zero parameters, and the schema covers 100% (vacuously). The description does not need to explain parameters. Per the rubric, 0 parameters earns a baseline of 4, and the description properly focuses on what the tool returns rather than input semantics.

    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?

    The description uses the specific verb 'Summarizes' and clearly identifies the resource: progress toward the application target, pipeline health, tier distribution, and rejection reasons. This distinguishes it from sibling tools like list_applications or audit_log, which focus on listing individual items rather than providing an aggregate overview.

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

    Usage Guidelines3/5

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

    The description implies a high-level, summary-style use case, but it does not explicitly state when to use this tool versus alternatives or mention any exclusions. There is no 'use this instead of X' guidance, leaving the agent to infer its role from the word 'Summarizes'.

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

  • Behavior3/5

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

    Annotations already indicate this is a write operation (readOnlyHint=false). The description adds value by specifying that it 'appends' to history, implying a non-destructive additive behavior rather than an overwrite. However, it does not disclose other behavioral aspects such as idempotency, side effects, or permissions. Given the annotation coverage, this is adequate but not rich.

    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?

    The description is a single, well-structured sentence that front-loads the action ('Appends an outcome') and provides a purpose clause. There is no redundant information, and every word earns its place. It is concise without sacrificing clarity.

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

    Completeness3/5

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

    For a simple write tool with no output schema, the description gives a clear overview but leaves out details about return values, parameter specifics, and edge-case behavior. It adequately conveys the core purpose but is not fully complete for an agent to know exactly what happens after invocation or how to fully construct a valid request beyond the schema. It is a minimum viable description with clear gaps.

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

    Parameters2/5

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

    The input schema has 0% description coverage, so the description must compensate by explaining parameter meanings. It does not. The description mentions 'outcome' and 'track, tier, and company' but never explicitly ties these to the parameters (applicationId, status, detail). The enum values are self-explanatory, but the role of 'detail' and the exact semantics of each status are not clarified. This is a significant gap.

    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?

    The description clearly states a specific action ('Appends an outcome') and a specific resource ('an application's history'). It also provides the purpose (measuring conversion rates per track, tier, and company), which distinguishes it from sibling tools like record_submission. The verb and resource are concrete and unambiguous.

    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?

    The description implies the appropriate usage context by explaining when this tool is relevant: when an outcome needs to be appended for conversion tracking. It does not explicitly list alternatives or when-not-to-use, but the stated purpose gives clear context for when to invoke it. The lack of explicit exclusions keeps it slightly below a 5.

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

  • Behavior4/5

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

    With readOnlyHint already declared in annotations, the description adds the context that values are redacted and that events are recent. This goes beyond the annotation without contradiction, though it could further clarify ordering or pagination.

    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?

    The description is a single sentence that delivers all key information without redundancy. It leads with the action and resource, followed by event categories and redaction, making it efficient and easy to scan.

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

    Completeness4/5

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

    For a read-only tool with two optional parameters and no output schema, the description adequately sets expectations by listing event categories and redaction. Minor gaps like ordering details remain, but overall it is sufficient for basic usage.

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

    Parameters2/5

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

    The description makes no mention of the filtering or limit parameters. While the schema describes 'type' with an example, 'limit' is left without explanation, and the description does not compensate for this 50% schema coverage.

    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?

    The description explicitly states the tool returns recent recorded events, enumerating discovery runs, approvals, submissions, and blocked attempts. This clearly distinguishes audit_log from sibling tools like list_queue or list_applications, which cover separate domains.

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

    Usage Guidelines3/5

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

    The description does not provide explicit guidance on when to use audit_log over alternatives, nor does it mention exclusions. The context of reading audit events is implied by the description, but no direct comparison or 'use this when...' statement is present.

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

  • Behavior4/5

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

    Annotations only indicate readOnlyHint=false, so the description carries the burden of explaining the mutation. It adds useful context that recording affects counts, pacing, and duplicate checks, which helps the agent understand side effects. However, it does not disclose reversibility or other behavioral details, so a 4 is appropriate.

    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?

    The description is a single, front-loaded sentence that immediately states the core action and then adds the purpose. Every word earns its place, with no filler or repetition.

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

    Completeness2/5

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

    With no output schema and only minimal annotations, the description leaves out return behavior, parameter details, and potential side effects. It is too sparse to fully guide an agent invoking the tool, especially with three parameters and no schema-level descriptions.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description does not explain any of the three parameters (applicationId, notes, confirmationRef). It only hints that an application is being marked, but provides no meaning or usage guidance for the parameters. This is a significant gap.

    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?

    The description clearly states the tool marks an application as submitted after a person sent it, using a specific verb ('marks') and resource ('application'). It distinguishes from sibling tools like submit_application by emphasizing the manual submission context, and explains the purpose of keeping counts, pacing, and duplicate checks accurate.

    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?

    The description gives clear context for when to use the tool: when a person has manually sent the application. It implies this is distinct from automated submission tools, but it does not explicitly name alternatives or provide exclusions, so it stops short of a 5.

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

  • Behavior4/5

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

    With readOnlyHint=true, the description adds meaningful behavior beyond the annotation: jobs are gated-in, ordered by score, and deduplicated by fingerprint across boards. This extra context about filtering and de-duplication is valuable, though it does not cover auth or pagination.

    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?

    Two sentences, tightly written, front-loaded with the core action ('Returns gated-in jobs ordered by score') and a valuable dedup clarification in the second sentence. Every word earns its place.

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

    Completeness3/5

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

    The core behavior is clearly described, but the tool exposes 9 optional parameters and no output schema. The description does not explain how filtering parameters interact or what the returned data looks like, leaving gaps for an agent to use it effectively.

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

    Parameters2/5

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

    Schema description coverage is only 22% (2 of 9 parameters have descriptions). The tool description does not explain parameters like limit, tiers, trackId, minScore, trackIds, companies, or locationClasses, leaving the agent to infer from names. The description adds no parameter-level meaning.

    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?

    The description states the verb 'returns' and the specific resource 'gated-in jobs ordered by score', making it clear this lists the ranked application queue. It also distinguishes from siblings by explaining fingerprint-based exclusion of already-applied roles, preventing duplicate surfacing.

    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?

    The description implies usage for viewing the prioritized queue of gated-in jobs and clarifies that applied roles are excluded, giving clear context. However, it does not explicitly name alternative tools or state when not to use it, falling short of a full when/when-not guide.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true, so the description does not need to restate safety. It adds value by detailing exactly what is rendered (every field, its value, origin, and the hash), which helps the agent understand the output and behavior beyond the annotation.

    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?

    The description is a single, concise sentence that front-loads the primary action ('Renders the full submission packet') and includes essential details without extraneous words.

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

    Completeness3/5

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

    For a simple one-parameter tool with a readOnly annotation, the description is adequate but has gaps: it doesn't mention prerequisites (e.g., application must exist) or what the hash is for beyond 'to approve'. These omissions, combined with the lack of parameter explanation, prevent a higher score.

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

    Parameters2/5

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

    Schema description coverage is 0%, and the description does not explain the applicationId parameter. Though the tool name suggests applicationId identifies the application, the description itself provides no explicit parameter semantics, failing to compensate for the low coverage.

    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?

    The description clearly states the tool renders the full submission packet including fields, values, sources, and hash. It distinguishes from siblings like preview_batch and approve_application by focusing on the individual application's packet and its approval hash.

    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?

    The phrase 'plus the packet hash to approve' indicates this is used in the approval flow, giving context for when to use it. However, it does not explicitly compare with alternatives or state when not to use it, so it stops short of a 5.

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

  • Behavior4/5

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

    Annotations declare readOnlyHint=true, and the description adds meaningful output details: it returns the manifest hash needed for approval and describes the listing structure including blocking questions. This goes beyond what the annotation alone provides, with no contradictions.

    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?

    Two tightly written sentences deliver complete information without waste. The opening word 'Lists' immediately states the action, and the output details are efficiently packed, making it easy to scan.

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

    Completeness4/5

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

    The description gives a solid overview of what the tool returns, including applications, readiness, and the manifest hash. However, it omits any explanation of the includeReady parameter and potential edge cases. Given no output schema, it covers most essentials for a preview tool but has a notable gap.

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

    Parameters2/5

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

    Schema coverage is only 50%: batchId is documented, but includeReady is not. The description does not explain includeReady or how it filters the listing. Since the schema does not cover this parameter, the description should compensate but fails to do so.

    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?

    The description uses a specific verb 'Lists' and clearly identifies the resource: every application in a batch with company, role, resume variant, and readiness. It also notes the return of the manifest hash for approval, which distinguishes it from related tools like preview_application (single app) and list_batches (batch list).

    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?

    The title 'Review a prepared batch' and the description imply this is for inspecting a batch before approval. It doesn't explicitly mention alternatives or exclusions, but the context is clear given the workflow with approve_batch and prepare_batch siblings.

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

  • Behavior4/5

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

    The description explicitly discloses that the tool creates a local draft and does not send anything, which adds valuable behavior beyond the annotations. It also reveals that it only drafts answers supported by verified profile data, a useful constraint. This is consistent with annotations (readOnlyHint=false, destructiveHint=false).

    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?

    The description is two sentences long, front-loaded with a clear list of actions and the key outcome. No unnecessary words or repetition; it earns its place.

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

    Completeness4/5

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

    The description covers the main internal steps and the critical side-effect (local draft, no sending), which is sufficient for a preparation tool with no output schema. It does not detail return values or error conditions, but these are less critical given the tool's focused role in the application workflow.

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

    Parameters3/5

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

    The schema describes 'force' but not 'jobId', leaving 50% coverage. The description indirectly implies jobId via 'matched track' but does not explicitly explain either parameter's role or format. The description adds some context about the workflow but does not compensate fully for the missing jobId description.

    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?

    The description uses specific verbs (builds, loads, drafts, selects) to clearly state what the tool does, and distinguishes itself from submission tools by noting 'nothing is sent.' It is clearly about preparing an application packet for a specific job, setting it apart from siblings like preview_application or submit_application.

    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?

    The description implies this is a pre-submission step by stating it 'creates a local draft; nothing is sent,' which signals when to use it. It also provides an implicit exclusion (not for sending), though it does not explicitly name alternative tools or give a when-not-to-use scenario.

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

  • Behavior5/5

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

    The description adds rich behavioral context beyond the annotations: it re-runs per-application guards, honours daily limits and pacing delays, stops cleanly when the limit is reached, and respects campaign's maxBatchSize. These details are not inferable from the annotations alone and meaningfully inform the agent about side effects and stopping behavior.

    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 sentences, each with substantive information. The primary action is front-loaded, and subsequent sentences add constraints and edge-case behavior. No filler or redundancy; the description is appropriately sized for the tool's complexity.

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

    Completeness3/5

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

    The description covers key behavioral aspects (guards, limits, stopping) but omits parameter semantics and any indication of return values or errors. Since there is no output schema, the agent is left to infer the response format. It is a functional, minimum-viable description but has clear gaps for a tool with 4 parameters and no output schema.

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

    Parameters2/5

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

    The input schema has 0% description coverage, and the description does not explain any of the parameters (mode, headless, maxSubmissions). It mentions 'maxBatchSize' from the campaign, but not the 'maxSubmissions' parameter or the meaning of 'mode' or 'headless'. Since the schema provides no descriptions, the tool description should have compensated but fails to do so.

    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?

    The description clearly states the tool's function: submitting every approved application in a batch. It uses a specific verb ('submits') and resource ('approved application in the batch'), and distinguishes itself from the sibling 'submit_application' which handles individual applications. The title reinforces this.

    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?

    The description conveys that this tool is for submitting a batch of already-approved applications, implying it should be used after approval (e.g., after 'approve_batch'). It does not explicitly mention alternatives or exclusions, but the context is clear enough for an agent to select it over single-submission tools. Missing explicit 'when not to use' prevents a 5.

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

  • Behavior5/5

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

    It discloses that it creates local drafts and a batch manifest, that nothing is sent, that needs_human applications are excluded from batch approval, and that maxBatchSize caps the limit. These details go beyond the readOnlyHint=false/openWorldHint=true annotations, providing crucial behavioral context.

    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 sentences, each carrying key information: the action, the local-only nature, and two important edge-case behaviors. No filler.

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

    Completeness4/5

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

    Given 8 optional parameters and no output schema, the description covers the core behavior and important constraints (local drafts, needs_human exclusion, maxBatchSize cap). However, it lacks any mention of the return value and does not elaborate on the filter parameters, which are partially documented in the schema.

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

    Parameters2/5

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

    The description only mentions the limit parameter indirectly via the maxBatchSize cap. It does not explain the meaning of tiers, minScore, trackIds, companies, locationClasses, minCompensation, or allowUnknownCompensation, leaving half the schema descriptions to cover them. This fails to compensate for the 50% schema coverage.

    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?

    The description states it selects queued jobs matching a filter and prepares an application packet for each, using the same drafting and validation as the single-job path. This clearly identifies the action (prepare batch), the resource (application packets), and distinguishes it from single-job tooling.

    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?

    The description implies batch use by mentioning 'Selects queued jobs matching a filter' and explicitly notes 'nothing is sent', distinguishing it from submission tools. However, it does not explicitly name alternatives like prepare_application or preview_batch, so while context is clear, exclusions are not fully stated.

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

  • Behavior4/5

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

    Beyond annotations (readOnlyHint=false), the description explicitly states the action is 'Records a human approval', confirming a write operation. It also discloses the safety mechanism preventing silent over-approval, which is not captured in annotations.

    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?

    Two sentences with no filler. Each clause provides distinct information: what it does, and the key prerequisite/constraint.

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

    Completeness4/5

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

    The description covers the core purpose and critical prerequisite, and the schema covers parameter constraints. It doesn't describe return values or error behavior, but with no output schema and a simple write operation, the provided context is sufficient for an agent to select and invoke 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?

    The schema describes manifestHash and expectedCount, but the description adds why they matter: binding approval to the exact packet set and preventing coverage of more applications than reviewed. It doesn't add detail for batchId or note, but these are straightforward.

    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?

    The description uses a specific verb ('Records') and clearly identifies the resource ('human approval for each ready application in the batch'). It differentiates from sibling tools like approve_application by emphasizing the batch scope and the safety constraint.

    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?

    It states prerequisites: 'Requires the current manifest hash and the exact count being approved', which guides when to use the tool. However, it doesn't explicitly name alternative tools or state when not to use it, only implies it for batch-level approvals.

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

  • Behavior5/5

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

    Beyond the annotations (readOnlyHint false, openWorldHint true, destructiveHint false), the description clarifies the safety profile by explicitly stating 'Read-only against employers: no application is created or sent.' It also discloses that it 'stores the results,' which is a side effect not obvious from the annotations. This adds useful context about side effects and external dependencies.

    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?

    The description is a single, dense sentence that front-loads the core action. Every clause adds necessary information (scope, processing steps, side-effect disclosure) with no redundant filler.

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

    Completeness4/5

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

    The description covers the full workflow and explicitly notes that results are stored. However, because there is no output schema, the description does not say what the tool returns in the response (e.g., job listings vs. a status summary), relying on the mention of 'includeIssues' to hint at response content. This is a minor gap.

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

    Parameters3/5

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

    Schema coverage is 100% and both parameters (companies, includeIssues) are already described in the schema. The description adds no additional parameter-level detail beyond naming them in the flow. Baseline of 3 is appropriate.

    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?

    The description uses specific verbs ('fetches', 'normalizes', 'applies', 'scores', 'stores') with a clear resource ('every configured ATS board'). It distinguishes itself from siblings like 'scan_hiring_thread' by describing a batch discovery across all boards and a scoring pipeline.

    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?

    The description clearly implies when to use this tool: to run the full discovery process across all configured boards. It also notes an optional company filter and includeIssues flag. However, it does not explicitly state when *not* to use it or mention alternatives like 'scan_hiring_thread'.

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

  • Behavior4/5

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

    Annotations already mark readOnlyHint=true, so the description adds value by explaining the probing scope, verification requirement, and Workday limitation. It does not describe the return format, but that is less critical given the annotations and clear purpose.

    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?

    Two sentences with zero filler. The first sentence states the core action; the second gives an exception and a direct pointer to an alternative. Front-loaded, efficient, and every word contributes.

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

    Completeness4/5

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

    With no output schema, the description covers the main selection needs: what it probes, what to do with results, and what not to probe. It does not explain return values, but for a probe/resolution tool the guidance is adequate and the sibling context reinforces the workflow.

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

    Parameters3/5

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

    Schema description coverage is 100%, and the schema's descriptions already document both companyName and extraSlugs. The description adds contextual meaning by linking companyName to the target slug and extraSlugs to 'candidates to probe,' but it does not add syntax or format details beyond the schema.

    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?

    The description names the specific resource (Greenhouse, Lever, Ashby), the action (probes for public board slug), and explicitly excludes Workday, clearly distinguishing from sibling add_company_board. The purpose is unambiguous and actionable.

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

    Usage Guidelines5/5

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

    The description explicitly states when this tool is appropriate (probing specific ATS providers) and provides an alternative ('find that URL on the employer's careers page and record it with add_company_board') for unsupported Workday. It also gives the crucial prerequisite: guesses must be verified before adding to companies.json.

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

  • Behavior5/5

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

    The description reveals a critical side effect not captured by the annotations: changing content invalidates prior approval because approval is bound to the packet hash. This goes beyond the simple readOnlyHint/destructiveHint flags and provides essential behavioral context.

    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?

    Two sentences, front-loaded with purpose and a crucial behavioral warning. No redundant phrasing or filler.

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

    Completeness4/5

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

    The description covers the primary function and the most important consequence (approval invalidation). It does not discuss return values, error conditions, or prerequisites like application state, but given the tool's likely straightforward nature and lack of output schema, it is nearly complete.

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

    Parameters3/5

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

    Schema coverage is low (25%), with only 'answers' having a description. The description adds meaning for 'coverLetter' and 'answers' but leaves 'notes' unexplained and gives no additional context for 'applicationId'. Since the description partially compensates for the schema gap, a mid-range score is appropriate.

    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?

    The description uses a specific verb ('Records') and identifies the exact resource (cover letter and outstanding answers). It distinguishes the tool from siblings like prepare_application and approve_application by clarifying that this fills gaps the policy engine doesn't handle.

    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?

    The description implies when to use the tool: after preparation, to fill questions the policy engine won't answer. It also warns that changing content invalidates prior approvals, which serves as a caution against inappropriate use. However, it does not explicitly name alternative tools or state when not to use it.

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

  • Behavior4/5

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

    The description adds behavioral context beyond the annotations: it explains that the tool re-reads specific files and that this takes effect without restarting the server, clarifying the runtime side-effect. Annotations already indicate readOnlyHint=false and destructiveHint=false, and the description is consistent with these, adding useful detail.

    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?

    The description is a single, front-loaded sentence that states the action and purpose without any filler. Every word contributes meaning.

    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?

    For a zero-parameter tool with no output schema, the description fully covers what the tool does, why it is used, and the specific files affected. It is complete and self-contained.

    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?

    There are no parameters, so the baseline for this dimension is 4. The description still adds value by naming the exact config files that will be re-read, which is more specific than an empty schema.

    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?

    The description uses the specific verb 'Re-reads' and identifies the exact resources (profile.json, campaign.json, companies.json) plus the intended outcome ('so edits take effect without restarting the server'). This clearly distinguishes the tool from all sibling tools, none of which perform configuration reload.

    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?

    The description clearly implies when to use the tool: after editing config files, to apply changes without a restart. It provides clear context but does not explicitly discuss alternatives or when not to use it, which is acceptable for a simple no-parameter tool with no sibling overlap.

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

  • Behavior5/5

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

    The description adds significant behavioral context beyond annotations: it reveals the conditional save ('Nothing is saved unless postings were seen'), explains the reason (wrong slug answers 200 with generic page), and notes the Workday limitation. This complements the annotations (readOnlyHint=false, destructiveHint=false) without contradiction. No annotation contradiction.

    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?

    The description is two sentences, front-loaded with the core action, and every phrase adds value. It succinctly explains the verification logic and usage context without redundancy. This is concise and well-structured.

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

    Completeness4/5

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

    Given the tool's complexity (8 parameters, no output schema), the description covers the essential behavioral aspects: verification, conditional saving, and the Workday-specific use case. It does not explain every parameter, but the schema covers some, and the description provides enough to invoke it correctly for the main use cases. Slightly more detail on optional parameters would make it complete.

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

    Parameters3/5

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

    Schema coverage is 50%, with descriptions for name, board, save, and query. The description adds overall context but does not explain undefined parameters like ats, tags, tier, or region. It does reinforce board semantics (e.g., Workday triple) but does not fully compensate for the missing parameter descriptions. Hence a mid-range score.

    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?

    The description clearly states a specific action ('Checks that a candidate board actually serves postings, then saves it to companies.json') with a distinct resource (candidate board, companies.json) and purpose. It also distinguishes from siblings by explaining when to use it ('record boards found elsewhere') and emphasizing Workday, which cannot be probed by guessing.

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

    Usage Guidelines5/5

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

    Explicit guidance is provided: 'Use this to record boards found elsewhere — a careers-page URL or a web search' and explicitly calls out Workday as a case requiring this tool. This implies when not to use it (for probing by guessing, likely via resolve_company_board) and gives clear context for choosing this tool.

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

  • Behavior5/5

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

    Annotations provide readOnlyHint=false, openWorldHint=true, destructiveHint=false, and the description supplements these with specific behavioral traits: it verifies links actually serve postings, it can optionally save to companies.json (with 'Defaults to false, so a scan is read-only unless asked'), and it uses free public API access. This adds meaningful context about side effects, cost, and verification logic that annotations alone do not convey. No contradiction with annotations; the description aligns with and enriches them.

    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?

    The description is three sentences, each earning its place: the first states the core action and outcome, the second clarifies its role versus alternatives and the downstream ingestion step, and the third addresses cost and API usage. It is front-loaded with the primary purpose and avoids fluff or repetition of schema/annotation content. The structure is efficient and scannable for an AI agent.

    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?

    For a tool with no output schema, four optional parameters, and moderate complexity, the description is exceptionally complete. It explains the tool's workflow (scan, verify, optionally save), its place in the larger tool ecosystem (leads to discover_jobs), default safety behavior (read-only unless save=true), and cost implications. This provides the agent with enough context to invoke it appropriately without needing to consult additional documentation.

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

    Parameters3/5

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

    Input schema has 100% description coverage for all four parameters, each with clear descriptions (save defaults to false, tier defaults to C, limit has max/min and cost note, threadId defaults to most recent). The description does not add additional parameter-level nuance beyond what the schema already states. For example, the description mentions 'optionally saves' but the schema already details save behavior. With high schema coverage, the baseline of 3 applies, and the description provides no extra semantic value for parameters.

    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?

    The description opens with a concrete, specific action: 'Scans a monthly Hacker News 'Ask HN: Who is hiring?' thread for links to employers' own ATS boards, verifies each one actually serves postings, and optionally saves the new ones to companies.json.' It clearly states the resource (HN thread), the verb (scans/verifies/saves), and the output (companies.json). It also distinguishes itself from siblings by framing itself as a 'lead source, not a job source' and explicitly mentioning discover_jobs as the downstream job ingestion tool, making its purpose distinct from other tools.

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

    Usage Guidelines5/5

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

    The description gives explicit guidance on when to use this tool: 'This is a lead source, not a job source... only the board slug is taken and discover_jobs then ingests every role at that company.' This not only states its role but also names the correct next tool (discover_jobs), serving as an alternative. It also provides cost context ('Free to call — it uses the public Hacker News API and no third-party scraping credits'), helping the agent decide based on resource constraints. This exceeds a simple 'when to use' by integrating the tool into a workflow.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

autoapply-mcp MCP server

Copy to your README.md:

Score Badge

autoapply-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/niragmehta/autoapply-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server