CATS MCP by usefulapi

io.usefulapi由 usefulapi.io 發布官方發布者v1.8.4更新於 Nov 7, 2026

Read CATS candidates, jobs and pipelines, and make explicitly confirmed recruiting changes.

發布方自己的服務:Ably MCP by usefulapi

已驗證Streamable HTTP可網頁執行效率與工作流商業與電商

概覽

AI 產生的概覽

讀取並搜尋 CATS 招募資料(人選、職缺、流程、公司與聯絡人),並執行需明確確認的招募變更。

可以做什麼
  • 查詢帳戶、使用者、人選、客戶公司與聯絡人,支援分頁、全文搜尋與欄位篩選
  • 檢視職缺、職缺狀態、招募流程與流程狀態歷程,並列出某職缺的人選
  • 查看人選所屬流程、活動紀錄、任務與附件中繼資料(不下載檔案內容)
  • 列出全站任務與活動,讀取流程工作流程及其狀態
  • 經確認後寫入:建立人選、記錄人選活動、建立任務或變更人選的流程狀態
  • 查看用量、提出功能需求,以及升級或取消付費方案
適用情境
適合招募人員或招募團隊讓助理在自己的 CATS 帳戶上回答問題,例如彙整人選歷程、尋找人員或職缺、檢視流程階段,並進行記錄備註、推進人選等經確認的小幅更新。
執行需求
以 URL 加入的遠端 MCP 端點,只填 URL;透過 OAuth 登入,登入頁會要求輸入 CATS 憑證。需在 CATS 的 Administration → API Keys 建立 v3 API 金鑰(舊版 Transaction Codes 不適用)。用戶端設定中不要放 API 金鑰或 Authorization 標頭。免費方案每月 50 次工具呼叫,付費方案另行計費。
安裝前請注意
涉及人選與聯絡人紀錄中的個人資料;README 提醒不要用於政府證件、健康資料或個人財務資訊,並表示自由文字與自訂欄位仍需人工檢視。工具結果會送到你的 AI 用戶端及其 LLM 供應商。四個寫入工具需 confirm:true,且非冪等,可能觸發通知或帳戶 webhook;重試前先檢查 CATS。付費方案透過 Stripe 結帳,當期不退款。

安裝

在 SourceWeft 中

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

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

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

{
  "mcpServers": {
    "cats-by-usefulapi": {
      "type": "http",
      "url": "https://cats-ats.usefulapi.io/mcp"
    }
  }
}

README

CATS MCP server

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://cats-ats.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http cats-ats https://cats-ats.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "cats-ats": {      "url": "https://cats-ats.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your CATS credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/cats-ats/

Tools

ToolTypeWhat it does
cats_get_sitereadGet CATS site
cats_list_usersreadList users
cats_list_candidatesreadList candidates
cats_get_candidatereadGet candidate
cats_search_candidatesreadSearch candidates
cats_filter_candidatesreadFilter candidates
cats_list_candidate_pipelinesreadList a candidate's pipelines
cats_list_candidate_activitiesreadList a candidate's activities
cats_list_candidate_tasksreadList a candidate's tasks
cats_list_candidate_attachmentsreadList a candidate's attachments (metadata)
cats_list_jobsreadList jobs
cats_get_jobreadGet job
cats_search_jobsreadSearch jobs
cats_list_job_pipelinesreadList a job's pipeline
cats_list_job_statusesreadList job statuses
cats_list_pipelinesreadList pipelines
cats_get_pipelinereadGet pipeline
cats_filter_pipelinesreadFilter pipelines
cats_get_pipeline_status_historyreadGet pipeline status history
cats_list_workflowsreadList pipeline workflows
cats_list_workflow_statusesreadList workflow statuses
cats_list_companiesreadList companies
cats_get_companyreadGet company
cats_search_companiesreadSearch companies
cats_list_contactsreadList contacts
cats_get_contactreadGet contact
cats_search_contactsreadSearch contacts
cats_list_tasksreadList tasks
cats_get_taskreadGet task
cats_list_activitiesreadList activities
cats_add_candidate_activitywriteAdd an activity (note) to a candidate
cats_create_taskwriteCreate a task
cats_change_pipeline_statuswriteMove a candidate to another pipeline status
cats_create_candidatewriteCreate a candidate
cats_usage_statusmetaUsage status (free-tier meter)
cats_request_featuremetaRequest a missing feature
cats_upgrademetaUpgrade to Pro or Pro+
cats_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free (per connected CATS site)$050 tool calls / month
Pro (per connected CATS site)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with cats_upgrade (it returns a Stripe Checkout link). Cancel any time with cats_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running cats_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT

Access, personal data and limits

Create a v3 API key in CATS under Administration → API Keys. Legacy Transaction Codes do not work. The generation form offers no read-only scope selector. Authorize UsefulAPI and your selected AI client to process only data you are entitled to share. CATS account eligibility and vendor charges remain separate from UsefulAPI plans. This independent connector makes no claim of vendor approval or endorsement.

Candidate/contact records contain personal information. Do not use this workflow for government IDs, health data, personal financial information or other CATS Prohibited Data. Known credential and sensitive financial/health fields and HAL link blocks are filtered; customers must still review free text and custom fields. Tool results reach your chosen AI client and LLM provider, whose privacy and retention policies also apply. Revoke the API key in CATS to stop vendor access; disconnect UsefulAPI to end this connection.

CATS documents a rolling 500 API requests/hour limit; its counter scope is not specified. Collection pages default to 25, maximum 100. Authentication is capped at 10 seconds/64 KiB; operation replies at 30 seconds/8 MiB. Billing follows the verified CATS site ID, so rotation of a key within the same site keeps the account identity.

Changes and automation

All four writes require confirm:true: create a candidate, log candidate activity, create a task or change pipeline status. Assigned tasks may notify a user. No email/SMS-send request is made by an activity note, even when its activity type is email or text_message. Independently configured account automation and webhooks can still react to changes.

Pipeline moves read the workflow/status metadata, explicitly request every returned trigger be suppressed with fire:false, and send create_activity=false. An already-current status makes no write. Preflight reads are not an atomic lock, so concurrent changes remain possible; independent webhooks are not suppressed. No email delivery, delete, attachment download, bulk-export endpoint or webhook-management tool is exposed.

No vendor request is automatically replayed. Creates require the documented 201 and a matching Location record ID; inconsistent or uncertain acknowledgements are errors. Inspect CATS before retrying a write. Date-only task/activity dates are sent at midnight UTC.

Verification

The 34 vendor tools were checked against the current API reference and local mocks. Actual own-trial reads verified account identity and HAL response structures, including vendor-supplied sample records. No real customer recruiting records or business writes were tested. Current terms allow customer-directed third-party software, and the vendor publishes external API-key setup guidance; this does not assert CATS reviewed UsefulAPI.

References: API v3, terms, external-key setup.

來源:servers/cats-ats/README.md,提交 4046075

工具

34

cats_get_site

Get CATS site

The CATS site (account) this API key belongs to: id, mode (recruiter or employer) and subdomain. GET /site.

無需輸入參數。

cats_list_users

List users

List the CATS users (recruiters) with id, name, title and access level. Use the ids as owner or assignee. GET /users.

輸入參數pageper_page

cats_list_candidates

List candidates

List candidates (personal data: name, emails, address, employer, skills, notes), one page at a time, max 100 per page. Use cats_search_candidates or cats_filter_candidates to find specific people. GET /candidates.

輸入參數pageper_page

cats_get_candidate

Get candidate

One candidate by id (personal data). GET /candidates/{id}.

輸入參數candidate_id必填

cats_search_candidates

Search candidates

Free-text search over candidates (name, email, skills, resume text...), paged. GET /candidates/search?query=.

輸入參數pagequery必填per_page

cats_filter_candidates

Filter candidates

Filter candidates by fields (read-only, although it is a POST): first_name, last_name, title, emails.primary, address.city/state/postal_code, country_code, current_employer, key_skills, notes, dates (date_created, date_modified), owner_id, is_hot... Each condition is {field, filter, value}; filters: exactly, contains, between {gte,lte}, greater_than, less_than, is_empty, geo_distance. Paged. POST /candidates/search.

輸入參數pagematchper_pageconditions必填

cats_list_candidate_pipelines

List a candidate's pipelines

The jobs a candidate is in the pipeline for, with rating, workflow and current status id. GET /candidates/{id}/pipelines.

輸入參數pageper_pagecandidate_id必填

cats_list_candidate_activities

List a candidate's activities

The activity log of a candidate (calls, meetings, notes, pipeline changes), paged. GET /candidates/{id}/activities.

輸入參數pageper_pagecandidate_id必填

cats_list_candidate_tasks

List a candidate's tasks

Tasks attached to a candidate. GET /candidates/{id}/tasks.

輸入參數pageper_pagecandidate_id必填

cats_list_candidate_attachments

List a candidate's attachments (metadata)

File names, sizes and whether each file is a resume, for a candidate's attachments. Metadata only: file contents are never downloaded. GET /candidates/{id}/attachments.

輸入參數pageper_pagecandidate_id必填

cats_list_jobs

List jobs

List job orders with title, location, company, recruiter, status and workflow ids, dates. Paged. GET /jobs.

輸入參數pageper_page

cats_get_job

Get job

One job order by id, with its description. GET /jobs/{id}.

輸入參數job_id必填

cats_search_jobs

Search jobs

Free-text search over job orders, paged. GET /jobs/search?query=.

輸入參數pagequery必填per_page

cats_list_job_pipelines

List a job's pipeline

The candidates in the pipeline of a job: pipeline id, candidate id, rating and current status id. Paged. GET /jobs/{id}/pipelines.

輸入參數pagejob_id必填per_page

cats_list_job_statuses

List job statuses

The statuses a job order can have (Active, OnHold, Closed...). GET /jobs/statuses.

輸入參數pageper_page

cats_list_pipelines

List pipelines

List candidate-to-job pipelines (candidate id, job id, rating, workflow id, status id), paged. GET /pipelines.

輸入參數pageper_page

cats_get_pipeline

Get pipeline

One pipeline (a candidate on a job) by id. GET /pipelines/{id}.

輸入參數pipeline_id必填

cats_filter_pipelines

Filter pipelines

Filter pipelines by id, candidate_id, job_id, status_id, rating, date_created or date_modified (read-only, although it is a POST). Each condition is {field, filter, value}. Paged. POST /pipelines/search.

輸入參數pagematchper_pageconditions必填

cats_get_pipeline_status_history

Get pipeline status history

The status changes of a pipeline over time (status, who, when). GET /pipelines/{id}/statuses.

輸入參數pageper_pagepipeline_id必填

cats_list_workflows

List pipeline workflows

The pipeline workflows (sets of statuses such as Contacted, Interviewing, Offered). GET /pipelines/workflows.

輸入參數pageper_page

cats_list_workflow_statuses

List workflow statuses

The statuses of one pipeline workflow (id, title, prerequisites, triggers). Use the ids with cats_change_pipeline_status. GET /pipelines/workflows/{id}/statuses.

輸入參數pageper_pageworkflow_id必填

cats_list_companies

List companies

List client companies (name, address, website, owner), paged. GET /companies.

輸入參數pageper_page

cats_get_company

Get company

One company by id. GET /companies/{id}.

輸入參數company_id必填

cats_search_companies

Search companies

Free-text search over companies, paged. GET /companies/search?query=.

輸入參數pagequery必填per_page

cats_list_contacts

List contacts

List client contacts (personal data: name, title, emails, company), paged. GET /contacts.

輸入參數pageper_page

cats_get_contact

Get contact

One client contact by id (personal data). GET /contacts/{id}.

輸入參數contact_id必填

cats_search_contacts

Search contacts

Free-text search over client contacts, paged. GET /contacts/search?query=.

輸入參數pagequery必填per_page

cats_list_tasks

List tasks

List tasks (description, priority 1-5, due date, assignee, completion, the record it is about), paged. GET /tasks.

輸入參數pageper_page

cats_get_task

Get task

One task by id. GET /tasks/{id}.

輸入參數task_id必填

cats_list_activities

List activities

The site-wide activity log (calls, emails logged, meetings, notes) with the record each is about, paged. GET /activities.

輸入參數pageper_page

cats_add_candidate_activity

Add an activity (note) to a candidate

WRITE: Requires confirm:true. log an activity (a call, meeting, note...) on a candidate's record. It only records the entry in CATS: no email/SMS-send request is made, even for type 'email' or 'text_message'. Creates a new entry each time (not idempotent). POST /candidates/{id}/activities.

輸入參數datetype必填notes必填confirm必填candidate_id必填regarding_job_id

cats_create_task

Create a task

WRITE: Requires confirm:true. create a task in CATS, optionally about a candidate, contact, company or job and assigned to a user. Creates a new task each time (not idempotent); CATS may notify the assignee. POST /tasks.

輸入參數confirm必填about_iddate_duepriorityabout_typedescription必填assigned_to_id

cats_change_pipeline_status

Move a candidate to another pipeline status

WRITE: Requires confirm:true. change the status of a pipeline (move a candidate to another stage of a job's workflow, e.g. Interviewing, Offered, Rejected). Get the pipeline id from cats_list_candidate_pipelines and the status id from cats_list_workflow_statuses. Requires confirm:true. Requests that status triggers (which can e-mail people or change records) be suppressed: every trigger attached to the target status is sent with fire=false. CATS remains responsible for enforcing its trigger semantics; independently configured webhooks may still run. The change is recorded in the pipeline's status history. POST /pipelines/{id}/status.

輸入參數confirm必填status_id必填pipeline_id必填

cats_create_candidate

Create a candidate

WRITE: Requires confirm:true. create one candidate record (personal data) with name, optional contact details and notes. Refuses when CATS finds a duplicate (check_duplicate=true, the default). Creates a new record each time (not idempotent); no email-send request is made to the candidate and no login is created. POST /candidates.

輸入參數cityemailnotesphonestatetitlesourceconfirm必填owner_idlast_name必填first_name必填key_skills另有 5 個

版本歷史

10
  1. v1.8.4最新Nov 7, 2026
  2. v1.7.3Nov 5, 2026
  3. v1.7.2Nov 5, 2026
  4. v1.7.1Nov 4, 2026
  5. v1.7.0Nov 3, 2026
  6. v1.6.1Nov 3, 2026
  7. v1.5.0Nov 1, 2026
  8. v1.3.0Oct 31, 2026
  9. v1.2.0Oct 31, 2026
  10. v1.1.0Oct 31, 2026

評分

已滿足適用檢查項的 100%

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

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

其他 Usefulapi 整合