Skip to main content
Glama
johsem

Semaphore UI MCP server

by johsem

create_secret_storage

Destructive

Creates a secret storage in a Semaphore UI project by submitting the required API fields, keeping JSON-encoded string fields as strings.

Instructions

Add. POST /project/{project_id}/secret_storages. Supply API fields in body; JSON-encoded string fields must remain strings.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYes
project_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.2/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is largely covered. The description adds no real behavioral context: it doesn't say how the secret is stored/validated, what happens on duplicate names, or that a secret credential is being persisted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences plus an endpoint, so it is compact and front-loaded. But "Add." is a wasted fragment and the brevity comes at the cost of under-specification rather than information density.

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

Completeness2/5

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

For a destructive create tool with a complex nested body, zero schema coverage, and no output schema, the description leaves an agent unable to construct a correct body without the raw schema. It should at minimum outline the required body fields and the type enum.

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

Parameters2/5

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

Schema description coverage is 0% on a nested body with ~10 properties (type enum, params, secret, sync_paths, sync_interval), so the description is responsible for compensation. It offers only "supply API fields in body" and a note that JSON-encoded strings stay strings – no field meanings, no required-field guidance, no enum context.

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

Purpose3/5

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

The description opens with the vague verb "Add" and never names the resource in prose; the resource is only inferable from the endpoint path `/project/{project_id}/secret_storages`. The tool name carries most of the meaning, and nothing distinguishes this from update_secret_storage or create_integration.

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

Usage Guidelines1/5

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

No when-to-use context, no prerequisites, no mention of the sibling update_secret_storage/delete_secret_storage alternatives. The only instruction is a formatting note about the body, which is not usage guidance.

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

Deploy Server

Other Tools