Skip to main content
Glama

create_private_key

Add an SSH private key to Coolify for secure server authentication or Git repository access by providing a unique name and valid PEM key content.

Instructions

Create a new SSH private key in Coolify for server authentication or Git repository access.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
descriptionNoOptional description of the key's purpose or usage
nameYesA unique, human-readable name for the private key
private_keyYesThe SSH private key content in PEM format. Must be a valid SSH private key.

Implementation Reference

  • Handler for the 'create_private_key' tool that proxies a POST request to Coolify API /security/keys endpoint with arguments and returns formatted response.
    case 'create_private_key': const createPrivateKeyResponse = await this.axiosInstance.post('/security/keys', request.params.arguments); return { content: [{ type: 'text', text: JSON.stringify(createPrivateKeyResponse.data, null, 2) }] };
  • Input schema for create_private_key tool defining required parameters: name and private_key (PEM format), optional description.
    inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'A unique, human-readable name for the private key', examples: ['production-server-key', 'github-deploy-key'] }, description: { type: 'string', description: 'Optional description of the key\'s purpose or usage', examples: ['SSH key for production server access', 'Deploy key for GitHub repositories'] }, private_key: { type: 'string', description: 'The SSH private key content in PEM format. Must be a valid SSH private key.', examples: ['-----BEGIN RSA PRIVATE KEY-----\n...key content...\n-----END RSA PRIVATE KEY-----'] } }, required: ['name', 'private_key'], examples: [ { name: 'production-server-key', description: 'SSH key for production server access', private_key: '-----BEGIN RSA PRIVATE KEY-----\n...key content...\n-----END RSA PRIVATE KEY-----' } ], additionalInfo: { workflow: [ '1. Generate an SSH key pair on your local machine', '2. Store the private key in Coolify using this tool', '3. Use the public key on your servers or Git repositories', '4. Use the private key UUID when creating servers or applications' ], relatedTools: [ 'create_server - Create servers using this private key', 'create_application - Create applications that need Git repository access' ], notes: [ 'Private keys should be properly formatted and include headers', 'Never share private keys or commit them to version control', 'The private key will be encrypted before storage', 'You can use the same key for multiple servers if desired' ] } }
  • src/index.ts:1148-1197 (registration)
    Registration of the create_private_key tool in the tools list for ListToolsRequestSchema, including name, description, inputSchema, and additionalInfo.
    { name: 'create_private_key', description: 'Create a new SSH private key in Coolify for server authentication or Git repository access.', inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'A unique, human-readable name for the private key', examples: ['production-server-key', 'github-deploy-key'] }, description: { type: 'string', description: 'Optional description of the key\'s purpose or usage', examples: ['SSH key for production server access', 'Deploy key for GitHub repositories'] }, private_key: { type: 'string', description: 'The SSH private key content in PEM format. Must be a valid SSH private key.', examples: ['-----BEGIN RSA PRIVATE KEY-----\n...key content...\n-----END RSA PRIVATE KEY-----'] } }, required: ['name', 'private_key'], examples: [ { name: 'production-server-key', description: 'SSH key for production server access', private_key: '-----BEGIN RSA PRIVATE KEY-----\n...key content...\n-----END RSA PRIVATE KEY-----' } ], additionalInfo: { workflow: [ '1. Generate an SSH key pair on your local machine', '2. Store the private key in Coolify using this tool', '3. Use the public key on your servers or Git repositories', '4. Use the private key UUID when creating servers or applications' ], relatedTools: [ 'create_server - Create servers using this private key', 'create_application - Create applications that need Git repository access' ], notes: [ 'Private keys should be properly formatted and include headers', 'Never share private keys or commit them to version control', 'The private key will be encrypted before storage', 'You can use the same key for multiple servers if desired' ] } } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wrediam/coolify-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server