calmcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | HTTP transport port. | |
| CALM_DEBUG | No | Set to 'true' for verbose tracing. | |
| CALM_REGION | No | Region (e.g. 'eu10') for OAuth2 mode. | |
| CALM_TENANT | No | Tenant subdomain for OAuth2 mode. | |
| CALM_API_KEY | No | Sandbox API key (required when CALM_SANDBOX is 'true'). | |
| CALM_SANDBOX | No | Set to 'true' to use the SAP Business Accelerator Hub sandbox with CALM_API_KEY. | |
| CALM_CLIENT_ID | No | OAuth2 client ID from the service binding. | |
| CALM_PUBLIC_URL | No | Public base URL used in OAuth metadata and the callback. | |
| CALM_CORS_ORIGINS | No | Allowed CORS origins for HTTP transport. | |
| CALM_HTTP_API_KEY | No | Shared secret for the alternative API-key authentication path. | |
| CALM_CLIENT_SECRET | No | OAuth2 client secret from the service binding. | |
| CALM_TIMEOUT_SECONDS | No | Request timeout in seconds. | |
| CALM_DESTINATION_NAME | No | Name of a bound BTP Destination (BTP mode; takes precedence over other auth modes). | |
| CALM_DCR_SIGNING_SECRET | No | Secret for HMAC-signing dynamic client registrations. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| calm_listA | List or query any SAP Cloud ALM collection (tasks, projects, features, documents, test cases, hierarchy nodes, cross-library objects, landscape objects, status events, code lists). Choose a "resource"; OData resources accept $filter/$select/$expand/$orderby/$top/$skip, REST resources accept contextual params. Defects: resource="tasks", task_type="CALMDEF". See calm_resources for the full catalog. |
| calm_getA | Fetch a single SAP Cloud ALM entity by id (a feature can also be fetched by display id like "6-123"). Choose a "resource" and pass its "id". See calm_resources for valid ones. |
| calm_analyticsA | Query an SAP Cloud ALM analytics provider (Defects, Tasks, Tests, Features, Projects, Metrics, ...). Supports $filter and $orderby — use this for sorted/aggregated questions such as "open defects ordered by priority". |
| calm_resourcesA | Discovery helper: lists every resource/provider the other tools accept, their required parameters, the task type/status/priority code lists, and worked recipes. Pass topic="recipes" for multi-step examples, or a resource/provider name to focus. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: calm_list queries collections, calm_get fetches a single entity, calm_analytics handles aggregated analytics, and calm_resources provides metadata and discovery. No overlap or ambiguity.
All tools start with the 'calm_' prefix, making them easily identifiable. The second part mixes verbs (list, get) and nouns (analytics, resources), but the pattern is predictable and readable.
With 4 tools, the server is well-scoped for its purpose. Each tool earns its place—covering collection queries, single entity retrieval, analytics, and resource discovery—without being too few or too many.
For a read-only query interface, the tool set is complete. It covers listing, fetching, analytics, and self-documentation (calm_resources). There are no obvious gaps given the stated domain.