Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ALLOW_WRITENoSet to 'true' to enable write/destructive toolsfalse
CPI_BASE_URLYesBase URL of the CPI OData API, e.g., https://your-tenant.it-cpiXXX.cfapps.eu10.hana.ondemand.com/api/v1
CPI_CLIENT_IDYesClient ID from the service key
CPI_TOKEN_URLYesOAuth token URL, e.g., https://your-subdomain.authentication.eu10.hana.ondemand.com/oauth/token
MCP_AUTH_TOKENNoStatic bearer token for securing the HTTP endpoint (optional for stdio)
CPI_CLIENT_SECRETYesClient secret from the service key

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_message_processing_logsA

Search SAP CPI Message Processing Logs. Filter by status (COMPLETED, FAILED, PROCESSING, RETRY, ESCALATED, DISCARDED), integration flow name, and time window. Most recent first.

get_mpl_detailsA

Get the full Message Processing Log entry for a specific MessageGuid.

get_mpl_error_informationB

Retrieve the detailed error/exception text for a failed message.

get_mpl_custom_header_propertiesB

Get custom header properties (business keys, custom status) for a message.

get_mpl_run_stepsA

Get the individual run steps for a message (requires trace/step logging enabled on the flow).

get_message_store_entriesB

Get persisted message store entries (payloads persisted via the 'Persist' step) for a message.

get_failure_summaryB

Aggregate failed/escalated messages over a recent window, grouped by integration flow.

cancel_message_processing_logA

Cancel a currently processing/retrying message (e.g. a stuck JMS or scheduled message). Requires ALLOW_WRITE and confirm=true.

list_integration_packagesB

List all integration packages in the tenant's design workspace.

get_integration_packageA

Get details of a single integration package by Id.

create_integration_packageB

Create a new integration package. Requires ALLOW_WRITE.

delete_integration_packageA

Delete an integration package and all its artifacts. Requires ALLOW_WRITE and confirm=true.

copy_integration_packageA

Copy a standard/partner package (e.g. from the Discover catalog) into the design workspace. Requires ALLOW_WRITE.

list_integration_flowsA

List the integration flow design-time artifacts in a package.

get_integration_flowB

Get a design-time integration flow artifact by Id and Version.

download_integration_flowB

Download the integration flow content as a base64-encoded zip ($value). Useful for backup/transport.

get_flow_configurationsC

Get the externalized configuration parameters of an integration flow (endpoints, credentials names, etc.).

update_flow_configurationA

Update a single externalized configuration parameter of an integration flow. Requires ALLOW_WRITE.

get_flow_resourcesB

List the resources (scripts, XSDs, WSDLs, mappings) inside an integration flow.

create_integration_flowA

Create a new (empty) integration flow in a package — a default flow at version 1.0.0 that you then edit in the Integration Suite web editor. Requires ALLOW_WRITE.

save_integration_flow_as_versionA

Save the current draft ('active') of an integration flow as a new version, with an optional version comment. Requires ALLOW_WRITE. (The comment is applied to the artifact before the version is saved, since the SaveAsVersion API doesn't take one directly.)

list_deployed_artifactsB

List all deployed runtime artifacts and their status (STARTED, ERROR, STARTING, etc.).

get_deployed_artifact_statusB

Get the deployment status of one runtime artifact, plus error details if failed.

deploy_artifactA

Deploy a design-time artifact to the runtime. Choose the artifact type. Requires ALLOW_WRITE. Deployment is asynchronous — check status with get_deployed_artifact_status or get_build_and_deploy_status.

undeploy_artifactA

Undeploy (remove from runtime) a deployed artifact. Stops it processing messages. Requires ALLOW_WRITE and confirm=true.

get_build_and_deploy_statusA

Check the asynchronous build/deploy task status for a deployment (returned as a task id).

list_service_endpointsA

List the runtime service endpoints (URLs) exposed by deployed integration flows (HTTP, SOAP, OData, etc.).

list_user_credentialsA

List deployed User Credential security artifacts (names/metadata only, no secrets).

deploy_user_credentialA

Create/deploy a User Credential security artifact. Requires ALLOW_WRITE. The secret is write-only and cannot be read back.

list_oauth2_client_credentialsA

List deployed OAuth2 Client Credential security artifacts (metadata only).

list_keystore_entriesB

List entries (certificates / key pairs) in the tenant keystore.

list_number_rangesA

List configured number range objects.

create_number_rangeC

Create a number range object. Requires ALLOW_WRITE.

list_data_storesA

List data stores (transient/persistent message persistence used by flows).

get_data_store_entriesA

List the entries in a specific data store. IntegrationFlow is the flow Id (empty for a global store).

list_variablesB

List global and local variables persisted by integration flows.

list_jms_queuesA

List JMS queues and their state (capacity, message counts).

list_partnersC

List partners registered in the Partner Directory.

list_log_filesA

List available system log files (http, trace, etc.) for the tenant worker nodes.

cpi_api_catalogA

List every OData entity set and function import this CPI tenant exposes. Use this to discover what cpi_query / cpi_get_entity / cpi_invoke_function / cpi_write can target.

cpi_queryA

Run a read query against ANY CPI OData entity set with standard OData options. Example: entitySet='MessageProcessingLogs', filter="Status eq 'FAILED'", orderby='LogEnd desc'.

cpi_get_entityA

Get a single entity by key. Use 'key' for a single-key entity (e.g. package Id), or 'keys' (object) for composite keys (e.g. {Id:'x',Version:'active'}). Optionally fetch a navigation property.

cpi_invoke_functionA

Invoke any OData function import (see cpi_api_catalog). String parameters are auto-quoted. Requires ALLOW_WRITE (most function imports change tenant state).

cpi_writeA

Low-level create/update/delete against any CPI OData path. Requires ALLOW_WRITE. DELETE requires confirm=true. Provide 'path' relative to /api/v1 (e.g. "/IntegrationPackages('X')").

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 44 tools

Disambiguation4/5

Tools have clear descriptions and distinct purposes, but the large number (44) and multiple tools for similar resources (e.g., 6 for message processing logs) create some potential for confusion. Overall, descriptions help differentiate.

Naming Consistency4/5

Most tools follow a consistent verb_noun pattern (e.g., create_integration_package, search_message_processing_logs). However, a few use a 'cpi_' prefix as a domain marker (cpi_api_catalog, cpi_get_entity), deviating slightly from the pattern.

Tool Count2/5

With 44 tools, the set exceeds the 'too many' threshold (25+). While SAP CPI is a broad domain, this many tools may overwhelm agents and increase selection errors.

Completeness4/5

The tool surface extensively covers integration package/flow lifecycle, deployments, monitoring, security, and configuration. Minor gaps exist (e.g., no explicit tool for managing routing rules or alerts), but core workflows are well-supported.

Maintenance

ActivityMaintained
ResponsivenessNo issues