Skip to main content
Glama
jobvision-mcp
by sepehr071

Advertised pay statistics

jv_pay_stats
Read-onlyIdempotent

Estimate advertised monthly pay for roles on Jobvision by city, skill, seniority, or experience. Get medians, quartiles, and pay ranges in million Toman from current job ads.

Instructions

Estimate pay for a role from the salaries open Jobvision ads advertise (million Toman per month).

Use for "how much does a python developer earn in Isfahan". It samples up to 300 of the newest matching ads and summarises those that show a pay range: the median of the range midpoints, quartiles and the extremes. This is what employers advertise today, not what people earn; many ads hide pay (see share_with_pay), so treat small ads_with_pay counts as rough. Use jv_search with sort=salary to see the actual ads.

Input Schema

NameRequiredDescriptionDefault
cityNoCity, province or Tehran area, by name (اصفهان, Isfahan) or slug (isfahan, all-cities-of-tehran, tehran-shomal). One place only. See jv_locations.
remoteNoOnly remote jobs.
keywordNoJob title or skill, Persian or English, e.g. python, حسابدار, برنامه نویس.
categoryNoJob category slug or name from jv_options('categories'), e.g. developer, sales, accounting.
seniorityNoLevel of the role; same values as jv_search.
experienceNoRequired experience bracket; same values as jv_search.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.2

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover the read-only/idempotent/non-destructive profile, and the description adds substantive behavior: sampling up to 300 of the newest matching ads, aggregating only ads that show a pay range, and computing median of range midpoints plus quartiles and extremes. The caveat that this is advertised pay rather than actual earnings, and that small ads_with_pay counts make results rough, is exactly the kind of limitation an agent needs before quoting numbers.

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

Conciseness4/5

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

Purpose, example, methodology, caveat, and alternative are ordered sensibly with no filler sentences. Slightly dense in the middle with nested parentheticals, but nothing is wasted.

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?

There is no output schema, so the description carries the return-value burden and does so: it names the statistics returned (median, quartiles, extremes) and the ads_with_pay field an agent needs to judge reliability. For a six-parameter, all-optional aggregation tool, nothing material is missing.

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%, so every filter is already documented, including slug formats and the cross-references to jv_locations and jv_options. The description only implicitly characterizes the filters as 'newest matching ads' and adds no per-parameter meaning beyond the schema, so baseline 3 applies.

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: 'Estimate pay for a role from the salaries open Jobvision ads advertise', with units given (million Toman per month). It explicitly contrasts itself with jv_search, so an agent can distinguish it from 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 Guidelines5/5

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

Gives a concrete when-to-use example ('how much does a python developer earn in Isfahan') and names the alternative for the other intent: use jv_search with sort=salary to see the actual ads. It also points at share_with_pay for the coverage caveat, which routes the agent rather than leaving it to guess.

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