Oracle Fusion HCM MCP Server
for AI Agents
Connect your AI agent to StackOne's Oracle Fusion HCM MCP server and give it 120 MCP tools out of the box. Auth, tool execution, and security all managed.
Coverage
120 Agent Actions
Create, read, update, and delete across Oracle Fusion HCM — and extend your agent's capabilities with custom actions.
Authentication
Agent Tool Authentication
Per-user OAuth in one call. Your Oracle Fusion HCM MCP server gets session-scoped tokens with zero credentials stored on your infra.
Agent Auth →Security
Agent Protection
Every Oracle Fusion HCM tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.
Prompt Injection Defense →Performance
Max Agent Context. Min Cost.
Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every Oracle Fusion HCM call.
Tools Discovery →What is the Oracle Fusion HCM MCP Server?
A Oracle Fusion HCM MCP server lets AI agents read and write Oracle Fusion HCM data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's Oracle Fusion HCM MCP server ships with 120 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.
All Oracle Fusion HCM MCP Tools
Every action from Oracle Fusion HCM's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.
Employees
- Create Employee
Create a new employee with personal and assignment details. PREREQUISITE - First call list_emps with expand=assignments to get LegalEntityId and BusinessUnitId.
- List Employees
PREFERRED employee lookup by name, email, or PersonNumber -- on 403 FORBIDDEN errors, fall back to list_workers which returns the same PersonId -- for salary data use list_salaries, for assignment details use list_emp_assignments, for onboarding tasks use list_worker_journey_tasks
- Get Employee
Retrieve a single employee's full profile by GUID (not PersonId) -- requires empsUniqID from list_emps self link
- Update Employee
Update an existing employee by PersonId
Workers
- Create Worker
Creates a new worker record in Oracle Fusion HCM. Requires elevated privileges.
- List Workers
List workers (employees, contingent, pending) -- does NOT include journey/onboarding tasks (use list_worker_journey_tasks separately) or salary data (use list_salaries) -- prefer list_emps for employee-specific queries
- Get Worker
Retrieve a single worker by composite ID (PersonId,EffectiveDate) with optional child resource expansion
- Update Worker
Update an existing worker record using date-effective processing -- requires Effective-Of header with RangeMode
Employee Assignments
- Create Employee Assignment
Create a new assignment for an employee
- List Employee Assignments
Get all work assignments for an employee (job, department, manager, salary per assignment) -- requires empsUniqID GUID from list_emps
- Get Employee Assignment
Retrieve a specific assignment for an employee
- Update Employee Assignment
Update an existing assignment for an employee
Organizations
- List Organizations
Get organizations (departments, business units, legal employers) -- use ClassificationCode filter to find specific org types
- Get Organization
Retrieve a specific organization or department by unique ID from Oracle HCM Cloud
Absences
- Create Absence
Create a new absence/leave record -- requires personId, legalEntityId, absenceTypeId, dates, and absenceStatusCd (SAVED for draft, SUBMITTED for approval)
- List Absences
List leave/absence records (sick, vacation, parental) with status, duration, and approval info -- filter by personId, legalEntityId, or absenceType
- Get Absence
Retrieve a single absence record by personAbsenceEntryId with full details including duration, approval status, and dates
- Update Absence
Update an existing absence record -- only SAVED (draft) absences can typically be updated; check absenceUpdatableFlag before calling
- Delete Absence
Permanently delete an absence record -- only draft/SAVED absences can be deleted; approved absences cannot be removed
Time Records
- List Time Records
Get a list of time records with filtering and pagination options
- Get Time Record
Retrieve a specific time record by its unique identifier
Time Record Attributes
- List Time Record Attributes
Get a list of attributes for a specific time record
- Get Time Record Attribute
Retrieve a specific attribute for a time record
Time Record Messages
- List Time Record Messages
Get a list of messages for a specific time record
- Get Time Record Message
Retrieve a specific message for a time record
Time Record Message Tokens
- List Time Record Message Tokens
Get a list of message tokens for a specific time record message
- Get Time Record Message Token
Retrieve a specific message token for a time record message
Salary Components
- List Salary Components
Get a list of salary components for a specific salary record
- Get Salary Component
Retrieve a specific salary component by ID in Oracle HCM Cloud
Benefit Enrollments
- List Benefit Enrollments
List active benefit enrollments (health, dental, life insurance) with plan names, coverage amounts, and dates -- filter by PersonId or PlanId
- Get Benefit Enrollment
Retrieve a single benefit enrollment with full plan details, coverage amounts, and expandable costs/dependents/providers
Benefit Enrollment Dependents
- List Benefit Enrollment Dependents
List dependents (spouse, children) covered under a specific benefit enrollment -- requires EnrollmentResultId from list_benefit_enrollments
- Get Benefit Enrollment Dependent
Retrieve a single covered dependent's details (name, relationship, coverage dates) for a benefit enrollment
Recruiting Candidates
- Create Recruiting Candidate
Create a new recruiting candidate -- Email must be unique across all candidates or Oracle returns error IRC-1590024
- List Recruiting Candidates
List recruiting candidates with contact info, source details, and expandable child resources (education, experience, skills, attachments)
- Get Recruiting Candidate
Retrieve a single recruiting candidate by CandidateNumber with full profile, contact info, and expandable child resources
- Update Recruiting Candidate
Update a recruiting candidate's personal info, contact details, or nested resources (education, experience, skills) via PATCH
- Delete Recruiting Candidate
Permanently delete a recruiting candidate by CandidateNumber -- cannot be undone
Recruiting Job Requisitions
- Create Recruiting Job Requisition
Create a new job requisition -- requires Title, RecruitingType, HiringManagerId, RecruiterId, StateId, PrimaryLocationId, PhaseId, and UnlimitedOpenings
- List Recruiting Job Requisitions
List job requisitions with title, openings, hiring manager, salary range, department, location, and publishing status
- Get Recruiting Job Requisition
Retrieve a single job requisition with full details including compensation, openings, published job status, and child resources
- Update Recruiting Job Requisition
Update a job requisition's fields (title, openings, compensation, contacts, published status, skills, locations) via PATCH
- Delete Recruiting Job Requisition
Permanently delete a job requisition -- returns 204 on success; cannot be undone
Recruiting Job Offers
- List Recruiting Job Offers
List recruiting job offers with candidate, requisition, hiring manager, phase/state, expiration, and hire date details
- Get Recruiting Job Offer
Retrieve a single job offer with full details including candidate, requisition, phase/state, e-signature instructions, and attachments
Performance Goals
- Import Performance Goals
Bulk-import performance goals into a goal plan from a mass assignment request -- requires goalPlanId and reviewPeriodId
- List Performance Goals
List employee performance goals with status, percent complete, target dates, and review period -- filter by PersonId or GoalId
- Get Performance Goal
Retrieve a single performance goal with full details including status, percent complete, target dates, and associated goal plans
Performance Goal Associated Goal Plans
- List Performance Goal Associated Goal Plans
List which goal plans a performance goal belongs to -- returns plan names, review periods, priority, and weight per plan
- Get Performance Goal Associated Goal Plan
Retrieve a single associated goal plan record for a performance goal with priority, weight, and review period details
Goal Plans
- Create Goal Plan
Create a new goal plan for a review period -- requires GoalPlanName, StartDate, and EndDate at minimum
- List Goal Plans
List performance goal plans (annual reviews, development plans) -- returns plan names, date ranges, assignee counts, and review period info
- Get Goal Plan
Retrieve a single goal plan with full details including assignees, goals count, and review period configuration
- Update Goal Plan
Update a goal plan's name, description, dates, type, or active status via PATCH
- Delete Goal Plan
Permanently delete a goal plan by GoalPlanId -- returns 204 on success; cannot be undone
Digital Learning Providers
- Create Digital Learning Provider
Create a new digital learning content item in Oracle Learning Cloud
- List Digital Learning Providers
Get a list of digital learning content items from external providers
- Get Digital Learning Provider
Retrieve a specific digital learning content item by learningItemNumber
- Update Digital Learning Provider
Update an existing digital learning content item in Oracle Learning Cloud
Learner Learning Records
- Create Learner Learning Record
Creates a new learning assignment record for a learner.
- List Learner Learning Records
Get a list of learner learning records with filtering and sorting options
- Get Learner Learning Record
Retrieves a specific learning assignment record by its unique composite identifier.
- Update Learner Learning Record
Updates an existing learning assignment record.
Learning Events
- Create Learning Event
Creates a new learning event (instructor-led training) in Oracle Fusion HCM.
- List Learning Events
Get a list of learning events with filtering and sorting options
- Get Learning Event
Retrieves a specific learning event by its unique ID.
- Update Learning Event
Updates an existing learning event in Oracle Fusion HCM.
XAPI Statements
- Create XAPI Statement
Send an xAPI statement to track learner activity in Oracle Learning Cloud
- Get XAPI Statement
Retrieve an xAPI statement by its statementId from Oracle Learning Cloud
Talent Person Profiles
- Create Talent Person Profile
Create a new talent person profile in Oracle HCM Cloud
- List Talent Person Profiles
Get a list of talent person profiles with filtering and sorting options
- Get Talent Person Profile
Retrieve a specific talent person profile by ID from Oracle HCM Cloud
- Update Talent Person Profile
Update an existing talent person profile in Oracle HCM Cloud
Skill Sections
- Create Skill Section
Create a new skill section for a talent person profile in Oracle HCM Cloud
- List Skill Sections
Get a list of skill sections for a talent profile
- Get Skill Section
Retrieve a specific skill section from Oracle HCM Cloud
Skill Items
- Create Skill Item
Create a new skill item in Oracle HCM Cloud
- List Skill Items
Get a list of skill items for a skill section
- Get Skill Item
Retrieve a specific skill item from Oracle HCM Cloud
- Update Skill Item
Update an existing skill item in Oracle HCM Cloud
- Delete Skill Item
Delete a skill item from Oracle HCM Cloud
Document Records
- Create Document Record
Create a new document record for a person -- when the user specifies a DocumentType (e.g. 'Passport', 'Birth', 'Application'), proceed directly with creation -- do NOT waste calls validating the type via list_document_records unless you have no idea what type to use
- List Document Records
Retrieve a paginated list of all document records (passports, visas, licenses, certificates) stored for persons in Oracle HCM
- Get Document Record
Retrieve a single document record by its DocumentsOfRecordId, including full metadata and optional child resource expansion
- Delete Document Record
Permanently delete a document record and all its associated attachments by DocumentsOfRecordId
Document Record Attachments
- Upload Document Record Attachment
Upload a file (base64), web page link, or text note as an attachment on a document record -- response may return null for AttachedDocumentId
- List Document Record Attachments
Retrieve a paginated list of all file, web page, and text attachments for a specific document record
- Get Document Record Attachment
Retrieve a single attachment's metadata (file name, type, size, dates) from a document record by its unique hash key
- Download Document Record Attachment
Download ONE SPECIFIC attachment by its attachmentsUniqID -- only use this for a single known file; for downloading all or multiple attachments, you MUST use download_document_record_attachments_bulk instead
Candidate Attachments
- Upload Candidate Attachment
Uploads a file attachment to a recruiting candidate (e.g., resume, cover letter)
- List Candidate Attachments
Get all attachments for a recruiting candidate
- Get Candidate Attachment
Retrieves a single attachment from a recruiting candidate
- Download Candidate Attachment
Downloads the file contents of a candidate attachment
Worker Journey Tasks
- List Worker Journey Tasks
Retrieve onboarding, offboarding, and other HR journey tasks for workers -- use this to check task completion status and progress
- Get Worker Journey Task
Retrieve a single journey task's full details by ID -- Status values are INI (not started), DEP (blocked), PENDING (in progress), COMPLETED, EXP (expired)
Other (25)
- Upload File To HCM Data Loader
Uploads a file to HCM Data Loader import account for bulk data processing
- Upload Journey Task Document To Document Records
Copy a document from a worker journey task into the person's permanent document records repository
- Upload Journey Task Image
Upload an image (icon or banner) to associate with a worker journey task template
- List Jobs Resource
Get a list of job definitions with filtering and sorting options
- Get Job Resource
Get a job by its unique ID from the jobs resource
- Download Stack Trace
Download error stack trace for a failed absence record -- use for debugging absence processing or approval workflow failures
- Get Absence Type Balance
Get current absence balance (accrued, used, remaining) for a specific absence type and person -- includes all plans for that type
- Get User Access Details
Check what absence actions a user can perform -- returns roles, permissions, and access levels for absence management
- List Time Record Statuses
Get a list of statuses for a specific time record
- Get Time Record Status
Retrieve a specific status for a time record
- List Salaries
Get salary records for workers filtered by AssignmentId or PersonId -- returns empty array (not error) when no salary exists for a given filter
- Get Salary
Retrieve a single salary record with full compensation details including grade ranges, CompaRatio, and component breakdowns
- List Benefit Enrollment Opportunities
List open enrollment windows and life-event-triggered benefit enrollment opportunities for employees -- filter by PersonNumber or LifeEventStatusCode
- Get Benefit Enrollment Opportunity
Retrieve a specific benefit enrollment opportunity by PersonNumber -- returns plan/program details, life event info, and enrollment period dates
- Get Derived Primary Location
Get the derived primary location for a given location
- Get Document Record Attachment Preview
Retrieve paginated thumbnail preview images (base64 PNG) of a document record's attachments without downloading full files
- Download Document Record Attachments (Bulk)
DEFAULT tool when user wants to download multiple or all attachments -- ALWAYS use this (not the singular download) when user says 'download all', 'get all files', 'download attachments', or 'download in one go'
- Sync Goal Plan With Performance Documents
Synchronize goals with performance documents that share the same review period -- ensures goal progress reflects in performance reviews
- Load Projected Balance
Calculate projected absence balance (remaining PTO/sick days) through a specified end date based on accruals and usage
- Override Payment Percentage Entitlement
Override the plan payment percentage for an absence (e.g. change from 100% to 50% pay during extended leave)
- Reprocess Absences And Run Post Approval Process
Retry failed absence processing -- reprocesses absences with errors and runs the post-approval workflow again for a specific worker
- Restrict Absence Edit
Apply edit restrictions to an absence record based on organization editing rules -- controls whether managers/employees can modify it
- Show Absence Plan Usage
Show how absence plans are consumed for a specific absence -- returns plan usage breakdown showing which plans cover the time off
- Find Goal Plan By Advanced Search
Search for a goal plan by name using advanced search with autocomplete, filters, and sorting
- Assign Performance Goal
Assign a specific performance goal to selected employees within a goal plan -- requires GoalPlanId and performanceGoalsUniqID
Oracle Fusion HCM AI Agent Use Cases
Connect your AI agent to Oracle Fusion HCM and help your team scale the HR operations they run by hand today.
Use StackOne to connect your AI agent to your HRIS, identity management, and LMS to automate employee onboarding.
ViewUse StackOne to connect your AI agent to your HRIS, knowledge base, and messaging tools to automate HR policy Q&A.
ViewAutomate invoice processing with AI agents connected to your ERP, accounting software, and AP tools through StackOne.
ViewSet Up Your Oracle Fusion HCM MCP Server in Minutes
One endpoint. Any framework. Your agent is talking to Oracle Fusion HCM in under 10 lines of code.
Agent Frameworks
{
"mcpServers": {
"stackone": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://api.stackone.com/mcp?x-account-id=<account_id>",
"--header",
"Authorization: Basic <YOUR_BASE64_TOKEN>"
]
}
}
}Check More HRIS / HCM MCP Servers
139+ actions
128+ actions
127+ actions
123+ actions
117+ actions
111+ actions
105+ actions
Platform Resources
MCP Code Mode: Keeping Tool Responses Out of Agent Context
Anthropic's code_execution processes data already in context. Custom MCP code mode keeps raw tool responses in a sandbox. 14K tokens vs 500.
11 min
Comparing BM25, TF-IDF, and Hybrid Search for MCP Tool Discovery
Benchmarking BM25, TF-IDF, and hybrid search for MCP tool discovery across 916 tools. The 80/20 TF-IDF/BM25 hybrid hits 21% Top-1 accuracy in under 1ms.
10 min
Indirect Prompt Injection Defense for MCP Tools: A Technical Guide
MCP tools that read emails, CRM records, and tickets are indirect prompt injection vectors. Here's how we built a two-tier defense that scans tool results in ~11ms.
12 min
MCP vs A2A: Architecture, Security, and When to Use Each
MCP vs A2A: what each protocol standardizes, how they differ, their shared security risks including indirect prompt injection, and when to use one, both, or a hybrid architecture.
12 min
MCP vs API: What 200+ Connector Builds Taught Us
MCP wraps APIs, it doesn't replace them. After building 200+ connectors that serve both, here's when each approach wins.
14 min read
Oracle Fusion HCM MCP Server FAQ
Does StackOne have a Oracle Fusion HCM MCP server?
Oracle Fusion HCM MCP server vs direct API integration — what's the difference?
How does Oracle Fusion HCM authentication work for AI agents?
origin_owner_id.Are Oracle Fusion HCM MCP tools vulnerable to prompt injection?
What is the context bloat of a Oracle Fusion HCM agent and how do I avoid it?
Can I limit which actions my Oracle Fusion HCM agent can access?
Can I create custom agent actions for my Oracle Fusion HCM MCP server?
When should I NOT use a Oracle Fusion HCM MCP server?
What AI frameworks and AI clients does the StackOne Oracle Fusion HCM MCP server support?
Put your AI agents to work
All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.