Skip to main content
Glama

ack_create_controller_credential

Create an unsigned W3C Verifiable Credential proving a controller DID's authority over a subject DID. Output is ready for signing via ack_sign_credential to produce a JWT.

Instructions

Create an unsigned W3C Verifiable Credential proving that a subject DID (e.g. an agent) is controlled by a controller DID (e.g. the owner). Pass the JSON output to ack_sign_credential to get a signed JWT.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
issuerDidNoDID of the issuer. Defaults to the controller.
subjectDidYesDID of the agent or entity being controlled
controllerDidYesDID of the owner or entity with authority

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are present, so the description carries the disclosure burden. It clearly states that the operation only creates an unsigned credential and that signing is a separate follow-up step, which clarifies there are no signing or verification side effects. It does not mention potential DID validation behavior, but this is a minor gap for a stateless object-creation tool.

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?

Two sentences, no filler, and the key purpose and follow-up instruction are both front-loaded. Every sentence contributes value.

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

Completeness4/5

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

For a simple 3-parameter creation tool with no output schema, the description provides enough context: what it creates, the relationship semantics, the output form (JSON), and the next step. The lack of an explicit return-schema description is acceptable because the credential format is standardized and the follow-up signing tool is named.

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

Parameters3/5

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

The input schema has 100% coverage, so each parameter is already described. The tool description adds helpful real-world role examples (agent vs. owner), but it does not materially extend the schema's parameter definitions. Baseline 3 is appropriate.

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 clearly identifies the action ('Create'), the resource (an unsigned W3C Verifiable Credential), and the specific purpose (proving a subject DID is controlled by a controller DID). It also distinguishes this from signing and verification siblings by explicitly noting the credential is unsigned.

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 workflow guidance by telling the agent to pass the output to ack_sign_credential to obtain a signed JWT. It does not explicitly contrast this with alternatives like ack_create_jwt, but the intended usage context is clear.

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