# ringo380/claude-cpanel-mcp

Source: https://glimind.com/server/github%2Fringo380%2Fclaude-cpanel-mcp
Registry id: `github/ringo380/claude-cpanel-mcp`
Status: unknown

## Tools (74)

- `account_info`: Get this cPanel account's sidebar stats (disk, bandwidth, email count, etc.). Wraps Variables::get_user_information.
- `addon_domain_add`: Add an addon domain. Wraps AddonDomain::add_addon_domain.
- `addon_domain_list`: List addon domains. Wraps AddonDomain::list_addon_domains.
- `auth_delete_profile`: Delete a saved profile. Refuses to delete the active profile - switch first.
- `auth_list_profiles`: List all saved cPanel credential profiles with host/user/last-4-token, and which one is active.
- `auth_open_token_page`: Return the URL of the cPanel API token management page for a given host (or the
- `auth_rotate_token`: Atomically swap the API token for an existing profile. Re-uses the profile's
- `auth_status`: Report whether cpanel-mcp is configured and where credentials are loaded from
- `auth_switch_profile`: Switch the active cPanel profile. Reinstantiates the in-memory client immediately
- `auth_test`: Dry-run credential validation against cPanel UAPI without writing anything to disk.
- `backup_create_full`: Create a full backup written to the account home directory. Wraps Backup::fullbackup_to_homedir.
- `backup_list`: List available backups. Wraps Backup::list_backups.
- `cron_add`: Add a cron job. Wraps Cron::add_line. NOTE: shell metacharacters in `command` (e.g. $VAR, backticks, `~`) are passed verbatim to cron and interpolated by the sh
- `cron_list`: List cron jobs. Wraps Cron::list_lines.
- `cron_remove`: Remove a cron job by line number. Wraps Cron::remove_line.
- `dns_add_record`: Add a DNS record. Uses ZoneEdit::add_zone_record (works on most cPanels). For complex/batch edits use uapi_call with DNS::mass_edit_zone.
- `dns_edit_record`: Edit an existing DNS record by line number. Use dns_get_zone_records first to find the line. Wraps ZoneEdit::edit_zone_record.
- `dns_get_zone_records`: Get DNS records for a zone. Wraps DNS::parse_zone.
- `dns_list_zones`: List all DNS zones managed on this account. Wraps DomainInfo::list_domains for zone enumeration.
- `dns_remove_record`: Remove a DNS record by line number. Wraps ZoneEdit::remove_zone_record.
- `domains_list_all`: List main, parked, addon, and sub domains. Wraps DomainInfo::list_domains.
- `email_add_account`: Create a new email account. Wraps Email::add_pop.
- `email_add_autoresponder`: Add or update an autoresponder for an email address. Wraps Email::add_auto_responder.
- `email_add_forwarder`: Add a forwarder that sends mail for one address to another. Wraps Email::add_forwarder.
- `email_change_password`: Change an email account password. Wraps Email::passwd_pop.
- `email_delete_account`: Delete an email account. Wraps Email::delete_pop.
- `email_delete_autoresponder`: Delete an autoresponder. Wraps Email::delete_auto_responder.
- `email_delete_filter`: Delete a mail filter by name. Wraps Email::delete_filter.
- `email_delete_forwarder`: Delete an email forwarder. Wraps Email::delete_forwarder.
- `email_get_disk_usage`: Return disk usage for one mailbox. Wraps Email::get_disk_usage.
- `email_list_accounts`: List all email accounts on this cPanel account. Wraps Email::list_pops_with_disk.
- `email_list_autoresponders`: List autoresponders. Wraps Email::list_auto_responders.
- `email_list_filters`: List mail filters for an email account (or account-level if no email). Wraps Email::list_filters.
- `email_list_forwarders`: List email forwarders. Wraps Email::list_forwarders.
- `files_chmod`: Change permissions on files. Wraps API2 Fileman::fileop (op=chmod).
- `files_compress`: Compress files into an archive. Wraps API2 Fileman::fileop (op=compress). Supported types: zip, tar, tar.gz (gz), tar.bz2 (bz2).
- `files_copy`: Copy files. Wraps API2 Fileman::fileop (op=copy).
- `files_create_directory`: Create a directory. Wraps Fileman::mkdir.
- `files_delete`: Delete one or more files or directories. Wraps API2 Fileman::fileop (op=unlink).
- `files_disk_usage`: Get disk quota info for the account. Wraps Quota::get_quota_info.
- `files_extract`: Extract an archive. Wraps API2 Fileman::fileop (op=extract).
- `files_get_info`: Get stat info for a single file. Wraps Fileman::get_file_information.
- `files_list_dir`: List directory contents. Wraps Fileman::list_files.
- `files_move`: Move/rename files. Wraps API2 Fileman::fileop (op=move).
- `files_read_file`: Read a small text file. Wraps Fileman::get_file_content. Do not use for binaries; UAPI returns the raw content inline.
- `files_write_file`: Write text content to a file. Wraps Fileman::save_file_content (POST).
- `ftp_add`: Create an FTP account. Wraps Ftp::add_ftp. Note: cPanel scopes the username under the cPanel user (e.g. "uploader" becomes "uploader@<primary-domain>").
- `ftp_change_password`: Change an FTP account password. Wraps Ftp::passwd.
- `ftp_change_quota`: Change an FTP account quota. Wraps Ftp::set_quota.
- `ftp_delete`: Delete an FTP account. Wraps Ftp::delete_ftp.
- `ftp_list`: List FTP accounts. Wraps Ftp::list_ftp.
- `ftp_server_info`: Return FTP server-level info (port, SSL ports, etc.). Wraps Ftp::server_name + get_port.
- `list_functions`: List known functions for a UAPI module. Static catalog - not exhaustive. For any module/function not listed, use uapi_call directly.
- `list_modules`: List known cPanel UAPI modules with one-line descriptions. Static catalog - no network call. Use as a navigation aid before calling list_functions or uapi_call.
- `mysql_change_user_password`: Change a MySQL user's password. Wraps Mysql::set_password.
- `mysql_create_database`: Create a MySQL database. cPanel automatically prefixes the name with <cpanel_user>_. Wraps Mysql::create_database.
- `mysql_create_user`: Create a MySQL user. cPanel will prefix the name. Wraps Mysql::create_user.
- `mysql_delete_database`: Delete a MySQL database. DESTRUCTIVE - no undo. Pass the full name including the cPanel prefix. Wraps Mysql::delete_database.
- `mysql_delete_user`: Delete a MySQL user. Wraps Mysql::delete_user.
- `mysql_grant_privileges`: Grant privileges on a database to a user. Wraps Mysql::set_privileges_on_database.
- `mysql_list_databases`: List all MySQL databases. Wraps Mysql::list_databases.
- `mysql_list_users`: List all MySQL users. Wraps Mysql::list_users.
- `mysql_rename_database`: Rename a MySQL database. DISRUPTIVE - every application connecting by the old name breaks until reconfigured. Wraps Mysql::rename_database.
- `mysql_revoke_privileges`: Revoke all privileges from a user on a specific database. Wraps Mysql::revoke_access_to_database.
- `setup`: Interactive setup: validate and save cPanel credentials (host, username, API token).
- `ssl_autossl_run`: Trigger an AutoSSL check for this account. Wraps AutoSSL::start_autossl_check.
- `ssl_autossl_status`: Check whether an AutoSSL check is currently running, and list any problem domains. Wraps AutoSSL::is_autossl_check_in_progress + AutoSSL::get_autossl_problems.
- `ssl_install_cert`: Install an SSL certificate on a domain. Wraps SSL::install_ssl.
- `ssl_list_certs`: List installed SSL certificates. Wraps SSL::list_ssl_certs.
- `subdomain_add`: Create a subdomain. Wraps SubDomain::add_subdomain.
- `subdomain_list`: List subdomains. Wraps SubDomain::list_subdomains.
- `subdomain_remove`: Delete a subdomain. Wraps SubDomain::delete_subdomain.
- `uapi_call`: Universal cPanel UAPI escape hatch. Calls https://<host>:2083/execute/<module>/<function> with the given params and returns parsed JSON. Use this when no curate
- `whoami`: Return the configured cPanel host, port, user, and last-4 of the API token. No network call - for a live credential check call `auth_status`; for live account s

Measured by Glimind (https://glimind.com): MCP handshake + tool list only, no tool is ever called. CC BY 4.0.
