SAP SuccessFactors Jobs, Inside Claude
Give Claude or any MCP client a tool that reads live SAP SuccessFactors postings on demand and hands back structured rows to reason over, with no glue code.
When to use this skill
- You want a SuccessFactors MCP server that reads career sites, not one that manages an employer tenant.
- You are connecting SuccessFactors to Claude AI and want live postings an agent can pull mid-conversation.
- Your agent needs enterprise job data (roles, locations, functions) as structured JSON, on request.
- You do not want to build and host your own MCP wrapper around a SuccessFactors scraper.
Not for: bulk one-off exports from a script or a scheduled pipeline. Use the companion apify-successfactors-jobs-api skill, built on the same Actor. See references/actor-index.md.
What you get
The Actor returns one row per job (resultType separates job from error rows):
requisitionId, url, applyUrl, title
companyName, employer, tenant, careerSiteUrl
jobFunction, location, countryCode, isRemote, validThrough
descriptionMarkdown by default, with descriptionHtml and descriptionText opt-in
- with
includeDetailFields: datePosted, department, facility, shiftType, travel, customFields
source (always successfactors), sourceType, flavor, scrapedAt
Prerequisites
The Actor
Run it from Claude (MCP)
Add the hosted Apify MCP server with this Actor in the tools list:
https://mcp.apify.com/?tools=actors,docs,johnvc/sap-successfactors-jobs-api
In Claude Code (free trial) or Claude Cowork (free trial), add it as an MCP server, then ask Claude to call the SAP SuccessFactors Jobs API tool with an input like:
{"companies":["jobs.sap.com"],"maxJobs":25,"includeDescriptionMarkdown":true}
Claude discovers the tool, runs it, and reads the dataset back with no glue code. Docs: https://docs.apify.com/platform/integrations/mcp
CLI fallback
If you would rather drive it from a shell:
apify actors call "johnvc/sap-successfactors-jobs-api" \
-i '{"companies":["jobs.sap.com"],"maxJobs":25}' \
--json \
--user-agent apify-awesome-skills/apify-successfactors-mcp \
2>/dev/null
Workflow
- Add the hosted MCP server URL above to your MCP client.
- Ask the agent to call the Actor tool with the career sites you care about (a host, URL, or company name).
- Keep the first call small (
maxJobs of 10 to 25) so the agent gets a fast, cheap sample.
- Have the agent filter with
titleKeywords, jobFunctions, or locationKeywords before scaling up; filters run before billing.
- Read the returned rows and reason over them: rank roles, extract skills, compare locations, or write them to storage.
Inputs
companies, startUrls: career-site hosts, URLs, single-job URLs, or company names.
outputMode: jobs (default), urlsOnly, or tenantsOnly.
titleKeywords, jobFunctions, locationKeywords, activeOnly, remoteOnly: pre-billing filters.
includeDescriptionMarkdown / Html / Text, includeDetailFields, report: output add-ons.
maxJobs, maxJobsPerTenant, maxTenants, maxConcurrency: scope and cost caps.
Cost guardrails
- Per delivered row, no start fee; filters run before billing so filtered rows cost nothing.
- Description formats, detail fields, and the run report are separate add-ons billed only on rows that carry them.
- For agent use, keep
maxJobs low per call and let the agent widen only when the sample looks right.
Honest limits
- The MCP path runs the same Actor as a script would; it does not add fields, it changes how you call it.
- The public feed has no posted date;
datePosted needs the detail add-on.
- Salary is a best-effort parse of the posting text and is often null.
Troubleshooting
- If the tool does not appear, confirm the Actor slug in the
?tools= URL and that the client is signed in to Apify.
- An
error row with tenant_not_found means the company did not resolve to a live feed; pass the career-site URL.
- Large runs are slower with
includeDetailFields on (one extra request per job); lower maxJobs for interactive use.
Related Actors
See references/actor-index.md for the companion apify-successfactors-jobs-api skill and the other ATS job APIs on this account.
1---2name: apify-successfactors-mcp3description: Use live SAP SuccessFactors job data from Claude and other MCP clients with the Apify SAP SuccessFactors Jobs API Actor (johnvc/sap-successfactors-jobs-api), exposed through the hosted Apify MCP server. Adds a tool that pulls postings from any public SuccessFactors career site and returns structured JSON: title, company, requisition ID, job function, location, expiration date, and the description as Markdown, with an optional detail add-on for posted date, department, facility, shift type, and travel. Use when someone wants a successfactors mcp server, to connect SuccessFactors to Claude AI, to give an AI agent live SAP SuccessFactors jobs, or to query enterprise job postings from an MCP client without writing glue code. No key needed for the public jobs layer, and billed per job delivered.4license: MIT5---67# SAP SuccessFactors Jobs, Inside Claude89Give Claude or any MCP client a tool that reads live SAP SuccessFactors postings on demand and hands back structured rows to reason over, with no glue code.1011## When to use this skill1213- You want a SuccessFactors MCP server that reads career sites, not one that manages an employer tenant.14- You are connecting SuccessFactors to Claude AI and want live postings an agent can pull mid-conversation.15- Your agent needs enterprise job data (roles, locations, functions) as structured JSON, on request.16- You do not want to build and host your own MCP wrapper around a SuccessFactors scraper.1718Not for: bulk one-off exports from a script or a scheduled pipeline. Use the companion `apify-successfactors-jobs-api` skill, built on the same Actor. See `references/actor-index.md`.1920## What you get2122The Actor returns one row per job (`resultType` separates `job` from `error` rows):2324- `requisitionId`, `url`, `applyUrl`, `title`25- `companyName`, `employer`, `tenant`, `careerSiteUrl`26- `jobFunction`, `location`, `countryCode`, `isRemote`, `validThrough`27- `descriptionMarkdown` by default, with `descriptionHtml` and `descriptionText` opt-in28- with `includeDetailFields`: `datePosted`, `department`, `facility`, `shiftType`, `travel`, `customFields`29- `source` (always `successfactors`), `sourceType`, `flavor`, `scrapedAt`3031## Prerequisites3233- Apify account (sign up at https://apify.com?fpr=9n7kx3&fp_sid=skillrepo).34- An `APIFY_TOKEN` for the hosted MCP server, or a Claude client that signs in to Apify.3536## The Actor3738- Store page: https://apify.com/johnvc/sap-successfactors-jobs-api?fpr=9n7kx3&fp_sid=skillrepo39- Actor ID: `johnvc/sap-successfactors-jobs-api`40- Pricing: pay per event, no start fee. See the cost section and `references/gotchas.md`.4142## Run it from Claude (MCP)4344Add the hosted Apify MCP server with this Actor in the tools list:4546```47https://mcp.apify.com/?tools=actors,docs,johnvc/sap-successfactors-jobs-api48```4950In [Claude Code](https://claude.ai/referral/uIlpa7nPLg) (free trial) or [Claude Cowork](https://claude.ai/referral/uIlpa7nPLg) (free trial), add it as an MCP server, then ask Claude to call the SAP SuccessFactors Jobs API tool with an input like:5152```json53{"companies":["jobs.sap.com"],"maxJobs":25,"includeDescriptionMarkdown":true}54```5556Claude discovers the tool, runs it, and reads the dataset back with no glue code. Docs: https://docs.apify.com/platform/integrations/mcp5758## CLI fallback5960If you would rather drive it from a shell:6162```bash63apify actors call "johnvc/sap-successfactors-jobs-api" \64 -i '{"companies":["jobs.sap.com"],"maxJobs":25}' \65 --json \66 --user-agent apify-awesome-skills/apify-successfactors-mcp \67 2>/dev/null68```6970## Workflow71721. Add the hosted MCP server URL above to your MCP client.732. Ask the agent to call the Actor tool with the career sites you care about (a host, URL, or company name).743. Keep the first call small (`maxJobs` of 10 to 25) so the agent gets a fast, cheap sample.754. Have the agent filter with `titleKeywords`, `jobFunctions`, or `locationKeywords` before scaling up; filters run before billing.765. Read the returned rows and reason over them: rank roles, extract skills, compare locations, or write them to storage.7778## Inputs7980- `companies`, `startUrls`: career-site hosts, URLs, single-job URLs, or company names.81- `outputMode`: `jobs` (default), `urlsOnly`, or `tenantsOnly`.82- `titleKeywords`, `jobFunctions`, `locationKeywords`, `activeOnly`, `remoteOnly`: pre-billing filters.83- `includeDescriptionMarkdown` / `Html` / `Text`, `includeDetailFields`, `report`: output add-ons.84- `maxJobs`, `maxJobsPerTenant`, `maxTenants`, `maxConcurrency`: scope and cost caps.8586## Cost guardrails8788- Per delivered row, no start fee; filters run before billing so filtered rows cost nothing.89- Description formats, detail fields, and the run report are separate add-ons billed only on rows that carry them.90- For agent use, keep `maxJobs` low per call and let the agent widen only when the sample looks right.9192## Honest limits9394- The MCP path runs the same Actor as a script would; it does not add fields, it changes how you call it.95- The public feed has no posted date; `datePosted` needs the detail add-on.96- Salary is a best-effort parse of the posting text and is often null.9798## Troubleshooting99100- If the tool does not appear, confirm the Actor slug in the `?tools=` URL and that the client is signed in to Apify.101- An `error` row with `tenant_not_found` means the company did not resolve to a live feed; pass the career-site URL.102- Large runs are slower with `includeDetailFields` on (one extra request per job); lower `maxJobs` for interactive use.103104## Related Actors105106See `references/actor-index.md` for the companion `apify-successfactors-jobs-api` skill and the other ATS job APIs on this account.