# aitrainer.work AI training jobs

> Search open AI training and RLHF jobs from 20+ platforms, with pay, countries and hiring stats.

- name: work.aitrainer/jobs
- version: 1.2.0
- connection class: R0 (autonomous)
- trust: 82/100 flags: no-repository
- quality: 88/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/work.aitrainer%2Fjobs
- tools: https://api.protogrid.dev/v1/servers/work.aitrainer%2Fjobs/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "jobs": {
      "type": "http",
      "url": "https://aitrainer.work/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 99
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-97% +updated-19d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 88/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 6 of 6 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 1,107 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump
- pass `tools.hidden_text`: no hidden text in tool names, descriptions, schemas or annotations

### stability: 83 (weight 15)

- warn `stability.changes`: 14 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name
- pass `stability.new_links`: no tool change named a new site

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 6, about 1,107 tokens to load them all
- tool set hash: aee0f8180b93b5ee3759760bf5071163
- tools last changed: 2026-10-23T17:24:10.173Z
- badge: [![protogrid quality](https://protogrid.dev/badge/work.aitrainer/jobs.svg)](https://protogrid.dev/servers/work.aitrainer/jobs)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-23 `get_interview_prep` changed (description)
  - before: How a platform hires (steps, interview format, our guides) and practice questions with strong-answer outlines for a role. Use to explain what an interview involves or to run a mock interview. Practice questions are aitrainer.work's own, not a platform's real interview questions.
  - after: How a platform hires (steps, interview format, aitrainer.work guides) and practice questions with strong-answer outlines for a role. Use to explain what an interview involves or to run a mock interview. Practice questions are aitrainer.work's own, not a platform's real interview questions.
- 2026-10-23 `get_job` changed (outputSchema)
- 2026-10-23 `search_jobs` changed (description, outputSchema)
  - before: Search open AI training / AI evaluation roles (RLHF, model rating, expert data work) across 20+ platforms by keyword and filters. Returns title, platform, pay, eligible countries and the aitrainer.work page for each role, most relevant first (newest first when there is no keyword).
  - after: Search open AI training / AI evaluation roles (RLHF, model rating, expert data work) across 20+ platforms by keyword and filters. Returns title, platform, pay, eligible countries and the aitrainer.work page for each role, most relevant first (newest first when there is no keyword). Every keyword must appear in the role, so use one to three words.
- 2026-10-23 `match_jobs_to_profile` changed (description, outputSchema)
  - before: Rank open AI training / AI evaluation roles for one person, from their profession, skills, languages, country and minimum pay. Use when the user describes their background ("I am a nurse in Canada"). Returns the best matches with the reasons each one fits. Nothing about the person is stored.
  - after: Rank open AI training and AI evaluation roles for one person by their profession, skills, languages, country and minimum hourly pay (USD). Use when the user describes their own background, e.g. "I am a nurse in Canada". Returns up to 10 roles, highest match first, each with the reasons it fits. Nothing about the person is stored.
- 2026-10-23 `get_pay_stats` changed (outputSchema)
- 2026-10-23 `list_platforms` changed (outputSchema)
- 2026-10-23 `get_interview_prep` added
  - How a platform hires (steps, interview format, our guides) and practice questions with strong-answer outlines for a role. Use to explain what an interview involves or to run a mock interview. Practice questions are aitrainer.work's own, not a platform's real interview questions.
- 2026-10-23 `get_job` changed (outputSchema)
- 2026-10-23 `search_jobs` changed (description, outputSchema)
  - before: Search open AI training / AI evaluation roles (RLHF, model rating, expert data work) across 20+ platforms. Returns title, platform, pay, eligible countries and the aitrainer.work page for each role, newest first.
  - after: Search open AI training / AI evaluation roles (RLHF, model rating, expert data work) across 20+ platforms by keyword and filters. Returns title, platform, pay, eligible countries and the aitrainer.work page for each role, most relevant first (newest first when there is no keyword).
- 2026-10-23 `match_jobs_to_profile` added
  - Rank open AI training / AI evaluation roles for one person, from their profession, skills, languages, country and minimum pay. Use when the user describes their background ("I am a nurse in Canada"). Returns the best matches with the reasons each one fits. Nothing about the person is stored.

Full history: https://api.protogrid.dev/v1/servers/work.aitrainer%2Fjobs/changes

## Remotes

- https://aitrainer.work/mcp (streamable-http, auth none, reachable true, uptime30d 0.9677419)

## Packages

_none_

## Tools (6)

- `get_interview_prep`: How a platform hires (steps, interview format, aitrainer.work guides) and practice questions with strong-answer outlines for a role. Use to explain what an interview involves or to run a mock interview. Practice questions are aitrainer.work's own, not a platform's real interview questions.
- `get_job`: Full details of one role: description, requirements, pay and its source, hours, interview, countries.
- `get_pay_stats`: Market pay for AI training work (median and quartiles of hourly rates stated in listings, by platform) and hiring outcomes from the latest monthly AI Training Pay Index.
- `list_platforms`: Platforms we track, with open role counts, median hourly pay, payout speed and availability.
- `match_jobs_to_profile`: Rank open AI training and AI evaluation roles for one person by their profession, skills, languages, country and minimum hourly pay (USD). Use when the user describes their own background, e.g. "I am a nurse in Canada". Returns up to 10 roles, highest match first, each with the reasons it fits. Nothing about the person is stored.
- `search_jobs`: Search open AI training / AI evaluation roles (RLHF, model rating, expert data work) across 20+ platforms by keyword and filters. Returns title, platform, pay, eligible countries and the aitrainer.work page for each role, most relevant first (newest first when there is no keyword). Every keyword must appear in the role, so use one to three words.
