Skip to main content
Glama
Vidushibot

successfactors-mcp-prototype

by Vidushibot

SAP SuccessFactors Multi-Agent MCP-Prototyp

Demonstration mit synthetischen SuccessFactors-ähnlichen Daten. Dies ist ein schreibgeschützter Bildungsprototyp, kein SAP-SuccessFactors-System und nicht produktionsreif.

Die Anwendung beantwortet autorisierte HR-Fragen über eine schmale MCP-Tool-Grenze. Der Mock-Modus erfordert keine SAP- oder OpenAI-Anmeldeinformationen. Der Demo-Modus fügt optionale OpenAI-Agents-SDK-Orchestrierung hinzu; der echte Modus ist einem explizit konfigurierten Nicht-Produktions-SuccessFactors-Mandanten vorbehalten.

Funktionen

  • Elf typisierte, schreibgeschützte MCP-Tools; keine willkürliche HTTP-, OData- oder Schreiboberfläche.

  • Vier synthetische Identitäten mit serverseitigen Rollen und Bevölkerungsbereichen.

  • Explizite Entitäts- und Feld-Allowlists sowie Deny-by-Default-Antwortbereinigung.

  • Zehn fiktive Mitarbeiter, zwölf Positionen, Stammdatenobjekte, effektiv datierte Historie, Vakanzen und absichtliche Datenqualitätsprobleme.

  • Strukturiertes SQLite-Auditprotokoll ohne vollständige HR-Payloads oder Geheimnisse.

  • FastAPI-Chat-/Audit-API und Streamlit-Oberfläche mit Beweisfokus.

  • Deterministischer Mock-Chat funktioniert ohne API-Schlüssel.

Related MCP server: HRIS MCP Connector

Windows-Einrichtung (primärer Pfad)

cd .\successfactors-mcp-prototype
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\scripts\setup_windows.ps1

Alle Dienste ausführen:

.\scripts\run_all_windows.ps1

Oder drei Terminals verwenden:

.\scripts\run_mcp_windows.ps1
.\scripts\run_backend_windows.ps1
.\scripts\run_ui_windows.ps1

run_ui_windows.ps1 startet FastAPI im Hintergrund automatisch, wenn das Backend nicht bereits läuft, sodass es auch als einfachster Ein-Befehl-Mock-UI-Starter verwendet werden kann.

Unix und VS Code

Führen Sie bash scripts/setup_unix.sh aus, dann bash scripts/run_all_unix.sh. Wählen Sie in VS Code .venv als Python-Interpreter und öffnen Sie bei Bedarf drei Terminals.

Konfiguration und Modi

Kopieren Sie .env.example in .env; Platzhalter enthalten keine Geheimnisse.

  • APP_MODE=mock: synthetischer Provider und deterministischer Chat; keine externen Anmeldeinformationen.

  • APP_MODE=demo: synthetischer Provider mit Live-Agents-SDK-Orchestrierung; erfordert OPENAI_API_KEY und MCP_INTERNAL_TOKEN.

  • APP_MODE=real: nur konfigurierter Testmandant. Fehlende Einstellungen führen zu Startfehlern; es gibt keinen Mock-Fallback.

OPENAI_MODEL zentralisiert die Modellauswahl. Abhängigkeitsbereiche zielen auf Python 3.11 und aktuelle kompatible Hauptversionen ab, während nicht überprüfte Hauptupgrades vermieden werden.

Live-Agents-SDK-Demo

Kopieren Sie .env.example in .env und setzen Sie dann diese Werte:

APP_MODE=demo
OPENAI_MODEL=gpt-5.4-mini
OPENAI_API_KEY=your-key-from-a-secret-store
MCP_INTERNAL_TOKEN=a-long-random-local-secret

Committen Sie .env nicht. run_ui_windows.ps1 startet jetzt den MCP-Server und FastAPI bei Bedarf. Die Anwendung übergibt Benutzer-, Sitzungs- und Korrelationsidentität an MCP über geschützte HTTP-Header; diese Felder fehlen in modellaufrufbaren Tool-Schemata. Spezialisten erhalten fest codierte Tool-Allowlists. Die UI-Trace zeichnet nur Agent-/Tool-Lebenszyklusnamen auf, nicht Prompts, Argumente, Ergebnisse oder private Überlegungen.

Kostenkontrollen sind mit DEMO_MAX_TURNS, DEMO_MAX_OUTPUT_TOKENS und DEMO_DAILY_TOKEN_BUDGET konfiguriert. Setzen Sie OPENAI_INPUT_COST_PER_1M und OPENAI_OUTPUT_COST_PER_1M auf die aktuellen Tarife für das gewählte Modell, um eine lokale Schätzung anzuzeigen. OpenAI-Tracing ist standardmäßig deaktiviert und, wenn aktiviert, bleiben sensible Trace-Inhalte deaktiviert.

Die normale Suite ruft OpenAI nie auf. Um den einzelnen opt-in Live-Delegations-Smoke-Test auszuführen, nachdem alle drei Dienste im Demo-Modus laufen:

$env:RUN_LIVE_AGENT_TESTS="true"
.\.venv\Scripts\python.exe -m pytest -m live -q

Dieser Test macht eine echte API-Anfrage und verursacht daher Modellnutzung.

Verifizierung

python -m ruff format --check .
python -m ruff check .
python -m mypy src
python -m pytest

Einrichtung der echten Test-Mandanten-Authentifizierung

  1. Registrieren Sie einen OAuth-Client im SuccessFactors-API-Center.

  2. Erstellen Sie einen dedizierten API-Benutzer.

  3. Weisen Sie die minimal erforderlichen RBP-Abfrageberechtigungen zu.

  4. Begrenzen Sie die Zielpopulation.

  5. Gewähren Sie Abfragezugriff nur auf genehmigte Entitäten und Felder.

  6. Speichern Sie OAuth-Material außerhalb der Quellcodeverwaltung.

  7. Validieren Sie den mandantenspezifischen signierten OAuth-Flow gegen einen Nicht-Produktionsmandanten.

  8. Verifizieren Sie sowohl erlaubte als auch verweigerte Mitarbeiterszenarien.

Die Basisauthentifizierung wird nicht unterstützt. Die enthaltene echte Token-Provider-Schnittstelle schlägt absichtlich fehl, bis der mandantenspezifische SAP-dokumentierte Flow implementiert und validiert ist.

Docker

Nachdem Sie .env.example in .env kopiert haben, führen Sie docker compose up --build aus. Docker ist optional und die Compose-Datei ist nur für die Entwicklung gedacht, nicht produktionsgehärtet.

Fehlerbehebung und Einschränkungen

  • Wenn die UI meldet, dass das Backend nicht verfügbar ist, starten Sie zuerst FastAPI.

  • Wenn die Portbindung fehlschlägt, stoppen Sie den Prozess, der 8000, 8001 oder 8501 verwendet.

  • Der Prototyp-Benutzerauswahl ist keine Produktionsauthentifizierung.

  • SQLite ist nicht für horizontal skalierte Produktions-Audit-Speicherung gedacht.

  • Echte OAuth-, Mandantenmetadaten-Eigenheiten und RBP-Verhalten erfordern Mandantenvalidierung.

  • Mock-Routing unterstützt absichtlich die bereitgestellten Demonstrationsfragemuster; es ist keine allgemeine natürliche Sprach-Engine.

  • Zukünftige Schreibvorgänge erfordern eine separate genehmigte Architektur und sind nicht vorhanden, auch nicht als Platzhalter.

Für den detaillierten Ablauf und die Vertrauensgrenzen siehe ARCHITECTURE.md; für Kontrollen und Risiken siehe SECURITY.md. Die genauen synthetischen Datensätze und der Szenarioleitfaden sind in TEST_DATA.md beschrieben und unter test_data/ exportiert.

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server that enables querying an HR FAQ document via RAG, returning accurate answers and related chunks, and supports index rebuilding and response evaluation.
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables querying HR data like recent hires, employee details, departments, and PTO balances through natural language in an MCP client.
  • F
    license
    Not graded
    quality
    C
    maintenance
    Read-only MCP server that proxies deepHR's API to MCP clients, enabling interaction with deepHR modules such as payroll and employees through natural language.
  • F
    license
    Not graded
    quality
    C
    maintenance
    Exposes SAP SuccessFactors HR data as MCP tools for AI agents, enabling natural language queries about employees, jobs, performance, and organizational structure.

View all related MCP servers

Related MCP Connectors

  • Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.

  • Official Microsoft MCP Server to query Microsoft Entra data using natural language

  • MCP server for AI access to Swagger by SmartBear.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vidushibot/successfactors-mcp-prototype'

If you have feedback or need assistance with the MCP directory API, please join our Discord server