Skip to main content
Glama
DimiDR

SAP Datasphere MCP Server

by DimiDR

create_database_user

Create database users in SAP Datasphere with custom consumption and ingestion permissions, including audit policies and auto-generated credentials.

Instructions

Create a new database user in a SAP Datasphere space with specified permissions.

IMPORTANT: This is a HIGH-RISK tool that requires user consent before execution.

Use this tool when:

  • User requests "Create a database user named JEFF in SALES"

  • Setting up new user access for applications or analysts

  • Configuring data ingestion users

  • Establishing read-only consumption users

Required parameters:

  • space_id: The space where user will be created

  • database_user_id: User name suffix (e.g., 'JEFF', 'REPORTING_USER')

  • user_definition: JSON object defining permissions and settings

User definition structure:

{
  "consumption": {
    "consumptionWithGrant": false,
    "spaceSchemaAccess": false,
    "scriptServerAccess": false,
    "enablePasswordPolicy": false,
    "localSchemaAccess": false,
    "hdiGrantorForCupsAccess": false
  },
  "ingestion": {
    "auditing": {
      "dppRead": {
        "isAuditPolicyActive": false,
        "retentionPeriod": 7
      },
      "dppChange": {
        "isAuditPolicyActive": false,
        "retentionPeriod": 7
      }
    }
  }
}

Permission types:

  • Consumption: Read access to space data

    • consumptionWithGrant: Allow granting privileges to others

    • spaceSchemaAccess: Access to space schema objects

    • scriptServerAccess: Execute stored procedures/UDFs

  • Ingestion: Write access for data loading

    • Audit policies for compliance (DPP read/change tracking)

Security notes:

  • New password is auto-generated and returned (store securely!)

  • Audit retention period: 1-365 days

  • Minimum privilege principle recommended

  • Password must be changed on first login

Example queries:

  • "Create a read-only database user named ANALYST in SALES"

  • "Set up a database user for data loading in FINANCE"

  • "Create user REPORTING with consumption access"

Note: Corresponds to CLI: datasphere dbusers create --space --databaseuser --file-path <def.json>

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
space_idYesThe space ID where user will be created (e.g., 'SALES', 'FINANCE'). Must be uppercase.
output_fileNoOptional: Path to save user credentials JSON (e.g., 'jeff.json'). RECOMMENDED for security - credentials shown only once!
user_definitionYesJSON object defining user permissions and settings. Must include 'consumption' and 'ingestion' sections.
database_user_idYesDatabase user name suffix (e.g., 'JEFF', 'ANALYST', 'ETL_USER'). Will be prefixed with space name.
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It explicitly flags the tool as HIGH-RISK, requires user consent, states that passwords are auto-generated and shown once, and includes security notes about retention and privilege principles. This goes beyond a typical create operation.

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 long but well-structured with headings, bullet lists, a JSON example, and a CLI mapping. The high-risk warning is front-loaded, and every section adds practical value for such a complex tool.

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

Completeness5/5

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

Given the complex nested parameters, absence of output schema, and high-risk nature, the description is remarkably complete. It covers return behavior ('password is auto-generated and returned'), parameter details, security warnings, usage examples, and even a CLI equivalent.

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

Parameters5/5

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

Schema coverage is 100%, but the description adds substantial meaning: it explains the nested user_definition structure in detail, clarifies that database_user_id is a suffix prefixed with space name, and recommends output_file for credential safety. This far exceeds the schema descriptions.

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

Purpose5/5

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

The description opens with a specific verb+resource: 'Create a new database user in a SAP Datasphere space with specified permissions.' It clearly distinguishes this from sibling tools like list_database_users, update_database_user, and delete_database_user by focusing on creation.

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

Usage Guidelines4/5

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

The description provides explicit 'Use this tool when' bullets and example queries, making the intended use clear. It does not include when-not-to-use or alternative tool recommendations, but the context is strong enough for selection.

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

Install Server

Other Tools

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/DimiDR/SAP-Datasphere-MCP'

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