Search / com.jobyap/jobs
JobYap Job Search
R0· no sign-inSearch job postings aggregated from companies' careers sites, plus each job's discussion thread.
v1.1.0 · active · repository · website · descriptor JSON · versions
Search / com.jobyap/jobs
R0· no sign-inSearch job postings aggregated from companies' careers sites, plus each job's discussion thread.
v1.1.0 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"jobs": {
"type": "http",
"url": "https://mcp.jobyap.com/mcp"
}
}
}claude mcp add --transport http jobs https://mcp.jobyap.com/mcp[mcp_servers.jobs]
url = "https://mcp.jobyap.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"jobs": {
"type": "remote",
"url": "https://mcp.jobyap.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"jobs": {
"type": "http",
"url": "https://mcp.jobyap.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=jobs&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmpvYnlhcC5jb20vbWNwIn0%3D"
}{
"servers": {
"jobs": {
"type": "http",
"url": "https://mcp.jobyap.com/mcp"
}
}
}{
"mcpServers": {
"jobs": {
"httpUrl": "https://mcp.jobyap.com/mcp"
}
}
}extensions:
"jobs":
enabled: true
name: "jobs"
type: streamable_http
uri: "https://mcp.jobyap.com/mcp"
timeout: 300
protocol.modernsupports 2026-07-28 (server/discover)protocol.statelessanswers without a sessionprotocol.transportstreamable HTTPprotocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every useauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length1 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations9 of 9 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: search_jobs (idempotentHint); get_job_comments (idempotentHint); search_locations (idempotentHint); …tools.token_costabout 2,374 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes4 tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namesearch_locationschangeddescriptionResolve a free-text place name ("bay area", "Germany", "berlin") to the location identifiers search_jobs accepts (country-XX, state-XX-YY, city-XX-YY-name). Searches every place JobYap knows, not only those with current openings, so an identifier may match no jobs. City display omits the state, and the list can be shorter than limit.
Resolve a free-text place name ("toronto", "Japan", "Texas") to the location identifiers search_jobs accepts (country-XX, state-XX-YY, city-XX-YY-name). Searches every place JobYap knows, not only those with current openings, so an identifier may match no jobs. City display omits the state, and the list can be shorter than limit.
match_jobschangeddescriptionShortlist, screen and rank live postings for one candidate in a single call. Filters active jobs by title terms (any of them; a term matches when the title holds all its words), excluded title terms, companies, locations and posting window, then takes the newest 300 of that pool (pool_total says how many matched) and reads each full description. It drops postings with no usable description, postings whose stated minimum years of experience exceed candidate_years by more than 1, and, with needs_sponsorship, postings that refuse sponsorship or require citizenship or a clearance; dropped counts each reason. The rest are ranked by how many skills appear in the description, then newest first. Each result carries skills_matched, years_bar, flags and up to 6 requirement sentences. The screening is heuristic: read finalists in full with get_job.
Find and rank the best live postings for one specific candidate, such as someone who shared a resume or described their experience, skills or visa needs. Slow: it reads each posting's full description, so a call can take 10 to 15 seconds. For browsing, listing or counting postings, use search_jobs, which answers in under a second. Filters active jobs by title terms (any of them; a term matches when the title holds all its words), excluded title terms, companies, locations and posting window, then takes the newest 300 of that pool (pool_total says how many matched) and reads each full description. It drops postings with no usable description, postings whose stated minimum years of experience exceed candidate_years by more than 1, and, with needs_sponsorship, postings that refuse sponsorship or require citizenship or a clearance; dropped counts each reason. The rest are ranked by how many skills appear in the description, then newest first. Each result carries skills_matched, years_bar, flags and up to 6 requirement sentences. The screening is heuristic: read finalists in full with get_job.
search_jobschangeddescriptionSearch JobYap's aggregated job postings with structured filters. The text query matches job titles only (case-insensitive substring) — try synonyms or shorter tokens when results are thin. Company names must exactly match values from list_companies; locations must be identifiers from search_locations. work_mode matches jobs explicitly marked remote or hybrid (unmarked means unstated, not onsite). Results are active listings, newest first by default; sort=popular ranks by discussion activity. To paginate, pass next_cursor back as cursor and keep every other argument identical.
Search JobYap's aggregated job postings with structured filters. Fast (under a second): use it to browse, list, count or page through postings and to answer general questions about who is hiring. To find the best postings for one specific person (a resume, or their experience, skills or visa needs), use match_jobs instead. The text query matches job titles only (case-insensitive substring) — try synonyms or shorter tokens when results are thin. Company names must exactly match values from list_companies; locations must be identifiers from search_locations. work_mode matches jobs explicitly marked remote or hybrid (unmarked means unstated, not onsite). Results are active listings, newest first by default; sort=popular ranks by discussion activity. To paginate, pass next_cursor back as cursor and keep every other argument identical.
match_jobsaddedShortlist, screen and rank live postings for one candidate in a single call. Filters active jobs by title terms (any of them; a term matches when the title holds all its words), excluded title terms, companies, locations and posting window, then takes the newest 300 of that pool (pool_total says how many matched) and reads each full description. It drops postings with no usable description, postings whose stated minimum years of experience exceed candidate_years by more than 1, and, with needs_sponsorship, postings that refuse sponsorship or require citizenship or a clearance; dropped counts each reason. The rest are ranked by how many skills appear in the description, then newest first. Each result carries skills_matched, years_bar, flags and up to 6 requirement sentences. The screening is heuristic: read finalists in full with get_job.
Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +dns-namespace +website +reachable +uptime-96% +updated-19d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
[email protected] npmthis version is not known to the dependency resolver
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://mcp.jobyap.com/mcp streamable-http | none | yes | 96% | 399 ms | 2026-07-28 | 2026-10-20 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
jobyap-mcp | npm | 1.1.0 | – |
fetchread-only | Retrieve the full JobYap document for a search result id: the complete posting as markdown (description, salary, locations, apply link) plus top community comments, with a citable URL. |
get_jobread-only | Fetch one job posting in full: markdown description, salary ranges, locations with work mode, derived employment types, apply URL, posting dates and the canonical JobYap discussion URL. Works for expired jobs too (apply_url is null once inactive). |
get_job_commentsread-only | Fetch the community discussion thread for a job: chronological, threaded via parent_id, with like counts. Comments are user-generated content. Threads stay open after a job expires. |
get_job_statsread-only | Aggregate stats: companies tracked, active job count, and the newest posting date. |
list_companiesread-only | List every company JobYap tracks with its active job count and JobYap company-page URL. Use the exact names as search_jobs company filters. |
match_jobsread-only | Find and rank the best live postings for one specific candidate, such as someone who shared a resume or described their experience, skills or visa needs. Slow: it reads each posting's full description, so a call can take 10 to 15 seconds. For browsing, listing or counting postings, use search_jobs, which answers in under a second. Filters active jobs by title terms (any of them; a term matches when the title holds all its words), excluded title terms, companies, locations and posting window, then takes the newest 300 of that pool (pool_total says how many matched) and reads each full description. It drops postings with no usable description, postings whose stated minimum years of experience exceed candidate_years by more than 1, and, with needs_sponsorship, postings that refuse sponsorship or require citizenship or a clearance; dropped counts each reason. The rest are ranked by how many skills appear in the description, then newest first. Each result carries skills_matched, years_bar, flags and up to 6 requirement sentences. The screening is heuristic: read finalists in full with get_job. |
searchread-only | Search JobYap job postings by natural-language query. Matches job titles, falling back to significant keywords when the full phrase finds little. Returns result ids, titles and citable URLs for use with fetch. For structured filtering (location, company, remote, freshness) prefer search_jobs. |
search_jobsread-only | Search JobYap's aggregated job postings with structured filters. Fast (under a second): use it to browse, list, count or page through postings and to answer general questions about who is hiring. To find the best postings for one specific person (a resume, or their experience, skills or visa needs), use match_jobs instead. The text query matches job titles only (case-insensitive substring) — try synonyms or shorter tokens when results are thin. Company names must exactly match values from list_companies; locations must be identifiers from search_locations. work_mode matches jobs explicitly marked remote or hybrid (unmarked means unstated, not onsite). Results are active listings, newest first by default; sort=popular ranks by discussion activity. To paginate, pass next_cursor back as cursor and keep every other argument identical. |
search_locationsread-only | Resolve a free-text place name ("toronto", "Japan", "Texas") to the location identifiers search_jobs accepts (country-XX, state-XX-YY, city-XX-YY-name). Searches every place JobYap knows, not only those with current openings, so an identifier may match no jobs. City display omits the state, and the list can be shorter than limit. |
Schemas: list_tools.
{
"name": "com.jobyap/jobs",
"title": "JobYap Job Search",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://mcp.jobyap.com/mcp",
"type": "streamable-http"
}
],
"version": "1.1.0",
"packages": [
{
"version": "1.1.0",
"transport": {
"type": "stdio"
},
"identifier": "jobyap-mcp",
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org"
}
],
"repository": {
"url": "https://github.com/jobyap/agent-skills",
"source": "github"
},
"websiteUrl": "https://jobyap.com",
"description": "Search job postings aggregated from companies' careers sites, plus each job's discussion thread."
}