Level

Free, read-only access to job listings rated by AI level, from Little AI to Builds AI.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
81%
Naming quality
93%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainin latest_ai_jobs

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,457Tokens (tool definitions)
~1.3 KBTypical response size
Moderate attention impact (1.14% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "level-jobs": {
      "url": "https://jobsbylevel.com/mcp"
    }
  }
}

Remote endpoints

https://jobsbylevel.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_jobs(query, ai_level_min, ai_level_max, remote, city, ...)

Search job listings published on Level (jobsbylevel.com), an AI job board that rates every listing by how central AI is to the role, from Little AI (AI Level 1) to Builds AI (AI Level 4). Filters: free-text query, AI level range, remote, city, company, posting age. Returns at most 20 results per page. With `query`: whole-word search with stemming ("engineer" also matches "engineering", but a fragment like "eng" alone no longer matches), ranked by relevance, and `total` is capped at 1,000 (see `total_capped` in the response). Without `query`: ranked by AI rating and recency, `total` is exact. Every result links back to its canonical page on jobsbylevel.com. This tool never returns a direct link to the employer's ATS. Ranking never depends on payment: paid or boosted listings get no priority here.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Free text: job title, tool or skill (also matches company name).",
      "type": "string",
      "minLength": 1
    },
    "ai_level_min": {
      "description": "Minimum AI level (1 to 4).",
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 2
        },
        {
          "type": "number",
          "const": 3
        },
        {
          "type": "number",
          "const": 4
        }
      ]
    },
    "ai_level_max": {
      "description": "Maximum AI level (1 to 4).",
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 2
        },
        {
          "type": "number",
          "const": 3
        },
        {
          "type": "number",
          "const": 4
        }
      ]
    },
    "remote": {
      "description": "true to keep remote roles only.",
      "type": "boolean"
    },
    "city": {
      "description": "City or location text, partial match against the listing's location.",
      "type": "string",
      "minLength": 1
    },
    "company": {
      "description": "Company name, partial match.",
      "type": "string",
      "minLength": 1
    },
    "posted_within_hours": {
      "description": "Only listings posted in the last N hours (1 to 168). 24 = posted today.",
      "type": "integer",
      "minimum": 1,
      "maximum": 168
    },
    "sort": {
      "description": "\"recent\" = newest first. Default: relevance with `query`, otherwise AI rating then recency.",
      "type": "string",
      "enum": [
        "default",
        "recent"
      ]
    },
    "page": {
      "description": "Page, starting at 1 (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢latest_ai_jobs(hours, remote, query, page)

The newest AI jobs published on Level (jobsbylevel.com): listings rated Works on AI (AI Level 3) or Builds AI (AI Level 4), posted in the last 24 hours by default, newest first. Level checks employer career sites every hour. Same data as the page https://jobsbylevel.com/new-ai-jobs. Every result links to its canonical page on jobsbylevel.com. Ranking never depends on payment: paid or boosted listings get no priority here.

Input Schema

{
  "type": "object",
  "properties": {
    "hours": {
      "description": "Posting age window in hours (default 24, max 168).",
      "type": "integer",
      "minimum": 1,
      "maximum": 168
    },
    "remote": {
      "description": "true to keep remote roles only.",
      "type": "boolean"
    },
    "query": {
      "description": "Optional free text: title, tool or skill.",
      "type": "string",
      "minLength": 1
    },
    "page": {
      "description": "Page, starting at 1 (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_job(id_or_slug)

Returns the full detail of a job listing published on Level, by its UUID or its slug (e.g. "senior-ml-engineer-acme-corp"). Includes recently expired listings, like the public page. Never returns a direct link to the employer's ATS: use the returned `url` (the canonical jobsbylevel.com page) to apply.

Input Schema

{
  "type": "object",
  "properties": {
    "id_or_slug": {
      "type": "string",
      "minLength": 1,
      "description": "The listing's UUID, or its slug."
    }
  },
  "required": [
    "id_or_slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢market_stats(top_n)

Aggregated statistics over currently published Level listings: distribution by AI level (AI Level 1 to AI Level 4), share of remote roles, and the most frequent tools and categories. Computed directly from the database, not an estimate.

Input Schema

{
  "type": "object",
  "properties": {
    "top_n": {
      "description": "Number of top tools/categories to return (default 10).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 50
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_companies_by_ai_level(limit, min_jobs)

Ranks companies currently hiring on Level by how central AI is to their open roles: the average AI rating (0-100) of their live listings. This is a Level-specific aggregation, not a third-party ranking. See the returned `method` field for the exact rule. Companies with too few live listings, and known job-board republishers, are excluded.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Max rows to return (default 20).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 50
    },
    "min_jobs": {
      "description": "Minimum number of live listings required to be ranked (default 10).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_level_definitions

Returns the definition of Level's four AI-impact levels (AI Level 1 to AI Level 4), the scale every job listing on jobsbylevel.com is rated against.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools