deployctl
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| deploy_projectA | Deploy project files to a remote server using credentials securely loaded from macOS Keychain / Linux SecretService / Vault. Never requires or exposes passwords. Returns a JSON report: status, git branch/commit, warnings, added/modified/deleted files and any failed uploads or deletes. |
| list_projectsA | List all configured projects, target environments, protocols, and credential status. |
| test_connectionA | Test connectivity to a remote server target using stored credentials without deploying. |
| show_projectA | Inspect project deployment configuration. All passwords remain strictly protected. |
| browse_remote_directoriesA | Inspect and browse actual remote directories and files on the hosting server. Use this to explore what folders exist on the server before picking a remote deployment destination. |
| download_remote_fileA | Download one file (e.g. storage/logs/laravel.log) from the remote server using Keychain credentials. The file is saved under ~/.deployctl/downloads/// (the response gives local_path, readable with a file tool) and the last lines are returned inline with secrets redacted. Refuses directories and files over max_bytes. |
| set_target_optionA | Change one safety/behaviour option of an existing deployment target in projects.yaml. Options: delete_missing (owned = default, only delete files deployctl itself deployed; all; none), allowed_branches (list of branch names), require_clean (bool), insecure_tls (bool), post_deploy_delete (list of file patterns), app_url (string), zip_deploy (bool). |
| set_remote_pathA | Configure the remote deployment destination directory (remote_path) for a project and environment in projects.yaml. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Most tools have clearly distinct actions: list/show projects, deploy, test connectivity, browse remote directories, download a remote file, and modify target configuration. There is mild overlap between list_projects and show_project, and between browse_remote_directories and download_remote_file when inspecting remote files, but descriptions largely clarify the boundaries.
All tool names use a consistent snake_case verb_noun pattern: list_projects, deploy_project, test_connection, show_project, browse_remote_directories, download_remote_file, set_target_option, set_remote_path. The convention is predictable throughout.
Eight tools is well within the appropriate range for a deployment management server. Each tool covers a distinct operational need such as listing, inspecting, testing, deploying, remote browsing, downloading, and target configuration.
The core deployment workflow is covered: inspect projects, test connectivity, browse remote paths, deploy, download remote files, and update target options/paths. However, notable lifecycle operations are missing, such as creating/removing projects or targets, listing deployment history, and rollback, which may force agents to work around the tool surface or fail on onboarding/recovery tasks.