Skip to main content
Glama

Read a job posting link

read_job_link
Read-only

Read a link to a job posting into its title, company, location and full text. Spends no analysis. Postings on Greenhouse, Lever, Ashby, SmartRecruiters, Workday, Workable and Recruitee are read through the board's public API; other pages through the job posting they declare or their main text. The text goes to analyze_vacancy as description, with title, company, location and url; existing_analysis_id means this user already analyzed the link and get_vacancy_detail shows that analysis. LinkedIn and Glassdoor pages are not read (login_required). Errors: login_required, blocked, unreadable, posting_closed, rate_limited (20 links an hour, 10 a day on the free plan, 60 on a paid one), invalid_payload.

Input Schema

NameRequiredDescriptionDefault
inputYes

Output Schema

NameRequiredDescriptionDefault
urlYesThe link, cleaned of tracking parameters.
titleYesThe posting's title as the page or the job board names it.
sourceYesWhere the text came from: pool = a posting the user's or another radar already found, ats = the job board's public API, page = the page itself.
companyNoThe employer, when the posting names one.
locationNoWhere the job is, as the posting says it.
descriptionYesThe posting's full text, up to 20 000 characters.
existing_analysis_idNoThis user's analysis of the same link, when there is one; get_vacancy_detail shows it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and destructiveHint=false, and the description adds substantial context beyond that: per-board retrieval strategies (public API vs. declared posting vs. main text), a concrete rate limit (20/hr, 10/day free, 60 paid), and an enumerated error taxonomy. It doesn't say whether fetches are cached or how long they take, but the disclosure is well above the annotation baseline.

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?

Dense but front-loaded: purpose first, then mechanics, then handoff, then errors and limits. The error/rate-limit tail is a run-on list that could be broken out, but every clause carries information an agent needs.

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 one-parameter read tool with an output schema and safety annotations already present, this covers the supported domains, the downstream handoff, the already-exists case, the exclusions, the failure modes and the quotas. Nothing an agent needs to decide whether and how to call it 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 0%, so the description must carry the weight; it does constrain 'url' implicitly by naming the supported boards and the LinkedIn/Glassdoor exclusion, which is genuinely useful. However, it never states the url format requirements or what the 2048-char limit entails, so the single parameter remains partly underspecified.

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 first sentence states a specific verb (read) and resource (a job posting link) plus exactly what is extracted: title, company, location, full text. It also distinguishes itself from the analysis sibling by stating 'Spends no analysis', which no other sibling does.

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 routing both downstream ('The text goes to analyze_vacancy as description') and for the already-analyzed case ('existing_analysis_id means this user already analyzed the link and get_vacancy_detail shows that analysis'). It also names an explicit exclusion: LinkedIn and Glassdoor are not read because of login_required.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.