Skip to main content
Glama
delorenj

Super Windows CLI MCP Server

ssh_disconnect

Terminate SSH connections to remote servers when they are no longer required, helping manage system resources and security.

Instructions

Disconnect from an SSH server

Example usage:

{
  "connectionId": "raspberry-pi"
}

Use this to cleanly close SSH connections when they're no longer needed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
connectionIdYesID of the SSH connection to disconnect

Implementation Reference

  • Handler for the 'ssh_disconnect' tool. Validates SSH is enabled, parses the connectionId argument, calls SSHConnectionPool.closeConnection, and returns a success message.
    case "ssh_disconnect": {
      if (!this.config.ssh.enabled) {
        throw new McpError(
          ErrorCode.InvalidRequest,
          "SSH support is disabled in configuration"
        );
      }
    
      const args = z.object({
        connectionId: z.string()
      }).parse(request.params.arguments);
    
      await this.sshPool.closeConnection(args.connectionId);
      return {
        content: [{
          type: "text",
          text: `Disconnected from ${args.connectionId}`
        }]
      };
    }
  • src/index.ts:252-275 (registration)
    Registration of the 'ssh_disconnect' tool in the listTools response, including name, description, and input schema.
            {
              name: "ssh_disconnect",
              description: `Disconnect from an SSH server
    
    Example usage:
    \`\`\`json
    {
      "connectionId": "raspberry-pi"
    }
    \`\`\`
    
    Use this to cleanly close SSH connections when they're no longer needed.`,
              inputSchema: {
                type: "object",
                properties: {
                  connectionId: {
                    type: "string",
                    description: "ID of the SSH connection to disconnect",
                    enum: Object.keys(this.config.ssh.connections)
                  }
                },
                required: ["connectionId"]
              }
            }
  • SSHConnectionPool.closeConnection method: retrieves the connection by ID, calls disconnect() on it, and removes it from the pool.
    async closeConnection(connectionId: string): Promise<void> {
      const connection = this.connections.get(connectionId);
      if (connection) {
        connection.disconnect();
        this.connections.delete(connectionId);
      }
    }
  • SSHConnection.disconnect method: clears reconnect timer and ends the SSH client connection if connected.
    disconnect(): void {
      if (this.reconnectTimer) {
        clearTimeout(this.reconnectTimer);
        this.reconnectTimer = null;
      }
      
      if (this.isConnected) {
        this.client.end();
        this.isConnected = false;
      }
    }

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/delorenj/super-win-cli-mcp-server'

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