Skip to main content
Glama

Search Trends

explore_trends
Read-onlyIdempotent

Analyze saved-job and match-score trends across views for top skills, role mix, fit distribution, ATS score over time, and tailoring lift; filter by role, level, and employment type.

Instructions

The saved jobs and their match scores as one chart's rows, one view per call: top_skills, heatmap, role_mix, fit_distribution, ats_over_time or tailoring_lift (what each returns is on view). role_category, level and employment_type filter the jobs for every view but fit_distribution; limit (1-100) caps the skills top_skills and heatmap return. A filter or limit the view does not take is refused, and nothing is read. Skills that recur as gaps are explore_gap_frequency.

Input Schema

NameRequiredDescriptionDefault
viewYestop_skills: the most in-demand skills across the stored JDs, as {meta, top, rest}; meta.total_jobs counts the jobs read. heatmap: skill demand by role category, one row per skill and role with pct_jobs, the share of that role's jobs, and count of `of`, the role's jobs. role_mix: jobs by role category per week; every week from the first to the last has a row for every role, with count 0 where the role had no jobs. fit_distribution: how each base resume's match scores (deterministic engine) spread across jobs in five buckets; display_name is the resume's own name (null for a slug with no row), and the slug is an internal identifier. ats_over_time: the average match score per week, split by phase (base vs tailored) and role category. tailoring_lift: how much tailoring lifts the match score (base to tailored), averaged per role category, plus an overall row.
levelNo
limitNo
role_categoryNo
employment_typeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.12.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, yet the description adds real behavioral context: one view per call, invalid filter/limit combinations are refused, and 'nothing is read' in that failure case. That is genuine value beyond the annotations. It doesn't mention cost, pagination, or empty-result behavior, so not a 5.

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?

Front-loaded with the core behavior and the view enumeration, then filter scoping, then the sibling pointer. It is dense and telegraphic but every sentence adds information; the phrasing is compressed enough to be slightly harder to parse than ideal.

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?

With no output schema, the description plus the richly documented view enum cover what each view returns, which filters are honored, and the failure mode. An agent can pick the right view and call it correctly without further information.

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 only 20% (level, limit, role_category and employment_type are undocumented in the schema), so the description must compensate, and it does: it explains the filter parameters' scope per view and gives the 1-100 bounds on limit. The per-view return semantics live in the view enum description rather than here, which is fine but leaves the text dependent on the schema.

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 states the resource (saved jobs and their match scores) and the shape of the output (one chart's rows, one view per call) and enumerates the six named views. It differentiates from the sibling explore_gap_frequency by routing gap-recurrence questions there. The verb is only implied ('as one chart's rows') rather than stated directly, which keeps it just below the top mark.

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?

It states explicitly which filters apply to which views ('role_category, level and employment_type filter the jobs for every view but fit_distribution'), what limit applies to, and that unsupported filters are refused. It also names the alternative tool for gap-frequency questions, so an agent knows both when to use this tool and when not to.

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

Deploy Server

Other Tools