Skip to main content
Glama

Generate a salary record

generate_salary
Read-only

Generate synthetic salary data for Nigerian job levels (entry, mid, senior, executive) to support realistic testing and development.

Instructions

Generates a synthetic salary record.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
levelNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
valueYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv2.0.0
    • removedInput schema / properties / level / description
      Removed value: -"The level of the salary. The accepted level values are entry, mid, executive and senior"
    • addedInput schema / properties / level / enum
      Added value: +[
      +  "entry",
      +  "mid",
      +  "executive",
      +  "senior"
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "value": {}
      +  },
      +  "required": [
      +    "value"
      +  ],
      +  "type": "object"
      +}
  2. First observedv1.0.1

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already convey read-only, non-destructive behavior, and the description adds the useful fact that the record is synthetic. However, it says nothing about randomness, consistency, or dependencies, so it provides adequate but not rich behavioral context given 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?

One short sentence, front-loaded with the core action and object, with no wasted words. It is as concise as a description can be, though it sacrifices explanatory depth elsewhere.

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 simple (one optional enum parameter) and has an output schema and annotations, so the description is close to sufficient. However, the lack of usage guidance and parameter semantics leaves gaps that an agent must resolve by inference, making this a minimum-viable description.

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 never mentions the 'level' parameter or how it affects the generated salary. The enum values are self-explanatory, but the description adds no meaning beyond the schema and fails to compensate for the missing parameter documentation.

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?

Description uses a clear verb ('generates') and names the resource ('synthetic salary record'), so an agent knows what it produces. It does not explicitly differentiate from sibling generators like generate_work_record, which could also involve salary data, so it falls short of the top score.

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 when-to-use or when-not-to-use guidance is given; the description states only what the tool does. With many sibling generator tools available, there is no mention of alternatives or conditions, so an agent must infer selection from the name and schema.

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