AI Dev Jobs

MCP for 8,700+ current AI jobs. 13 tools: search, match, salaries, companies, commerce quotes.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
82%
Qualität der Benennung
96%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,256Tokens (Tool-Definitionen)
~1.3 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.54% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "jobs": {
      "url": "https://aidevboard.com/mcp"
    }
  }
}

Remote-Endpunkte

https://aidevboard.com/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (20)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟡search_jobs(company, global_remote, job_type, level, limit, ...)

Search curated AI/ML engineering roles for free. Filter by tags (e.g. llm, pytorch), workplace (remote/hybrid/onsite), global remote eligibility, experience level, salary range, or keyword. After selecting a role, candidates may use compile_job_specific_resume for a $0 transient ATS-oriented preview without identity; a verified key is required only to save an approval-bound artifact. The employer outcome pilot never affects organic results.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "company": {
      "description": "Company slug (e.g. 'openai', 'anthropic') — returns only that company's jobs",
      "type": "string"
    },
    "global_remote": {
      "description": "Only roles explicitly open to candidates worldwide. Ambiguous or region-restricted remote jobs are excluded.",
      "type": "boolean"
    },
    "job_type": {
      "description": "Employment type",
      "enum": [
        "full-time",
        "part-time",
        "contract",
        "freelance"
      ],
      "type": "string"
    },
    "level": {
      "description": "Experience level",
      "enum": [
        "junior",
        "mid",
        "senior",
        "lead",
        "principal"
      ],
      "type": "string"
    },
    "limit": {
      "description": "Max results (default 10, max 25)",
      "maximum": 25,
      "minimum": 1,
      "type": "integer"
    },
    "location": {
      "description": "Location substring (e.g. 'San Francisco')",
      "type": "string"
    },
    "posted_within_days": {
      "description": "Only return jobs posted within the last N days. Useful for polling agents that check for new listings — try 1 for daily, 7 for weekly.",
      "maximum": 90,
      "minimum": 1,
      "type": "integer"
    },
    "query": {
      "description": "Keyword query — matches title, description, company name, and tags",
      "type": "string"
    },
    "salary_min": {
      "description": "Minimum salary in USD. Matches if job's max salary >= this value (range overlap).",
      "type": "integer"
    },
    "tags": {
      "description": "Tag filter (e.g. ['llm', 'pytorch']). Returns jobs with ANY of these tags.",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "workplace": {
      "description": "Filter by workplace type",
      "enum": [
        "remote",
        "hybrid",
        "onsite"
      ],
      "type": "string"
    }
  }
}
🟢get_job(id)

Fetch full job posting by ID or slug: title, description, requirements, salary, workplace, tags, apply URL. Use after search_jobs to read a specific listing.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Job ID (UUID) or slug",
      "type": "string"
    }
  },
  "required": [
    "id"
  ]
}
🟢list_companies(limit)

Returns top AI/ML companies by active role count, optionally with average salary. Useful for discovering who is hiring in AI.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Max companies (default 20, max 50)",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    }
  }
}
🟢get_company(slug)

Get detailed profile for an AI company: total open roles, salary range, top tags/skills, workplace distribution, and apply URL. Use after list_companies or search_jobs to learn more about a specific employer.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "Company slug (e.g. 'anthropic', 'openai', 'deepmind'). Use the slug from search_jobs or list_companies results.",
      "type": "string"
    }
  },
  "required": [
    "slug"
  ]
}
🟡get_stats

Current AI Dev Jobs index statistics: total active jobs, companies hiring, median salary, new jobs today / this week, and the top 10 trending tags across jobs posted in the last 7 days. This is free index data and does not create a payment handoff.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟡match_jobs(job_type, level, limit, location, salary_max, ...)

Rank active AI/ML jobs against a candidate profile for free. Scoring combines tag overlap (+2 per match), salary overlap (+3), workplace/level/type/location matches, and description keyword hits. After selecting a role, candidates may use compile_job_specific_resume for a $0 transient ATS-oriented preview without identity; a verified key is required only to save an approval-bound artifact. The employer outcome pilot never affects these matches.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "job_type": {
      "enum": [
        "full-time",
        "part-time",
        "contract",
        "freelance"
      ],
      "type": "string"
    },
    "level": {
      "enum": [
        "junior",
        "mid",
        "senior",
        "lead",
        "principal"
      ],
      "type": "string"
    },
    "limit": {
      "description": "Max results (default 10)",
      "maximum": 25,
      "minimum": 1,
      "type": "integer"
    },
    "location": {
      "description": "Location substring (e.g. 'San Francisco')",
      "type": "string"
    },
    "salary_max": {
      "description": "Maximum salary USD",
      "type": "integer"
    },
    "salary_min": {
      "description": "Minimum salary USD",
      "type": "integer"
    },
    "skills": {
      "description": "Candidate skills/tags (e.g. ['python','llm','pytorch'])",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "workplace": {
      "enum": [
        "remote",
        "hybrid",
        "onsite"
      ],
      "type": "string"
    }
  },
  "required": [
    "skills"
  ]
}
🟢get_salary_data(company, level, tag, workplace)

Salary benchmarks for AI/ML roles. Filter by tag (e.g. 'llm', 'pytorch'), experience level, workplace type, or company. Returns average, median, p25, p75, min, max, and sample count. Useful for compensation research and negotiation.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "company": {
      "description": "Company slug (e.g. 'anthropic', 'openai')",
      "type": "string"
    },
    "level": {
      "description": "Experience level",
      "enum": [
        "junior",
        "mid",
        "senior",
        "lead",
        "principal"
      ],
      "type": "string"
    },
    "tag": {
      "description": "Filter by tag (e.g. 'llm', 'pytorch', 'agents')",
      "type": "string"
    },
    "workplace": {
      "description": "Workplace type",
      "enum": [
        "remote",
        "hybrid",
        "onsite"
      ],
      "type": "string"
    }
  }
}
🟢get_similar_jobs(id, limit)

Given a job ID or slug, return active jobs that match on tag overlap, same workplace, level, and job type. Ranked by similarity score (tag overlap weighted 3x). Use after search_jobs to surface nearby roles — matches the /jobs/{id}/similar REST endpoint.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Job ID (UUID) or slug — same identifier get_job accepts",
      "type": "string"
    },
    "limit": {
      "description": "Max results (default 5, max 20)",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    }
  },
  "required": [
    "id"
  ]
}
🟢get_trending_companies(days, limit)

Companies posting the most AI/ML jobs in the last N days. Complements get_stats trending_tags_7d — while that answers 'what skills are trending', this answers 'who's hiring most aggressively'. Returns company name/slug/logo plus the count of new jobs in the window.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "days": {
      "description": "Look-back window in days (default 7, max 30)",
      "maximum": 30,
      "minimum": 1,
      "type": "integer"
    },
    "limit": {
      "description": "Max results (default 10, max 25)",
      "maximum": 25,
      "minimum": 1,
      "type": "integer"
    }
  }
}
🟢list_tags

Returns all available job tags/skills with the count of active jobs for each. Use to discover what tags are available for search_jobs filtering.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟡analyze_application_readiness(candidate_skills, evidence_bullets, job_id)

Analyze candidate-verified evidence against one active job for $0 without requiring identity. The transient response reports covered and unsupported public job signals without an acceptance probability, does not persist candidate evidence, does not submit an application, and rejects hidden screening-model instructions.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "candidate_skills": {
      "description": "Candidate-declared skills used to identify relevant public job language. Only verified evidence counts as coverage.",
      "items": {
        "type": "string"
      },
      "maxItems": 50,
      "type": "array"
    },
    "evidence_bullets": {
      "description": "Candidate-owned factual evidence. Raw text is processed transiently and is not retained in MCP analytics.",
      "items": {
        "properties": {
          "id": {
            "description": "Candidate-controlled stable evidence reference.",
            "type": "string"
          },
          "skills": {
            "items": {
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "text": {
            "description": "One factual, single-line resume bullet. Hidden text and screening-model instructions are rejected.",
            "type": "string"
          },
          "verified": {
            "description": "True only when the candidate has verified this claim and its provenance.",
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "text",
          "skills",
          "verified"
        ],
        "type": "object"
      },
      "maxItems": 50,
      "type": "array"
    },
    "job_id": {
      "description": "Active job UUID or slug returned by search_jobs or get_job.",
      "type": "string"
    }
  },
  "required": [
    "job_id"
  ]
}
⚪compile_job_specific_resume(candidate_skills, evidence_bullets, job_id)

Compile a $0 candidate-controlled ATS-oriented plain-text Markdown resume for one active job using only candidate-verified evidence. Without identity, returns a transient non-persisted preview that cannot be approved or submitted. With a verified candidate key, saves an immutable draft hash plus a machine-readable candidate_review handoff and requires the agent to pause for explicit human review. Never submits or authorizes an application.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "candidate_skills": {
      "description": "Candidate-declared skills. The draft lists a skill as evidence-backed only when verified evidence supports it.",
      "items": {
        "type": "string"
      },
      "maxItems": 50,
      "type": "array"
    },
    "evidence_bullets": {
      "description": "Candidate-owned factual evidence. Raw text is processed transiently and is not retained in MCP analytics.",
      "items": {
        "properties": {
          "id": {
            "description": "Candidate-controlled stable evidence reference.",
            "type": "string"
          },
          "skills": {
            "items": {
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "text": {
            "description": "One factual, single-line resume bullet. Hidden text and screening-model instructions are rejected.",
            "type": "string"
          },
          "verified": {
            "description": "True only when the candidate has verified this claim and its provenance.",
            "type": "boolean"
          }
        },
        "required": [
          "id",
          "text",
          "skills",
          "verified"
        ],
        "type": "object"
      },
      "maxItems": 50,
      "type": "array"
    },
    "job_id": {
      "description": "Active job UUID or slug returned by search_jobs or get_job.",
      "type": "string"
    }
  },
  "required": [
    "job_id",
    "evidence_bullets"
  ]
}
🟡approve_compiled_application(artifact_hash, artifact_id, principal_authorized)

Create a short-lived, single-use authorization for one email-verified candidate, one exact compiled artifact hash, and one unchanged active job. Requires principal_authorized=true, costs the candidate $0, and does not submit an application.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "artifact_hash": {
      "description": "Exact SHA-256 artifact hash returned by compile_job_specific_resume.",
      "type": "string"
    },
    "artifact_id": {
      "description": "Private artifact ID returned by compile_job_specific_resume.",
      "type": "string"
    },
    "principal_authorized": {
      "description": "True only after the named candidate reviews and authorizes this exact artifact for its exact job.",
      "type": "boolean"
    }
  },
  "required": [
    "artifact_id",
    "artifact_hash",
    "principal_authorized"
  ]
}
🟡apply_to_job(compiled_artifact_hash, compiled_artifact_id, compiled_authorization_id, job_id, principal_authorized)

Submit only the exact, visible compiled artifact after the email-verified human principal approves its hash. Requires the single-use approval authorization, an API key, and principal_authorized=true. Candidates and agents are never charged.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "compiled_artifact_hash": {
      "description": "Exact SHA-256 hash of the candidate-approved compiled artifact.",
      "type": "string"
    },
    "compiled_artifact_id": {
      "description": "Private artifact ID returned by compile_job_specific_resume.",
      "type": "string"
    },
    "compiled_authorization_id": {
      "description": "Short-lived single-use authorization returned by approve_compiled_application.",
      "type": "string"
    },
    "job_id": {
      "description": "Active job UUID returned by search_jobs or get_job.",
      "type": "string"
    },
    "principal_authorized": {
      "description": "True only after the named candidate explicitly authorizes this exact application.",
      "type": "boolean"
    }
  },
  "required": [
    "job_id",
    "principal_authorized",
    "compiled_artifact_id",
    "compiled_artifact_hash",
    "compiled_authorization_id"
  ]
}
⚪record_my_application_outcome(application_id, outcome, principal_authorized)

Record one email-verified candidate's explicitly authorized, fixed-taxonomy application outcome for $0. The receipt is candidate-reported, not employer-verified, creates no acceptance-rate claim, and never changes organic ranking.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "application_id": {
      "description": "Application ID returned by apply_to_job.",
      "type": "string"
    },
    "outcome": {
      "enum": [
        "screening_requested",
        "assessment_requested",
        "interview_requested",
        "rejected",
        "withdrawn",
        "no_response_30d"
      ],
      "type": "string"
    },
    "principal_authorized": {
      "description": "True only after the named candidate authorizes this exact self-report.",
      "type": "boolean"
    }
  },
  "required": [
    "application_id",
    "outcome",
    "principal_authorized"
  ]
}
🟢list_my_interview_outcomes

List employer-reported interview outcomes for applications submitted with the authenticated developer API key. No candidate fee is ever created.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
⚪respond_to_interview_outcome(candidate_confirms_interview, outcome_id, principal_authorized)

Record the authenticated candidate's independent response to an employer-reported interview. Requires explicit principal authorization. Confirmation can make a fixed employer fee billable; candidates and agents pay $0.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "candidate_confirms_interview": {
      "type": "boolean"
    },
    "outcome_id": {
      "type": "string"
    },
    "principal_authorized": {
      "description": "True only after the candidate authorizes this attestation.",
      "type": "boolean"
    }
  },
  "required": [
    "outcome_id",
    "candidate_confirms_interview",
    "principal_authorized"
  ]
}
🟢list_products

Returns AI Dev Board's only agent-readable commercial offer: the employer-funded Verified Interview Pilot. Candidates and agents pay $0; job discovery and the evidence-backed application workflow are free. The pilot is billable only after an owner-approved program, a verified candidate-authorized application, and independent employer and candidate interview confirmation. It never changes organic ranking.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
⚪quote_product(product_id)

Returns the deterministic, outcome-only terms for AI Dev Board's Verified Interview Pilot. No candidate or agent is charged; legacy package, sponsorship, and Dossier product IDs are retired from agent commerce.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "product_id": {
      "description": "The only active value is aidevboard_verified_interview_pilot.",
      "type": "string"
    }
  }
}
⚪start_checkout(company, employer_name, pilot_authority_asserted, pilot_role_reference, pilot_terms_acknowledged, ...)

Returns a non-charging owner-review request template for the Verified Interview Pilot only. It creates no request, program, candidate action, invoice, or charge. Employer identity, exact-role authority, and acknowledgement of the capped 30-day terms are required before a separate review request may be submitted.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "company": {
      "description": "Verified Interview Pilot employer company.",
      "type": "string"
    },
    "employer_name": {
      "description": "Verified Interview Pilot employer contact name. Included only in the returned review-request template; this MCP call does not submit it.",
      "type": "string"
    },
    "pilot_authority_asserted": {
      "description": "True only after the principal explicitly authorizes requesting owner review for this exact employer and role.",
      "type": "boolean"
    },
    "pilot_role_reference": {
      "description": "Public job URL, requisition ID, or exact role reference for the pilot.",
      "type": "string"
    },
    "pilot_terms_acknowledged": {
      "description": "True only after the employer principal acknowledges the canonical 30-day, $99-per-mutually-confirmed-interview, three-interview/$297-cap terms.",
      "type": "boolean"
    },
    "product_id": {
      "description": "Product ID from list_products.",
      "type": "string"
    },
    "work_email": {
      "description": "Verified Interview Pilot work email. Included only in the returned review-request template; this MCP call does not submit it.",
      "type": "string"
    }
  }
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet20 Tools
verifiziertVersion nicht aufgezeichnet20 Tools