Skip to main content
Glama
irantalent-mcp

irantalent-mcp

by sepehr071

Filter lookups

it_lookups
Read-onlyIdempotent

Retrieve valid filter slugs and names for job searches and salary reports before querying. Use these lookups to match exact values and view open job counts by location.

Instructions

List the valid filter values (slug, English and Persian name) for it_search_jobs.

Call this once per kind before filtering; slugs must match exactly. Locations also carry the number of open jobs. The salary_* kinds list the slugs for it_salary_reports / it_salary.

Input Schema

NameRequiredDescriptionDefault
kindYesWhich list: job categories, industries, seniority levels, employment types, company sizes, locations (with open job counts), work types, or the specialties / seniority levels of the salary reports (for it_salary_reports and it_salary).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds real behavioral context beyond that: slugs must match exactly (a hard matching constraint), locations include open-job counts, and the call should be made once per kind — all useful for correct invocation. No pagination or caching notes, keeping it below the top mark.

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 short sentences, front-loaded with the purpose and the consumed-tool reference, followed by the calling rule and the kind-specific notes. No redundant or filler text.

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?

Single enum parameter, no output schema, and the description still communicates the returned fields (slug, English/Persian name, job counts for locations). An agent has everything needed to pick the right kind and use the results.

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?

Schema coverage is 100% and the enum is already documented, so baseline is 3. The description adds meaning by mapping the salary_* kinds to their downstream consumers (it_salary_reports / it_salary) and noting that locations carry open-job counts, giving the agent a reason to choose each kind.

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 and resource ("List the valid filter values") and immediately ties the output to the consuming tool, it_search_jobs. The parenthetical listing the returned fields (slug, English and Persian name) makes it unmistakable what this returns versus siblings like it_search_jobs or it_salary.

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?

"Call this once per kind before filtering" gives an explicit precondition and cardinality, and the last sentence routes salary-related kinds to it_salary_reports / it_salary. It lacks any when-not or failure guidance, but the workflow context is clear.

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