Skip to main content
Glama
david-rodrig

SuccessFactors MCP Server

by david-rodrig

update_user_odata

Update user data in SAP SuccessFactors via OData API. Provide userId and camelCase fields to change employee details like name, email, status, manager, or HR assignment.

Instructions

Update user data using PUT request with exact OData format. Accepts fields in camelCase format (matching SuccessFactors API format) such as firstName, lastName, email, status, timeZone, etc. Manager and HR should be provided as User IDs or "NO_MANAGER"/"NO_HR".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
hrIdNoHR User ID, or "NO_HR" to remove HR
emailNoEmail address
genderNoGender (M/F)
statusNoUser status (e.g., "t" for active)
userIdYesUser ID to update (internal user ID)
lastNameNoLast name
timeZoneNoTime zone (e.g., "US/Eastern", "Asia/Jerusalem")
usernameNoUsername (optional, defaults to userId if not provided)
firstNameNoFirst name
managerIdNoManager User ID, or "NO_MANAGER" to remove manager
departmentNoDepartment
additionalFieldsNoAdditional fields in camelCase format (e.g., {"jobCode": "Employee", "location": "Israel"})

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry the behavioral burden. It usefully discloses the HTTP method (PUT) and the exact OData/camelCase format, which is more than the tool name alone provides. However, it does not state whether the PUT is a partial update or full replacement, how omitted fields are treated, what authorization is required, or what response/error behavior to expect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three concise sentences, each earning its place: the first states the operation and method, the second covers field formatting, and the third explains special sentinel values for manager and HR. It is front-loaded with the most important scope and avoids redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The schema is rich and fully documented, but there is no output schema and no annotations. The description covers the API format and sentinel values, yet it omits crucial write-operation context such as whether unspecified fields are preserved or reset, permissions, and expected response/error behavior. For a complex 12-parameter mutation tool, this is a noticeable but not fatal gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by explaining that fields should be in camelCase matching the SuccessFactors API and by naming representative fields such as firstName, lastName, and timeZone. This gives cross-parameter context that the schema descriptions do not provide individually.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action and resource: updating user data via a PUT request with exact OData format. It also communicates the camelCase SuccessFactors style, making the tool's role understandable, but it does not explicitly distinguish it from siblings like post_user_data or update_manager_hr.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a use case—updating user data through OData-formatted PUT calls—and gives format guidance, but it provides no explicit when-to-use vs. when-not-to-use guidance or references to alternatives such as update_manager_hr or post_user_data. The manager/HR sentinel values hint at coverage, but they are parameter semantics, not tool-selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.