AI Applyd

Auto-apply that ends on an interview. ATS scoring, per-role resumes, cover letters, interview prep.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
99%
Naming quality
74%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • LOWTool 'aiapplyd_analyze_job_description' name length outside 3-30 rangein aiapplyd_analyze_job_description
  • LOWTool 'aiapplyd_generate_interview_questions' name length outside 3-30 rangein aiapplyd_generate_interview_questions
  • LOWTool 'aiapplyd_update_job_preferences' name length outside 3-30 rangein aiapplyd_update_job_preferences

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,073Tokens (tool definitions)
~1.2 KBTypical response size
Moderate attention impact (1.62% 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": {
    "aiapplyd": {
      "url": "https://mcp.aiapplyd.com/mcp"
    }
  }
}

Remote endpoints

https://mcp.aiapplyd.com/mcpstreamable-http

What it can do

Tool inventory

Tools (10)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢aiapplyd_score_resume(resume_text, job_description)

Score a resume for ATS compatibility. Returns an overall score, section scores, the keywords the resume matches and the ones it is missing, and specific rewrite suggestions. Pass job_description to score against a posting, or omit it for a general ATS readiness score. Requires a connected AI Applyd account and uses the user's credits.

Input Schema

{
  "type": "object",
  "properties": {
    "resume_text": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the resume"
    },
    "job_description": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the job description (optional, omit for a general ATS readiness score)"
    }
  },
  "required": [
    "resume_text"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢aiapplyd_analyze_job_description(job_description)

Extract what a job posting actually screens on: the exact ATS keywords, must-have versus nice-to-have requirements, seniority signals, and red flags. Call this before tailoring a resume so the resume mirrors the posting's own language. Requires a connected AI Applyd account and uses the user's AI credits.

Input Schema

{
  "type": "object",
  "properties": {
    "job_description": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the job description"
    }
  },
  "required": [
    "job_description"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡aiapplyd_optimize_resume(resume_text, job_description)

Rewrite a resume so it passes ATS screening. Returns the rewritten resume, a projected ATS score, and an itemised summary of every change made. Pass job_description to tailor the rewrite to one specific posting, or omit it for general ATS optimization. Requires a connected AI Applyd account.

Input Schema

{
  "type": "object",
  "properties": {
    "resume_text": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the resume to optimize"
    },
    "job_description": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the target job description (optional, omit for general ATS optimization)"
    }
  },
  "required": [
    "resume_text"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢aiapplyd_generate_interview_questions(job_title, company_name, job_description)

Produce interview preparation for a specific role and company: company insights, the questions this role is asked with approach guidance, STAR scenarios drawn from the posting, talking points, questions to ask the interviewer, and salary negotiation prep. Requires a connected AI Applyd account.

Input Schema

{
  "type": "object",
  "properties": {
    "job_title": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "Title of the position (e.g. \"Senior Software Engineer\")"
    },
    "company_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Name of the company"
    },
    "job_description": {
      "type": "string",
      "maxLength": 50000,
      "description": "Full text of the job description (optional but recommended for better results)"
    }
  },
  "required": [
    "job_title",
    "company_name"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡aiapplyd_translate_resume(target_language)

Translate the resume saved on the user's AI Applyd account into another language, ready to send to employers in that market. Saves the translation as a new resume and leaves the original unchanged. Requires a connected AI Applyd account.

Input Schema

{
  "type": "object",
  "properties": {
    "target_language": {
      "type": "string",
      "minLength": 1,
      "maxLength": 50,
      "description": "Target language (e.g. \"Spanish\", \"French\", \"German\", \"Japanese\")"
    }
  },
  "required": [
    "target_language"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢aiapplyd_search_jobs(job_title, location, remote_only)

Return the user's AI-curated job matches, filtered by title, location, and remote preference. Each match carries a match score, company, location, salary, extracted skills, and the application URL. Read-only: it never changes which roles AI Applyd hunts for (use aiapplyd_update_job_preferences for that). Requires a connected AI Applyd account.

Input Schema

{
  "type": "object",
  "properties": {
    "job_title": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "Job title to search for (e.g. \"Software Engineer\", \"Product Manager\")"
    },
    "location": {
      "type": "string",
      "maxLength": 200,
      "description": "Preferred location (e.g. \"San Francisco, CA\", \"New York\", \"Remote\")"
    },
    "remote_only": {
      "type": "boolean",
      "description": "If true, only show remote-friendly positions"
    }
  },
  "required": [
    "job_title"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴aiapplyd_update_job_preferences(target_roles, locations, remote_only)

Set the roles and locations AI Applyd hunts for on the user's behalf, and re-run discovery immediately. This REPLACES the target roles / locations currently saved on the account, so pass the complete list you want, not just an addition. Only call this when the user explicitly asks to change what they are looking for. Requires a connected AI Applyd account.

Input Schema

{
  "type": "object",
  "properties": {
    "target_roles": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Full list of job titles to hunt for. REPLACES the saved list."
    },
    "locations": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Full list of preferred locations. REPLACES the saved list."
    },
    "remote_only": {
      "type": "boolean",
      "description": "Whether to include remote-friendly positions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡aiapplyd_generate_cover_letter(job_description, company_name)

Write a cover letter for a specific job from the resume already saved on the user's AI Applyd account, in their own voice and free of recruiter cliches. Returns the finished letter and saves it to the account. Requires a paid plan (Hired in 30+).

Input Schema

{
  "type": "object",
  "properties": {
    "job_description": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the target job description"
    },
    "company_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Name of the company you are applying to"
    }
  },
  "required": [
    "job_description",
    "company_name"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴aiapplyd_auto_apply(job_url)

Apply to ONE specific job posting end to end: the resume and cover letter are rewritten for that role, then the form is completed and submitted on the employer's own hiring system, not a job board. All fifteen major ATS platforms land: Workday, Greenhouse, Lever, Ashby, Workable, iCIMS, Personio, Recruitee, Teamtailor, Rippling, Breezy, SmartRecruiters, BambooHR, JazzHR, softgarden. Follows the account's review setting: submits directly, or routes to the review queue. Requires a paid plan (Hired in 30+).

Input Schema

{
  "type": "object",
  "properties": {
    "job_url": {
      "type": "string",
      "format": "uri",
      "description": "URL of the job posting to apply to"
    }
  },
  "required": [
    "job_url"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡aiapplyd_build_pdf(resume_text, template, make_public)

Build a formatted, ATS-clean resume from raw text in the user's AI Applyd resume builder, where it stays editable and downloads as a PDF. Templates: modern, classic, or minimal. Private to the account by default; set make_public to true only if the user explicitly asks for a shareable public link. Requires a paid plan (Hired in 30+).

Input Schema

{
  "type": "object",
  "properties": {
    "resume_text": {
      "type": "string",
      "minLength": 50,
      "maxLength": 50000,
      "description": "Full text of the resume"
    },
    "template": {
      "type": "string",
      "enum": [
        "classic",
        "modern",
        "minimal"
      ],
      "description": "Resume template style (default: classic)"
    },
    "make_public": {
      "type": "boolean",
      "description": "Publish a public share link. Anyone with the link sees the resume INCLUDING its contact details. Defaults to false (private). Only set true when the user explicitly asks to share it."
    }
  },
  "required": [
    "resume_text"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded10 tools