get_certificate
Retrieve certificate details by ID from Octopus Deploy to inspect configuration and troubleshoot deployment issues.
Instructions
Get details for a specific certificate by its ID
This tool retrieves detailed information about a specific certificate using its ID. The space name and certificate ID are both required.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| spaceName | Yes | ||
| certificateId | Yes | The ID of the certificate to retrieve |
Implementation Reference
- src/tools/getCertificate.ts:22-46 (handler)The handler function that executes the tool logic: creates an Octopus Deploy client from environment config, resolves the space ID, fetches the certificate resource by ID, maps it to a custom type, and returns it as JSON text content.async ({ spaceName, certificateId }) => { const configuration = getClientConfigurationFromEnvironment(); const client = await Client.create(configuration); const spaceId = await resolveSpaceId(client, spaceName); const response = await client.get<CertificateResource>( "~/api/{spaceId}/certificates/{id}", { spaceId, id: certificateId, } ); const certificate = mapCertificateResource(response); return { content: [ { type: "text", text: JSON.stringify(certificate), }, ], }; } );
- src/tools/getCertificate.ts:14-17 (schema)Input schema using Zod: requires spaceName (string) and certificateId (string).{ spaceName: z.string(), certificateId: z.string().describe("The ID of the certificate to retrieve"), },
- src/tools/getCertificate.ts:8-47 (registration)Main registration function that calls server.tool() to register the 'get_certificate' tool on the MCP server, including description, input schema, output metadata, and handler.export function registerGetCertificateTool(server: McpServer) { server.tool( "get_certificate", `Get details for a specific certificate by its ID This tool retrieves detailed information about a specific certificate using its ID. The space name and certificate ID are both required.`, { spaceName: z.string(), certificateId: z.string().describe("The ID of the certificate to retrieve"), }, { title: "Get a specific certificate by ID from an Octopus Deploy space", readOnlyHint: true, }, async ({ spaceName, certificateId }) => { const configuration = getClientConfigurationFromEnvironment(); const client = await Client.create(configuration); const spaceId = await resolveSpaceId(client, spaceName); const response = await client.get<CertificateResource>( "~/api/{spaceId}/certificates/{id}", { spaceId, id: certificateId, } ); const certificate = mapCertificateResource(response); return { content: [ { type: "text", text: JSON.stringify(certificate), }, ], }; } ); }
- src/tools/getCertificate.ts:49-53 (registration)Self-registration of the tool definition into the TOOL_REGISTRY, specifying toolset 'certificates' and read-only, for conditional registration in src/tools/index.ts.registerToolDefinition({ toolName: "get_certificate", config: { toolset: "certificates", readOnly: true }, registerFn: registerGetCertificateTool, });