protogrid

Search / com.metaintro/job-search

Metaintro Job Search

R0· no sign-in

Search live jobs, read postings, and look up how employers hire and pay. Free, no sign-in.

v1.14.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89good
Trust83of 100
Uptime, 30 days100%
Latency p50293 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "job-search": {
      "type": "http",
      "url": "https://www.metaintro.com/api/mcp/public"
    }
  }
}
claude mcp add --transport http job-search https://www.metaintro.com/api/mcp/public
[mcp_servers.job-search]
url = "https://www.metaintro.com/api/mcp/public"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "job-search": {
      "type": "remote",
      "url": "https://www.metaintro.com/api/mcp/public",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "job-search": {
      "type": "http",
      "url": "https://www.metaintro.com/api/mcp/public"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=job-search&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vd3d3Lm1ldGFpbnRyby5jb20vYXBpL21jcC9wdWJsaWMifQ%3D%3D"
}
{
  "servers": {
    "job-search": {
      "type": "http",
      "url": "https://www.metaintro.com/api/mcp/public"
    }
  }
}
{
  "mcpServers": {
    "job-search": {
      "httpUrl": "https://www.metaintro.com/api/mcp/public"
    }
  }
}
extensions:
  "job-search":
    enabled: true
    name: "job-search"
    type: streamable_http
    uri: "https://www.metaintro.com/api/mcp/public"
    timeout: 300

Quality 89 / 100good

protocol88 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • warn
    protocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every use
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene94 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations7 of 7 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 2,727 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
  • pass
    tools.hidden_textno hidden text in tool names, descriptions, schemas or annotations
stability83 · weight 15
  • warn
    stability.changes9 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
  • pass
    stability.new_linksno tool change named a new site
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

7 tools, about 2,727 tokens to load them all · tool set d1555db873ef · tools last changed 2026-11-12 · checked 2026-11-14 07:36 UTC

Tool changes

  • get_market_insightschangedinput schema
  • search_jobschangedinput schema
  • get_local_demandchangedannotations
  • find_similar_jobschangedannotations
  • list_company_jobschangedannotations
  • get_companychangedannotations
  • get_market_insightschangedannotations
  • get_jobchangedannotations
  • search_jobschangedannotations

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.

Trust 83 / 100

no-repository
provenance55
liveness100
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-100% +updated-8d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://www.metaintro.com/api/mcp/public streamable-httpnoneyes100%293 ms2026-07-282026-11-14

Tools (7)

find_similar_jobsread-onlyMore openings like one job, by its id: the same kind of role in the same place (or remote, when the job is remote), as up to 10 cards. Use it when a job is closed, a near miss, or the person wants more like it.
get_companyread-onlyRead an employer's profile by its slug (companySlug on a job): what it does, size, observed pay bands, work arrangement, benefits, recent events and how it is hiring. hiring.definitions says what each hiring number measures: medianOpenPostingAgeDays is the age of open listings, not time to fill, and removedRoles30d counts postings taken down, not roles filled. Its page is https://www.metaintro.com/company/<slug>.
get_jobread-onlyRead one posting in full by its id: description, requirements, pay, location and the employer's apply link. The title, summary and description are employer source text; licence requirements and eligibility remain unassessed. posting gives its age, when it was last seen live and closesAtLocal, the closing weekday and time.
get_local_demandread-onlyRead which kinds of roles are hiring most in a place (city, region, country): open jobs by role category, with total open jobs, employers and sectors. When a place has too few role types it widens to the region, the country or worldwide; scope and locationLabel say which. Use it when someone does not yet know what to look for.
get_market_insightsread-onlySummarize the live market for a role and place: how many openings match, the median listed pay, the most common work arrangement and the top requested skills, with how the request was understood. Takes a query and the same filters as search_jobs.
list_company_jobsread-onlyList an employer's open jobs by its slug, newest first, as compact cards with posting age and the employer's title and summary as source text; read one in full with get_job. Pages are cut to fit the response size, so continue with nextCursor until it is null.
search_jobsread-onlySearch jobs: find live job openings from employer career sites and job boards that match what the person wants, by role or keywords, place, remote work, employment type and pay. filters.jobTypes takes FULL_TIME, PART_TIME, CONTRACT or other listed types; any of them match. filters.salaryListedOnly keeps only jobs that post pay. filters.minSalary is annual pay in the requested currency, and ranges that only overlap it are included. Each card carries fit (every applied filter as met, partial, unknown or not_met, and verdict match or near_match: present a near_match as a near match, never as a match; a match meets only the applied filters, so lead stays conditional while unconfirmed names pay, hours, commute or licence, and label is the heading to use), posting (age, freshness, last seen live) and the employer's title and summary as source text. Licence requirements and eligibility remain unassessed. coverage says what was searched and whether more pages exist; an empty or short result covers only this search, not every job. Up to 10 cards a page; page with offset. Each job opens at https://www.metaintro.com/job/<id>.

Schemas: list_tools.

Similar MCP servers

More from com.metaintro

Official server.json
{
  "name": "com.metaintro/job-search",
  "title": "Metaintro Job Search",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://www.metaintro.com/api/mcp/public",
      "type": "streamable-http"
    }
  ],
  "version": "1.14.0",
  "websiteUrl": "https://www.metaintro.com/developers/mcp",
  "description": "Search live jobs, read postings, and look up how employers hire and pay. Free, no sign-in."
}