Resume Booster Job Board

work.resumebooster由 resumebooster.work 發布v1.0.0更新於 Oct 24, 2026

Job search over employers' own hiring systems. Search with no key; a free key opens every read tool.

已驗證Streamable HTTP可網頁執行效率與工作流網頁搜尋與抓取

概覽

AI 產生的概覽

遠端職缺看板伺服器,讓助理搜尋雇主自有招募系統中的即時職缺、讀取職缺詳情、確認職缺是否仍在招募,並可選擇代為送出申請。

可以做什麼
  • 搜尋職缺看板並讀取含薪資、經驗與地點等結構化欄位的職缺卡片
  • 取得單一或最多十個職缺的完整描述,並批次確認最多 200 個職缺是否仍在招募
  • 檢視雇主招募紀錄:目前在招職缺、已下架與已被取代的職缺,以及一週成長情況
  • 檢查申請代理能否為該職缺投遞、請求代為申請並查詢申請狀態
  • 以履歷對在招職缺評分,並說明某次搜尋為何回傳這些結果
  • 回報看板統計資料以及目前金鑰的等級、額度與受限原因
適用情境
適合讓助理協助求職:尋找目前開缺、確認已儲存的候選清單是否仍有效、比較雇主,或以履歷對真實職缺評分。唯讀搜尋不需金鑰即可使用,方便先試用。
執行需求
遠端 Streamable HTTP 端點,無需安裝。board_stats、search_jobs、search 與 fetch 不需金鑰,但每個網路位址每天限 25 次呼叫。在供應商網站取得的免費金鑰以 Authorization Bearer 標頭送出後,可解鎖其他唯讀工具,每天 1000 次呼叫。履歷配對評分需付費等級或通行證;代為申請需綁定帳號的 Agent 方案或有效通行證,並設定授權。
安裝前請注意
Authorization 金鑰屬於機密,應放在環境變數或密鑰保管庫,不要寫進會提交的檔案。代為申請為付費功能,會以使用者名義實際投遞,使用前先查看 key_status 與授權設定。履歷文字與搜尋查詢會傳送到伺服器,無金鑰呼叫會以網路位址的截斷雜湊進行限流。部分招募系統的職缺不會透過此資料來源提供。

安裝

在 SourceWeft 中

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

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

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

{
  "mcpServers": {
    "resume-booster-job-board": {
      "type": "http",
      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"
    }
  }
}

README

Resume Booster Job Board — MCP server

Job search over employers' own hiring systems. Search with no key; a free key opens every read tool. board_stats, search_jobs, search and fetch answer with no key at all, so a fresh connection works on its first call from any host.

Verify: ask your agent to call board_stats. It answers with no key and says how many free calls are left today.

A https://resumebooster.work/jobs?job=<id> link's id is the argument get_job, fetch, check_apply_support and request_application take.

Two hiring systems on the job board are not handed on by this server or the data API: the U.S. federal job feed, whose terms forbid redistributing it as a data feed, and SmartRecruiters, withheld until SmartRecruiters (SAP) permits it. Their postings stay on the job board, where you can open them yourself.

Claude, Claude Desktop and ChatGPT have no field for a key. They sign you in instead — but only while the server's sign-in service is switched on. When it is off, a tool that needs your account answers in words (no Connect card), and board_stats, search_jobs, search and fetch still answer. Today's state: press Test the server on https://resumebooster.work/agents, or run

sh
curl -s -X POST https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp -H 'content-type: application/json' -H 'mcp-protocol-version: 2025-06-18' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}' | jq '.result._meta["work.resumebooster/sign-in"].state'

which prints "on", "off" or "unknown" — the same word the page shows (the server reads the sign-in service's own metadata at https://bwhdazbotpblihdxcmho.supabase.co/.well-known/oauth-authorization-server/auth/v1 and caches the answer briefly).

Tiers

TierToolsWhat opens it
Unkeyedboard_stats, search_jobs, search, fetchNothing. 25 calls a day per network address, 2000 a day across every unkeyed caller, a search is one page of 10 rows.
Free keyget_job, get_jobs, check_jobs_open, check_apply_support, employer_hiring_record, employer_growth, key_status, debug_search (and the unkeyed tools at a higher cap)A free key from https://resumebooster.work/data-api — 1000 calls a day.
Paid or passfit_resumeThe paid API tier, or a live pass on the key's account (https://resumebooster.work/agents/pass).
Applyrequest_application, application_statusA key linked to an account with an Agent plan or a live pass, and a mandate — see key_status.

The unkeyed allowance is 25 free calls a day per network address — an office or a home connection counts as one address. From ChatGPT each person has their own 25; from Claude, whose servers carry every user, calls come first from a pool of 500 a day that all Claude users share, then from the address's own 25.

Install

Pick your app. Every block but Zed's works with no key on its first call (Zed asks you to sign in when no key is set — its section says what to do); the keyed variant under a block is optional.

Claude (claude.ai, Claude Desktop, Claude on your phone)

  1. In Claude, open Customize, then Connectors.
  2. Click Add custom connector. On a Team or Enterprise plan there is no such button: an owner adds the connector under Organization settings > Connectors (Add, then Custom; if it asks for the connector type, Web), and you then find it under Customize > Connectors with the "Custom" label and click Connect.
  3. If it asks for a Name, type Resume Booster.
  4. Paste this address into MCP server URL: https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp — this address is on Supabase, the company that hosts our server; it is ours. Paste it exactly as it is.
  5. If Claude asks about Authentication, choose Sign in when needed. If it asks about OAuth client, choose Register automatically. Claude may already show these as "Detected" — leave them. Do not choose No sign-in: Claude cannot change that later, so the tools that need your account would stay off until you remove the connector and add it again.
  6. Click Add.
  7. In a chat, click +, open Connectors, and switch Resume Booster on.
  8. Ask Claude: Using Resume Booster, call board_stats and tell me how many jobs are open right now.

When sign-in is on — the first time Claude needs your account — to open a posting in full, to check a shortlist, or to apply — a Connect card appears in the chat. Click it, sign in to Resume Booster, press Allow, and Claude continues where it stopped.

How you know it worked: Under + → Connectors, Resume Booster is on. Ask "call board_stats": the answer names the number of open postings and a note of the form "unkeyed: N of M anonymous calls left today", where M is the allowance that answered (from Claude, the pool every Claude user shares).

ChatGPT (developer mode)

  1. In ChatGPT, open Settings, choose Security and login, and turn on Developer mode. If you do not see it, your account or workspace does not allow it yet.
  2. Go to chatgpt.com/plugins and click the + button.
  3. Type a name — Resume Booster — and a description — Live job board: search real openings from employers' own hiring systems.
  4. Under Connection, paste this address as the MCP server URL: https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp. Paste it exactly as it is — do not add /mcp at the end. The address is on Supabase, the company that hosts our server; it is ours.
  5. Create the connection, and check the list of tools it found — there should be 15.
  6. Start a new chat and add Resume Booster from the tools menu.
  7. Ask: Search Resume Booster for nurse jobs in Texas and show me the first ten.

When sign-in is on — if a tool needs your account, ChatGPT shows its sign-in for Resume Booster; sign in and press Allow.

How you know it worked: Ask it to search for "nurse in Texas": 10 results with ids come back. ChatGPT's own search uses search and fetch — 10 results per search and the full text of any result — with no sign-in.

Claude Code

  1. Copy this line and run it in your terminal (--scope user makes it available in every folder, not just this one): claude mcp add --transport http --scope user resumebooster https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp
  2. Start claude and type /mcp — resumebooster is listed as connected.
  3. Ask: call board_stats — the answer names the number of open postings and says how many free calls are left today.

With a free key, for every project:

sh
export RESUMEBOOSTER_KEY=<paste your key here>claude mcp add --transport http --scope user resumebooster https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp --header "Authorization: Bearer $RESUMEBOOSTER_KEY"

Or clone this repository: its .mcp.json is a project-scope server, so Claude Code asks once to approve it and you are connected. As a plugin (adds the /resumebooster:setup and /resumebooster:find-jobs skills):

text
/plugin marketplace add campbellaabbott-rgb/resumebooster-mcp/plugin install resumebooster@resumebooster

The .mcp.json in this repo reads the key from the environment: ${RESUMEBOOSTER_KEY:-} expands to the key when RESUMEBOOSTER_KEY is set and to nothing otherwise, and the server answers an empty header as the unkeyed tier — so the same file works with a key and without one. The keyless variant, if you would rather no header be sent at all:

json
{  "mcpServers": {    "resumebooster": {      "type": "http",      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"    }  }}

When sign-in is on — without a key, the first tool that needs your account makes /mcp show ! Needs authentication; type /mcp and sign in in the browser (Claude Code 2.1.186 or newer can also run claude mcp login resumebooster).

How you know it worked: /mcp lists resumebooster as connected; "call board_stats" answers with the count and the unkeyed note; with a key, "call key_status" names your tier and calls left.

Cursor

  1. Paste this link into your browser's address bar (GitHub does not make it clickable) — Cursor opens and asks you to confirm the server; the link holds only the address, never a key: cursor://anysphere.cursor-deeplink/mcp/install?name=resumebooster&config=eyJ1cmwiOiJodHRwczovL2J3aGRhemJvdHBibGloZHhjbWhvLnN1cGFiYXNlLmNvL2Z1bmN0aW9ucy92MS9hZ2VudC1tY3AifQ==
  2. Or paste the block below into ~/.cursor/mcp.json.
  3. In Cursor's chat, ask: call board_stats.
json
{  "mcpServers": {    "resumebooster": {      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"    }  }}

With a free key, the same file names the variable and Cursor fills it in (${env:RESUMEBOOSTER_KEY} is resolved in headers), so the key never sits in the file:

sh
export RESUMEBOOSTER_KEY=<paste your key here>
json
{  "mcpServers": {    "resumebooster": {      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp",      "headers": {        "Authorization": "Bearer ${env:RESUMEBOOSTER_KEY}"      }    }  }}

How you know it worked: Ask the chat "call board_stats" — the count and the unkeyed note come back.

VS Code

  1. Paste this link into your browser's address bar — VS Code asks you to confirm: vscode:mcp/install?%7B%22name%22%3A%22resumebooster%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fbwhdazbotpblihdxcmho.supabase.co%2Ffunctions%2Fv1%2Fagent-mcp%22%7D (Insiders: vscode-insiders:mcp/install?%7B%22name%22%3A%22resumebooster%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fbwhdazbotpblihdxcmho.supabase.co%2Ffunctions%2Fv1%2Fagent-mcp%22%7D).
  2. Or paste the block below into .vscode/mcp.json. When the server starts, VS Code asks for the key; leave it empty to use the tools that need no key (VS Code's own document does not say what an empty answer does — if the server does not start, use the link in step 1 instead).
  3. In the chat, ask: call board_stats.
json
{  "inputs": [    {      "id": "resumebooster-key",      "type": "promptString",      "description": "Resume Booster Job Board API key (free at https://resumebooster.work/data-api); leave empty for the unkeyed tools",      "password": true    }  ],  "servers": {    "resumebooster": {      "type": "http",      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp",      "headers": {        "Authorization": "Bearer ${input:resumebooster-key}"      }    }  }}

[Install in VS Code] — the same link as step 1, made clickable through vscode.dev's redirect (a convenience GitHub needs; VS Code's docs describe only the vscode: form).

How you know it worked: If you used the mcp.json block, VS Code asks for the key at start — leave it empty (the link in step 1 declares no key, so it asks nothing). Either way, ask the chat "call board_stats" — the count and the unkeyed note come back.

Other apps (Gemini CLI, Codex CLI, Cline, Zed, Windsurf, anything else)

  1. Pick your app below — each has its own block. Anything else that speaks MCP works too: it is one plain web address, and Any client / curl at the end shows the first message.
  2. Then ask your agent to call board_stats.

When sign-in is on — without a key, a tool that needs your account answers a sign-in challenge (HTTP 401); a client that supports sign-in opens it, and a client that does not needs a free key.

How you know it worked: The initialize answer's serverInfo.name is resumebooster-job-board; the Test the server button on https://resumebooster.work/agents runs this for you.

Gemini CLI
  1. Run: gemini mcp add --transport http --scope user resumebooster https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp
  2. Ask: call board_stats.

With a key: gemini mcp add --transport http --scope user --header "Authorization: Bearer $RESUMEBOOSTER_KEY" resumebooster https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp. Or install this repository as an extension — it declares the key as a setting, prompted at install and kept in your keychain:

sh
gemini extensions install https://github.com/campbellaabbott-rgb/resumebooster-mcp

When sign-in is on — /mcp auth resumebooster starts the sign-in.

How you know it worked: "call board_stats" answers with the count and the unkeyed note.

Codex CLI
  1. Run: codex mcp add resumebooster --url https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp
  2. Ask: call board_stats.

With a key, in ~/.codex/config.toml (the key is read from RESUMEBOOSTER_KEY, never written here):

toml
[mcp_servers.resumebooster]url = "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"bearer_token_env_var = "RESUMEBOOSTER_KEY"

When sign-in is on — codex mcp login resumebooster starts the sign-in.

How you know it worked: "call board_stats" answers with the count and the unkeyed note.

Cline
  1. In the Remote Servers tab: Server Name resumebooster, Server URL https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp, Transport Type Streamable HTTP, then Add Server. Or paste the block below into ~/.cline/mcp.json (the Cline CLI's file; in the VS Code extension, open the MCP Servers panel, the Configure tab, then Configure MCP Servers and add the same block).
  2. Ask: call board_stats.
json
{  "mcpServers": {    "resumebooster": {      "type": "streamableHttp",      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"    }  }}

With a key: add "headers": { "Authorization": "Bearer …" } with your key to that server, in your own user-level file only — never in a committed one.

How you know it worked: "call board_stats" answers with the count and the unkeyed note.

Zed
  1. Paste the block below into settings.json.
  2. Zed prompts you to sign in whenever no Authorization header is set (its own document says so). If the curl above prints "off", that prompt cannot finish — add "headers": { "Authorization": "Bearer …" } with a free key from https://resumebooster.work/data-api to the block, in your own settings file only.
  3. Ask: call board_stats.
json
{  "context_servers": {    "resumebooster": {      "url": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"    }  }}

How you know it worked: "call board_stats" answers with the count and the unkeyed note.

Windsurf
  1. Paste the block below into ~/.codeium/windsurf/mcp_config.json. Windsurf's document says this file configures the legacy Cascade agent only; the Devin Local agent, the default for new tabs, reads the Devin CLI config files instead.
  2. Ask: call board_stats.
json
{  "mcpServers": {    "resumebooster": {      "serverUrl": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp"    }  }}

With a free key, the same file names the variable and Windsurf fills it in (${env:RESUMEBOOSTER_KEY} is resolved in headers), so the key never sits in the file:

sh
export RESUMEBOOSTER_KEY=<paste your key here>
json
{  "mcpServers": {    "resumebooster": {      "serverUrl": "https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp",      "headers": {        "Authorization": "Bearer ${env:RESUMEBOOSTER_KEY}"      }    }  }}

How you know it worked: "call board_stats" answers with the count and the unkeyed note.

Any client / curl
  1. POST one JSON-RPC 2.0 message per request to https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp (Streamable HTTP; no session to keep); the first one is the initialize message below.
  2. With a key, send Authorization: Bearer <key> on each request; without one, board_stats, search_jobs, search and fetch still answer.
sh
curl -s -X POST https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp -H 'content-type: application/json' -H 'mcp-protocol-version: 2025-06-18' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'

How you know it worked: The initialize answer's serverInfo.name is resumebooster-job-board; the Test the server button on https://resumebooster.work/agents runs this for you.

Copy the prompt
  1. For an agent that can install a server from prose, paste this: Add the MCP server "resumebooster" at https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp (Streamable HTTP, POST only, no key needed for board_stats, search_jobs, search, fetch; a free key from https://resumebooster.work/data-api goes in an Authorization: Bearer header). Then call board_stats.

How you know it worked: Your agent answers with the number of open postings and the unkeyed note.

If it does not work

Symptoms are the server's own words, or a label the app's documentation prints (docs-snapshot.md). Rows marked "while sign-in is off" or "on" apply in that state only — the curl line above prints today's.

What you seeWhyWhat to do
Sign-in through this server is not switched on yet, so this tool needs a key. (while sign-in is off)The tool needs your account, and sign-in from chat apps is not switched on today.Search, board statistics and full postings still work with no key. To use every tool, connect from Claude Code, Cursor or VS Code with a free key (https://resumebooster.work/data-api).
Claude: a Connect card appears (while sign-in is on)A tool needs your account.Click it, sign in to Resume Booster, press Allow; Claude retries the call itself.
Claude: "Couldn't reach the MCP server" or "Authorization with the MCP server failed"The address was mistyped, /mcp was added to it, or (when sign-in is on) the sign-in could not finish.Check the address is exactly https://bwhdazbotpblihdxcmho.supabase.co/functions/v1/agent-mcp; press Test the server on https://resumebooster.work/agents; if the test says sign-in is on and the card still fails, remove the connector and add it again with Sign in when needed + Register automatically.
Claude Code: /mcp shows ! Needs authentication (while sign-in is on)A tool that needs your account was called with no key, and the server asked for sign-in.Type /mcp and follow the browser steps (2.1.186 or newer: claude mcp login resumebooster), or add a free key with --header.
The unkeyed allowance is spentYour network address used its free calls today; an office or a chat service counts as one address.Get a free key at https://resumebooster.work/data-api (1000 calls a day, no account) and add it to your app. Resets at midnight UTC.
That key is not recognised.The key was cut off, or the header lacks Bearer with the space.The header must read Authorization: Bearer rb_live_…. A key is shown once; get a new one if lost (the old one stops working).
This key has been revoked.A newer key replaced it, it went unused for 30 days, or it was a free key issued before keys needed a confirmed email (4 October 2026).Use your newest key, or get one at https://resumebooster.work/data-api (we email you a link) and update every app that holds the old one.
Daily quota ofThe free key's day is spent.Wait for midnight UTC; the unkeyed tools still answer; an Agent Pass raises the limit for its hours.
requests/minute.Too many calls in one minute.Wait one minute.
fit_resume is a paid featureRésumé fit scoring needs a paid key, a live Agent Pass or the Agent plan.https://resumebooster.work/data-api for a paid key, or https://resumebooster.work/agents/pass — search keeps working.
The apply agent needs an active Agent plan or a live pass.Applying is paid.https://resumebooster.work/agents/pass (sign in first), or the Agent plan on the site.
No agent mandate on this account.The apply agent is not set up yet (the same answer names "Your agent is switched off." and "No resume on file" when that is the blocker).Account → set up the apply agent: turn it on, choose countries and field, add the CV. The off switch always wins.
The pass on this account is not live.The pass ended, or its applications are used ("No applications left on this pass.").Search keeps working; buy another pass when the clock ends.
That is not a job id from this board.You passed a link or a title.Use the id from a search, e.g. greenhouse:acme:12345; the id in a https://resumebooster.work/jobs?job=<id> link is the same one.
This is an MCP server for AI agents, not a web pageYou opened the address like a web page.Nothing is wrong. Paste it into your agent; the how-to is https://resumebooster.work/agents.
Cursor / VS Code / Cline: server listed, zero toolsWrong transport (Cline: not sse; VS Code: "type": "http"), or /mcp appended to the address.The address ends in /agent-mcp exactly; the transport is HTTP (Cline: Streamable HTTP).
ChatGPT only ever searches and fetchesBy design: ChatGPT's search calls search and fetch, 10 results a page.For filters (pay, remote, seniority), use an app that calls search_jobs.
Sign in to use this tool (while sign-in is on)A tool that needs a key was called with none (HTTP 401 from a script or curl).Send Authorization: Bearer <key> (free at https://resumebooster.work/data-api), or call one of board_stats, search_jobs, search and fetch.

The plugin's skills

  • /resumebooster:setup — get a free key, put it in RESUMEBOOSTER_KEY, reconnect.
  • /resumebooster:find-jobs — the search → verify → apply order, with the gates named.

Privacy

Every search you run travels to the server as the query you typed. A key is stored as its hash and its first characters, never the key. For unkeyed calls the server keeps a truncated hash of your network address for the daily cap and drops it after 7 days; the address itself is never stored. The tools never write to your machine. A key belongs in an environment variable, a keychain prompt or a host's secret store — never in a file you commit, a URL, a badge or a base64 config. Nothing in this repository carries a key.

This repository

  • mcp.config.json is the only place a URL, tool name, cap, quota, host step or troubleshooting row is written. npm run build regenerates every other file; npm test fails if any generated file was edited by hand or the constants changed without a rebuild, validates each manifest against the schema its host publishes (copies under schemas/, fetched 2026-09-16), and checks that no generated file carries a placeholder inside an Authorization value.
  • The tool list, the host ids (the six above and the long tail) and the sign-in key are a mirror of the site's own (resume-signal-pro/src/config/mcp-tools.ts at 08089496); when that changes, this file is re-synced and rebuilt.
  • Every vendor label in the steps above is quoted from the vendor's documentation on the date in docs-snapshot.md; a label that is not there is not published here.
  • server.json is the entry for the official MCP Registry.

License

MIT — for the files in this repository. The server, the board and its data are https://resumebooster.work's own and are governed by its terms.

來源:README.md,提交 9e9b5e8

工具

15

search_jobs

Search jobs

Search the live job board (postings pulled directly from employers' own hiring systems, 30-day freshness cap; board_stats carries the live totals). Returns compact job cards — including the board's own parsed pay (salaryMinAnnual/salaryMaxAnnual/salaryPeriod), experience band and minYears, so pay and seniority never have to be re-read out of prose — plus the board's honesty disclosures: exact totals when knowable (countUnavailable otherwise), filters it could not honour (ignoredFilters), words it read as filters (intentFilters), and spelling suggestions. Set agentReadyOnly=true to see only jobs the apply agent can submit to directly.

輸入參數sortlimitqueryoffsetremotevendorcountrycategorylocationmaxYearspayBasisworkMode另有 12 個

get_job

Get one job

Full detail for one job id (from search_jobs), including the complete description text and when the employer's feed last confirmed it open. A resumebooster.work/jobs?job=<id> link's id is this argument (and fetch's, check_apply_support's and request_application's). For several ids at once, use get_jobs — it costs ONE call against the daily quota instead of one per posting. Needs a key or a sign-in. With neither, call fetch with the same id.

輸入參數id必填

get_jobs

Get several jobs

Full detail for up to 10 job ids in ONE call — the shortlist form of get_job. Each id answers with a card plus its description; ids that closed, aged out or were never on this board come back in `unavailable` with the reason named, so one dead id never costs you the other nine. Set includeDescription=false for cards and freshness only (much smaller, and no vendor fetch). Needs a key or a sign-in.

輸入參數ids必填includeDescription

check_jobs_open

Check which jobs are still open

Are these postings still on the board? Answers up to 200 ids in one call — the tool for re-verifying a saved shortlist before acting on it, instead of spending a metered get_job per posting. Returns open:{id:boolean} plus the closed ids, and names the basis of the answer: it reads the board's index (a closed posting is one the employer's feed stopped listing), not the employer's site at this instant, and it is a weaker test than get_job's — read `basis` before reporting a posting as live to a person. Needs a key or a sign-in.

輸入參數ids必填

check_apply_support

Check apply support

Whether the apply agent can submit an application for this job on the user's behalf, and what that requires. Jobs on non-supported systems still return their direct applyUrl for the human to use. For whether THIS KEY may apply at all, call key_status — this tool answers about the job, not the key. Needs a key or a sign-in.

輸入參數id必填

request_application

Request an application

Ask the board's apply agent to submit an application to this job on behalf of the key's owner. Needs an account key (mint one at https://resumebooster.work/agents), an active Agent plan OR a live Agent Pass on the account, and a mandate set in Account — call key_status first: it says which of the three is missing, and on a pass how many applications and how much time are left. On a pass, only a job the agent can submit itself (agentReady true, which check_apply_support reports) uses an application; any other job is refused and nothing is spent. On the Agent plan nothing is counted, and such a job is prepared for the person to send. Every application passes the same gates as the signed-in flow, including the honesty classifier: answers are drawn from the owner's own profile and never invented. Ask the person for a yes on this specific job id before calling. Needs a key or a sign-in.

輸入參數notejobId必填

application_status

Application status

Status of applications the key owner's agent has requested — queued, submitted, refused (with the refusing gate named), or failed. Needs a key or a sign-in.

輸入參數limit

fit_resume

Score a résumé against the board

Score a résumé against open jobs, for an agent holding a CV: reads the occupation out of resumeText (or uses `query` if given), searches the board for it, and scores up to 20 results 0-100 with the matched and missing terms per job. PAID — needs a paid API key, exactly like POST /v1/fit on the data API, or a live Agent Pass or the Agent plan on the key's account; a free key gets an in-band refusal saying what opens it. A null fit means the posting has no stored description to score. Returns the terms it read from the CV so the agent can pick a different one and call again with `query`. Needs a key or a sign-in.

輸入參數limitqueryremotecountrylocationresumeText必填

board_stats

Board statistics

Live board statistics from cache (cheap to call): servable and tracked posting totals, the count of company job boards with open roles (boards, not employers — one employer can run several), the category set, freshness stamp. Answers with no key too, with a withKey block saying what a free key adds.

無需輸入參數。

employer_hiring_record

An employer's hiring record on this board

For each employer handle (companyToken, up to 20 per call), that employer's own record on this board: open_roles now, closed_90d (takedown events we watched on this board in the last 90 days, re-lists excluded — one posting that came back and came down again counts each time), superseded_90d (the re-lists, a floor), the two medians from the employer's own stated dates (lower bounds), tracking_days (how long we have watched THIS board, capped at 90) and feed_total (what its feed advertised at the last check). A takedown is not a hire — a filled role, a cancelled one and a withdrawn one look identical from here — and it is a record of one BOARD, never summed across an employer's boards, never a headcount. A board with no closure observed answers record:'unknown' with the reason, never a verdict about the employer: on a board bigger than one visit can read, no closure is observable to us until we complete a provable full pass and then watch a role go after it, so silence there is about our instrument. Every row carries its basis. Every row also carries layoff_filing — the newest layoff filing joined to that employer by a hand-curated alias or an exact multi-token name match, a US state WARN notice or an SEC 8-K Item 2.05 disclosure, printed as a filing (filer verbatim, its dates with their bases, count, state or form, link), read hourly from SEC EDGAR and nightly from state notices, null when none qualifies within 90 days, and no part of record or any verdict; layoff_basis on the response says what it is and is not. Pair with employer_growth for the other half of what the site calls "Actively hiring". Needs a key or a sign-in.

輸入參數companyTokens必填

employer_growth

Did this employer's board grow?

Did this employer's board serve more roles than it did 7 days earlier? One row per companyToken (up to 20 per call), judged by the board itself from our own daily observation and passed through untouched: grew, no-growth, or unknown — and unknown ALWAYS carries unknown_reason (a feed bigger than one visit can read, a board too new or too small for a rate, a gap in our own series, a pool that was replaced rather than grown…): an unknown is a reading we could not take, never a no. The bars the verdict uses: at least 10 roles served at the window's start; then BOTH at least 4 more roles AND at least 25% more, on a board tracked for at least 21 days, with every read in the window whole. Per BOARD (a vendor tenant), never summed across an employer's boards; more roles served is roles opened net of roles that came down — not a headcount and not a hire. This tool never ranks employers, and no list of growing employers exists here or anywhere on the board. Needs a key or a sign-in.

輸入參數companyTokens必填

key_status

This key's limits and powers

What THIS key is and may do: tier, requests left this minute, calls left today (both including this call), whether fit_resume (and engine=ranked on the data API) answers on it, and whether the apply tools would — with any blocker named: account link, Agent plan or live pass, mandate, résumé on file. On an Agent Pass: when the clock ends and how many applications are left (a pass starts at the first call other than this one). Call it first in a keyed session, and after any 'quota' or 'rate' refusal. Needs a key or a sign-in.

無需輸入參數。

fetch

Fetch (alias of get_job, in ChatGPT's research shape)

An ALIAS of get_job in the fixed shape ChatGPT's deep-research and company-knowledge connectors call: one id in (from search), {id,title,text,url,metadata} out. text is the posting's full description; metadata carries the job card's structured fields (pay, experience, location, workMode, postedAt, companyToken, agentReady). A dead id answers with what the board knows — a watched closure, an aged-out stub, or not found — in text and metadata, never a stale card. Any other client should call get_job.

輸入參數id必填

版本歷史

1
  1. v1.0.0最新Sep 18, 2026

評分

已滿足適用檢查項的 100%

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

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