ATSPrep

io.github.Devabubakar由 GitHub 帳號 Devabubakar 發布v2.0.0更新於 Oct 27, 2026

Free resume tools: ATS score, job match, bullet and LinkedIn checks, tailoring, interview prep.

已驗證Streamable HTTP可網頁執行效率與工作流AI 與機器學習

概覽

AI 產生的概覽

免費的遠端履歷與求職工具組:ATS 評分、職缺媒合、要點與 LinkedIn 檢查、履歷客製化、求職信與面試練習。

可以做什麼
  • 依固定 ATS 規則為履歷評分,並逐項列出問題代碼與修正方式
  • 比對履歷與職缺、擷取職缺關鍵字,並依職缺改寫履歷原有內容
  • 檢查並改寫單條履歷要點、撰寫職涯摘要、建議動作動詞
  • 審查 LinkedIn 標題與 About 區塊,並產生標題選項
  • 撰寫求職信與辭職信,缺少的資訊以方括號標示
  • 從連結讀取公開職缺、產生面試問題,並依 STAR 架構講評練習回答
適用情境
適合正在求職、希望助理為履歷評分並修正、讓履歷對準職缺、準備面試,或打磨 LinkedIn 與求職信文字的使用者,不需註冊帳號。
執行需求
透過 streamable HTTP 連線至 atsprep.com 的遠端端點,無需帳號或 API 金鑰。README 指出配套技能僅在改用內附腳本時才需要 Node 18 以上。
安裝前請注意
tailor_resume、improve_bullet、write_summary、review_interview_answer 四個工具會把要改寫的文字送往 Cloudflare Workers AI 上的第三方語言模型。履歷屬個人資料;README 稱僅記錄工具名稱、是否成功與耗時。open_in_studio 會把履歷文字放入連結片段,fetch_job_post 會讀取外部網頁。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 ATSPrep,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.Devabubakar%2Fatsprep/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "atsprep": {
      "type": "http",
      "url": "https://atsprep.com/mcp"
    }
  }
}

README

ATSPrep Agent Skills

Five free, open-source Agent Skills that teach Claude, ChatGPT Codex, GitHub Copilot, Cursor and other agents to use ATSPrep's resume and job-search tools well: which tool to call, in what order, and to ask before adding anything to your resume.

SkillWhat it does
resume-ats-checkScores a resume with ATSPrep's ATS rules and walks through the fixes, worst first.
tailor-resume-to-jobMatches a resume to a job post (link or text), shows missing keywords and rewrites your own lines honestly.
interview-prepA mock interview, one question at a time, with STAR feedback and a stronger answer.
cover-letterDrafts a cover letter (or resignation letter) from your real experience and fills the gaps with you.
linkedin-profile-polishChecks your LinkedIn headline and About section and writes headline options.

Each skill calls the free ATSPrep MCP server at https://atsprep.com/mcp (18 tools: ATS check, job match, keyword scan, bullet and LinkedIn checks, tailoring, letters and interview practice). There's no account and no API key. If your agent has the ATSPrep MCP server connected, the skill uses its tools directly; if not, it runs the bundled scripts/atsprep.mjs (Node 18+, no dependencies), or plain HTTPS.

Install

Any agent (Claude Code, Codex, Copilot, Cursor, Gemini CLI and more)

sh
npx skills add Devabubakar/atsprep-skills

The skills CLI asks which skills and which agents to install for.

GitHub Copilot (CLI, VS Code, coding agent)

sh
gh skill install Devabubakar/atsprep-skills --all --agent github-copilot --scope user

Needs a recent GitHub CLI (gh skill is in preview). Or copy any folder from skills/ into ~/.copilot/skills/ (for you) or .github/skills/ (for one repository).

Claude Code

text
/plugin marketplace add Devabubakar/atsprep-skills/plugin install atsprep@atsprep-skills

Or copy folders from skills/ into ~/.claude/skills/ (for you) or .claude/skills/ (for one project). Claude Code skills docs.

Claude.ai and the Claude desktop app

  1. Download a skill's zip from the latest release, e.g. resume-ats-check.zip.
  2. In Claude, go to Customize → Skills, select Upload a skill, and pick the zip.
  3. Code execution and network access need to be on for the bundled script. If they aren't, connect the ATSPrep MCP server instead (below) and the skill will use it.

Using skills in Claude.

OpenAI Codex (CLI, IDE extension and app)

sh
gh skill install Devabubakar/atsprep-skills --all --agent codex --scope user

Or copy folders from skills/ into ~/.agents/skills/ (for you) or .agents/skills/ (for one repository). Codex sandboxes network access by default, so allow it for atsprep.com, or connect the MCP server. Codex skills docs.

Connect the ATSPrep MCP server (optional, recommended)

The skills work best when your agent also has the ATSPrep tools connected. Setup for every client is at atsprep.com/mcp. For example:

sh
claude mcp add --transport http atsprep https://atsprep.com/mcp   # Claude Codecodex mcp add atsprep --url https://atsprep.com/mcp                # Codex

What leaves your machine

Most ATSPrep tools are rule-based, so the same text always gets the same answer. Four (tailor_resume, improve_bullet, write_summary, review_interview_answer) also send the text they rewrite to an open language model on Cloudflare Workers AI (Google's Gemma 4, with Meta's Llama 3.3 70B if Gemma is busy), which doesn't train on it. Any line the model returns with a number, name or tool your text doesn't contain is dropped. ATSPrep logs only the tool name, whether it worked and how long it took, never your text. Details: references/privacy.md and atsprep.com/privacy.

Layout

text
skills/<name>/SKILL.md          the skill (built from templates/<name>.md)skills/<name>/scripts/          atsprep.mjs, a zero-dependency MCP clientskills/<name>/references/       tools.md (every tool's arguments) and privacy.mdshared/, templates/, tools/     sources; run `node tools/sync.mjs` after editing.claude-plugin/marketplace.json Claude Code plugin marketplace

Each skill folder follows the Agent Skills specification: a SKILL.md with name and description frontmatter, plus optional scripts/ and references/, so the same folder works in every client above. node tools/sync.mjs rebuilds the skills and checks their frontmatter against the spec.

Try the script directly

sh
node skills/resume-ats-check/scripts/atsprep.mjs listnode skills/resume-ats-check/scripts/atsprep.mjs check_resume [email protected] target_role="Product Designer"node skills/tailor-resume-to-job/scripts/atsprep.mjs keyword_scan [email protected]

License

MIT. ATSPrep and the ATSPrep logo are not covered by the license.

Issues and ideas: open an issue or email [email protected].

來源:README.md,提交 cec466c

工具

18

check_resume

Check a resume

Use this when the user shares a resume (pasted text or a file's text) and wants it checked, scored, reviewed for ATS problems, or wants to know what to fix. Score a resume from 0 to 100 with ATSPrep's fixed rules and list each issue with a stable code, where it is and how to fix it. Also reports how the text parsed (roles, experience and project bullets, education, skills and skill groups, input and scored word counts, with definitions). Role-specific advice, such as seniority signals, is given only when the resume names a target title or you pass target_role or job_description; with job_description the score becomes the fit for that job (0.5 requirements met, 0.3 evidence, 0.2 readability, capped for missing hard requirements or impossible claims) and it also returns job_fit and a keyword match summary. Resume up to 30,000 characters. Rules version 2026-10-23.5.

輸入參數resume_text必填target_rolejob_description

match_job

Match a resume to a job

Use this when the user has a resume and a job posting and asks how well they match, what keywords are missing, or whether to apply. For rewrites, use tailor_resume instead. Compare a resume with a job posting: the posting's keywords found in the resume (with how they matched: exact, normalized, alias or stem, and the matched span), the ones missing with the posting sentence they come from, each term's weight and whether the posting lists it as required or preferred, and weighted overall, required and preferred coverage. Posting 120–20,000 characters. Rules version 2026-10-23.5.

輸入參數resume_text必填job_description必填

check_bullets

Check resume bullets

Use this when the user wants a few resume bullet points checked without sending the whole resume. Give each resume bullet a score, a verdict and specific fixes with stable codes: weak openers, missing scale or result, numbers that show neither, hard-to-believe claims, first person, vague claims. The same rules and severities as check_resume. Up to 30 bullets of up to 600 characters each; blank items are skipped and reported by index. Rules version 2026-10-23.5.

輸入參數bullets必填

open_in_studio

Open in ATSPrep Studio

Use this when the user wants to edit their resume in an editor, apply a template, or download it as a PDF or Word file. Make a link that opens this resume in ATSPrep Studio, the free editor, so the user can fix it, pick a template and download a PDF. The text travels in the link's #fragment, which is never sent to a server.

輸入參數resume_text必填

list_templates

List resume templates

Use this when the user asks for resume templates, designs or example resumes for a role. List ATSPrep's resume designs, each with a link that opens Studio in that design, and the example resumes by role, each with a link that opens it in Studio and a preview image.

無需輸入參數。

fetch_job_post

Fetch a job post

Use this when the user gives a job posting link instead of its text; then pass the result to the job tools. Read a public job posting from its link and return the title, company, location and full description as plain text, ready for match_job, tailor_resume, keyword_scan or interview_questions. Reads LinkedIn, Greenhouse, Lever, Ashby, SmartRecruiters, Workable, Workday and most company careers pages. Some sites block reading; then ask the user to paste the text.

輸入參數url必填

keyword_scan

Rank a job post's keywords

Use this when the user has only a job posting (no resume yet) and wants its key skills and keywords. List the skills, tools and requirements a job posting asks for, ranked by how hard it leans on each (repetition, position, required or preferred headings), with the high-priority ones flagged. Use match_job to see which a resume already shows. Posting 120–20,000 characters. Rules version 2026-10-23.5.

輸入參數job_description必填

tailor_resume

Tailor a resume to a job

Use this when the user wants their resume rewritten or tailored for a specific job posting. Tailor a resume to a job posting: the posting's keywords the resume is missing (from match_job's rules) and suggested rewrites of the user's own summary and bullets that bring in the posting's terms only where the existing line already supports them. Each suggestion lists the posting terms it borrowed and confirm_with_user lists terms to ask about, never to add unasked. End the reply with next_step: the link that opens the resume in ATSPrep to check the edits and download. Part of the answer is drafted by an AI model (Gemma 4, with Llama 3.3 70B as a backup, on Cloudflare Workers AI) behind ATSPrep's guard, which drops any figure, name or tool the user's text doesn't contain. If the AI part is unavailable, the rule-based part still comes back and ai.message says why.

輸入參數resume_text必填job_description必填

improve_bullet

Improve a resume bullet

Use this when the user wants one resume bullet rewritten or made stronger. Check one resume bullet with the fixed rules (score, verdict, fixes) and suggest up to three stronger rewrites that keep every fact as given. ask_user names the one fact to ask the user for; never invent it. Part of the answer is drafted by an AI model (Gemma 4, with Llama 3.3 70B as a backup, on Cloudflare Workers AI) behind ATSPrep's guard, which drops any figure, name or tool the user's text doesn't contain. If the AI part is unavailable, the rule-based part still comes back and ai.message says why.

輸入參數rolebullet必填company

write_summary

Write a resume summary

Use this when the user wants a resume summary or professional profile written from their resume. Draft professional summaries from a resume: rule-based drafts built from its title, skills and the bullets that carry a figure, plus AI drafts that use only facts in the resume. Part of the answer is drafted by an AI model (Gemma 4, with Llama 3.3 70B as a backup, on Cloudflare Workers AI) behind ATSPrep's guard, which drops any figure, name or tool the user's text doesn't contain. If the AI part is unavailable, the rule-based part still comes back and ai.message says why.

輸入參數resume_text必填target_title

action_verbs

Find stronger action verbs

Use this when the user wants stronger verbs or synonyms for resume wording. Suggest resume action verbs. Pass a weak opener ("responsible for", "helped") for direct swaps and why they read weak, or the work in plain words ("trained new staff", "cut costs") for the matching verb groups with an example bullet. Leave query empty for every group.

輸入參數query

generate_linkedin_headline

Write LinkedIn headlines

Use this when the user wants new LinkedIn headline ideas. Write LinkedIn headline options from the user's answers, each in a proven pattern (title and focus, title and result, title and who you help…), with its length and roughly what shows in search before the cut. Uses only the answers given.

輸入參數nextrole必填focusyearsskillsresultsaudience

check_linkedin_headline

Check a LinkedIn headline

Use this when the user wants their existing LinkedIn headline reviewed. Check a LinkedIn headline: length against the 220-character limit, what shows in search results before the cut, whether it leads with a searchable job title, and buzzwords or vague claims to replace.

輸入參數rolefocusskillsheadline必填

check_linkedin_about

Check a LinkedIn About section

Use this when the user wants their LinkedIn About or summary section reviewed. Check a LinkedIn About section: what shows before "see more" on a phone and on a computer, whether the opening says who they are, results with numbers, buzzwords, a clear next step, and the 2,600-character limit.

輸入參數roleabout必填

draft_cover_letter

Draft a cover letter

Use this when the user wants a cover letter for a job. Draft a cover letter from the user's resume and the job posting with fixed rules: name, contact details and up to two results from the resume, the job title and top keywords from the posting. Facts that are missing show as [square-bracket] gaps for the user to fill, never as stand-ins. Returns the letter, the gaps and a checklist.

輸入參數whynameroleemailphonestylecompanyresultsresume_textcurrent_titlehiring_managerjob_description

draft_resignation_letter

Draft a resignation letter

Use this when the user wants to resign and needs a resignation letter or their last working day. Draft a short, professional resignation letter and work out the last working day from the notice period. Missing facts show as [square-bracket] gaps. Returns the letter, the last day and a checklist (notice stated, no complaints, length).

輸入參數datenameroletonenoticereasonthankscompanymanagernotice_daysoffer_handoverworking_days_only

interview_questions

Interview practice questions

Use this when the user is preparing for an interview and wants likely questions, for a specific job or in general. Interview questions to practise, each with what the interviewer is listening for, plus STAR answer tips. With a job_description, questions come from its skills and duties, along with what to research and questions to ask; with resume_text, from the user's own roles. Rule-based.

輸入參數kindlimitresume_textjob_description

review_interview_answer

Review an interview answer

Use this when the user gives an answer to an interview question and wants feedback on it. Review the user's answer to an interview question: a rating, length and speaking time, STAR coverage for stories, filler words, specific checks, the follow-up an interviewer would likely ask, and a stronger version that keeps to the user's own facts. Part of the answer is drafted by an AI model (Gemma 4, with Llama 3.3 70B as a backup, on Cloudflare Workers AI) behind ATSPrep's guard, which drops any figure, name or tool the user's text doesn't contain. If the AI part is unavailable, the rule-based part still comes back and ai.message says why.

輸入參數kindanswer必填question必填resume_text

版本歷史

1
  1. v2.0.0最新Oct 18, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分