Connect
Optimize
Secure
The #1 agentic semantic tool search: 91.6% first-try accuracy on S1 Search Bench • Explore Tool Discovery →
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
Create, read, update, and delete across Oracle Fusion HCM — and extend your agent's capabilities with custom actions.
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
Every Oracle Fusion HCM tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.
Prompt Injection Defense →Performance
Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every Oracle Fusion HCM call.
Tools Discovery →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.
Every action from Oracle Fusion HCM's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.
Create a new employee with personal and assignment details. PREREQUISITE - First call list_emps with expand=assignments to get LegalEntityId and BusinessUnitId.
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
Retrieve a single employee's full profile by GUID (not PersonId) -- requires empsUniqID from list_emps self link
Update an existing employee by PersonId
Creates a new worker record in Oracle Fusion HCM. Requires elevated privileges.
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
Retrieve a single worker by composite ID (PersonId,EffectiveDate) with optional child resource expansion
Update an existing worker record using date-effective processing -- requires Effective-Of header with RangeMode
Create a new assignment for an employee
Get all work assignments for an employee (job, department, manager, salary per assignment) -- requires empsUniqID GUID from list_emps
Retrieve a specific assignment for an employee
Update an existing assignment for an employee
Get organizations (departments, business units, legal employers) -- use ClassificationCode filter to find specific org types
Retrieve a specific organization or department by unique ID from Oracle HCM Cloud
Create a new absence/leave record -- requires personId, legalEntityId, absenceTypeId, dates, and absenceStatusCd (SAVED for draft, SUBMITTED for approval)
List leave/absence records (sick, vacation, parental) with status, duration, and approval info -- filter by personId, legalEntityId, or absenceType
Retrieve a single absence record by personAbsenceEntryId with full details including duration, approval status, and dates
Update an existing absence record -- only SAVED (draft) absences can typically be updated; check absenceUpdatableFlag before calling
Permanently delete an absence record -- only draft/SAVED absences can be deleted; approved absences cannot be removed
Get a list of time records with filtering and pagination options
Retrieve a specific time record by its unique identifier
Get a list of attributes for a specific time record
Retrieve a specific attribute for a time record
Get a list of messages for a specific time record
Retrieve a specific message for a time record
Get a list of message tokens for a specific time record message
Retrieve a specific message token for a time record message
Get a list of salary components for a specific salary record
Retrieve a specific salary component by ID in Oracle HCM Cloud
List active benefit enrollments (health, dental, life insurance) with plan names, coverage amounts, and dates -- filter by PersonId or PlanId
Retrieve a single benefit enrollment with full plan details, coverage amounts, and expandable costs/dependents/providers
List dependents (spouse, children) covered under a specific benefit enrollment -- requires EnrollmentResultId from list_benefit_enrollments
Retrieve a single covered dependent's details (name, relationship, coverage dates) for a benefit enrollment
Create a new recruiting candidate -- Email must be unique across all candidates or Oracle returns error IRC-1590024
List recruiting candidates with contact info, source details, and expandable child resources (education, experience, skills, attachments)
Retrieve a single recruiting candidate by CandidateNumber with full profile, contact info, and expandable child resources
Update a recruiting candidate's personal info, contact details, or nested resources (education, experience, skills) via PATCH
Permanently delete a recruiting candidate by CandidateNumber -- cannot be undone
Create a new job requisition -- requires Title, RecruitingType, HiringManagerId, RecruiterId, StateId, PrimaryLocationId, PhaseId, and UnlimitedOpenings
List job requisitions with title, openings, hiring manager, salary range, department, location, and publishing status
Retrieve a single job requisition with full details including compensation, openings, published job status, and child resources
Update a job requisition's fields (title, openings, compensation, contacts, published status, skills, locations) via PATCH
Permanently delete a job requisition -- returns 204 on success; cannot be undone
List recruiting job offers with candidate, requisition, hiring manager, phase/state, expiration, and hire date details
Retrieve a single job offer with full details including candidate, requisition, phase/state, e-signature instructions, and attachments
Bulk-import performance goals into a goal plan from a mass assignment request -- requires goalPlanId and reviewPeriodId
List employee performance goals with status, percent complete, target dates, and review period -- filter by PersonId or GoalId
Retrieve a single performance goal with full details including status, percent complete, target dates, and associated goal plans
List which goal plans a performance goal belongs to -- returns plan names, review periods, priority, and weight per plan
Retrieve a single associated goal plan record for a performance goal with priority, weight, and review period details
Create a new goal plan for a review period -- requires GoalPlanName, StartDate, and EndDate at minimum
List performance goal plans (annual reviews, development plans) -- returns plan names, date ranges, assignee counts, and review period info
Retrieve a single goal plan with full details including assignees, goals count, and review period configuration
Update a goal plan's name, description, dates, type, or active status via PATCH
Permanently delete a goal plan by GoalPlanId -- returns 204 on success; cannot be undone
Create a new digital learning content item in Oracle Learning Cloud
Get a list of digital learning content items from external providers
Retrieve a specific digital learning content item by learningItemNumber
Update an existing digital learning content item in Oracle Learning Cloud
Creates a new learning assignment record for a learner.
Get a list of learner learning records with filtering and sorting options
Retrieves a specific learning assignment record by its unique composite identifier.
Updates an existing learning assignment record.
Creates a new learning event (instructor-led training) in Oracle Fusion HCM.
Get a list of learning events with filtering and sorting options
Retrieves a specific learning event by its unique ID.
Updates an existing learning event in Oracle Fusion HCM.
Send an xAPI statement to track learner activity in Oracle Learning Cloud
Retrieve an xAPI statement by its statementId from Oracle Learning Cloud
Create a new talent person profile in Oracle HCM Cloud
Get a list of talent person profiles with filtering and sorting options
Retrieve a specific talent person profile by ID from Oracle HCM Cloud
Update an existing talent person profile in Oracle HCM Cloud
Create a new skill section for a talent person profile in Oracle HCM Cloud
Get a list of skill sections for a talent profile
Retrieve a specific skill section from Oracle HCM Cloud
Create a new skill item in Oracle HCM Cloud
Get a list of skill items for a skill section
Retrieve a specific skill item from Oracle HCM Cloud
Update an existing skill item in Oracle HCM Cloud
Delete a skill item from Oracle HCM Cloud
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
Retrieve a paginated list of all document records (passports, visas, licenses, certificates) stored for persons in Oracle HCM
Retrieve a single document record by its DocumentsOfRecordId, including full metadata and optional child resource expansion
Permanently delete a document record and all its associated attachments by DocumentsOfRecordId
Upload a file (base64), web page link, or text note as an attachment on a document record -- response may return null for AttachedDocumentId
Retrieve a paginated list of all file, web page, and text attachments for a specific document record
Retrieve a single attachment's metadata (file name, type, size, dates) from a document record by its unique hash key
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
Uploads a file attachment to a recruiting candidate (e.g., resume, cover letter)
Get all attachments for a recruiting candidate
Retrieves a single attachment from a recruiting candidate
Downloads the file contents of a candidate attachment
Retrieve onboarding, offboarding, and other HR journey tasks for workers -- use this to check task completion status and progress
Retrieve a single journey task's full details by ID -- Status values are INI (not started), DEP (blocked), PENDING (in progress), COMPLETED, EXP (expired)
Uploads a file to HCM Data Loader import account for bulk data processing
Copy a document from a worker journey task into the person's permanent document records repository
Upload an image (icon or banner) to associate with a worker journey task template
Get a list of job definitions with filtering and sorting options
Get a job by its unique ID from the jobs resource
Download error stack trace for a failed absence record -- use for debugging absence processing or approval workflow failures
Get current absence balance (accrued, used, remaining) for a specific absence type and person -- includes all plans for that type
Check what absence actions a user can perform -- returns roles, permissions, and access levels for absence management
Get a list of statuses for a specific time record
Retrieve a specific status for a time record
Get salary records for workers filtered by AssignmentId or PersonId -- returns empty array (not error) when no salary exists for a given filter
Retrieve a single salary record with full compensation details including grade ranges, CompaRatio, and component breakdowns
List open enrollment windows and life-event-triggered benefit enrollment opportunities for employees -- filter by PersonNumber or LifeEventStatusCode
Retrieve a specific benefit enrollment opportunity by PersonNumber -- returns plan/program details, life event info, and enrollment period dates
Get the derived primary location for a given location
Retrieve paginated thumbnail preview images (base64 PNG) of a document record's attachments without downloading full files
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'
Synchronize goals with performance documents that share the same review period -- ensures goal progress reflects in performance reviews
Calculate projected absence balance (remaining PTO/sick days) through a specified end date based on accruals and usage
Override the plan payment percentage for an absence (e.g. change from 100% to 50% pay during extended leave)
Retry failed absence processing -- reprocesses absences with errors and runs the post-approval workflow again for a specific worker
Apply edit restrictions to an absence record based on organization editing rules -- controls whether managers/employees can modify it
Show how absence plans are consumed for a specific absence -- returns plan usage breakdown showing which plans cover the time off
Search for a goal plan by name using advanced search with autocomplete, filters, and sorting
Assign a specific performance goal to selected employees within a goal plan -- requires GoalPlanId and performanceGoalsUniqID
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.
ViewOne 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>"
]
}
}
}139+ actions
128+ actions
127+ actions
123+ actions
117+ actions
111+ actions
105+ actions
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
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
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
origin_owner_id.All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.