mc8yp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| codemodeA | Read first. Every result starts with a marker line: either A method visible in discovery may still return 404 when the service is not actually installed on the current tenant. Run an async JavaScript function against the Cumulocity API. Discovery, documentation, and typed API calls all happen inside one function — find what you need and call it in the same run. The expensive mistake is a hasty API call: an unparameterized request returns large payloads that flood your context. Do NOT rely on prior knowledge of these APIs and do not assume anything: the available namespaces and their capabilities are tenant-specific and discovered at runtime. What you think you know about an API may be outdated or may be outclassed by a service on this tenant you have never seen. Verify through search, describe, and docs. Available globals (do NOT declare these as function parameters): Workflow — ALWAYS in this order: describe() → search → describe(shortlist) → call.
Discovery and API calls can be combined in a single run. Methods blocked by the connection access policy are omitted from discovery entirely; a blocked live request fails with an explanatory message — that is a connection-level access restriction, not a Cumulocity API failure, and retrying will not help. Your code must evaluate to an async function. Return the final value you want; on success it is returned in Toon format. Examples: |
| statusA | Show the current CLI status: stored tenant credentials, which tenant the codemode tool will hit, and the API namespaces visible right now. If no tenant is active, codemode discovery falls back to all bundled OpenAPI snapshots and live API calls are unavailable — set-active-tenant must be called first. This tool also self-heals: if the active tenant has lost its stored credentials it is automatically reset before the status is reported. Pass |
| set-active-tenantA | Set the Cumulocity tenant for this CLI session, or pass tenantUrl: null to clear the active tenant. The tenantUrl must match one returned by the status tool. The selection is persisted across sessions so you only need to call this once (or when switching tenants). Clearing falls back to bundled-only browsing — codemode discovery still works but live API calls are unavailable until a tenant is set again. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| code-mode-guide | Guide for the codemode tool: discovery, documentation search, and typed API calls in one sandboxed function. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: codemode executes async JavaScript with API discovery, status reports the active tenant and CLI state, and set-active-tenant manages the session tenant. There is no functional overlap between them.
Tool names follow no consistent convention: 'codemode' is a single lowercase noun, 'status' is a noun, and 'set-active-tenant' is a hyphenated verb phrase. The mixed styles and lack of a predictable pattern make naming feel ad hoc.
Three tools is well-scoped for a CLI session manager: one core execution tool, one status/health tool, and one configuration tool. Each earns its place without bloat.
The tool surface fully covers the session lifecycle: setting and clearing the active tenant, checking status and refreshing discovery, and executing against the API. No obvious gaps remain for the stated purpose.