Linode API MCP server
Linodes, volumes, NodeBalancers, LKE, databases and DNS on Akamai cloud.
The Linode API v4 compiled from its OpenAPI description: Linode instances, images, volumes, NodeBalancers, Kubernetes (LKE), managed databases, object storage keys, domains and DNS, firewalls, VPCs and account billing.
Why use the hosted one: Every endpoint of Akamai's API behind the gateway's search, with your own Linode personal access token stored encrypted and sent only to Akamai.
Needs your Linode personal access token: add it once in the dashboard (get one at Akamai). It is stored encrypted and sent only to that API.
Connect
claude mcp add --transport http hj-linode-api https://mcp.hjlabs.in/mcp/linode-api \
--header "Authorization: Bearer YOUR_API_KEY"Create an API key and put it in place of YOUR_API_KEY. Step-by-step guides: claude.ai and ChatGPT connectors, Claude Code, Cursor, VS Code, Claude Desktop, Windsurf, Zed, OpenAI Codex CLI, Gemini CLI.
All 439 tools
Get 197 tools
- Get your account
get_account - List agreements
get_account_agreements - List available services
get_availability - Get available services for a region
get_account_availability - List enrolled Beta programs
get_enrolled_beta_programs - Get an enrolled Beta program
get_enrolled_beta_program - List child accounts
get_child_accounts - Get a child account
get_child_account - List events
get_events - Get an event
get_event - List invoices
get_invoices - Get an invoice
get_invoice - List invoice items
get_invoice_items - List user logins
get_account_logins - Get an account login
get_account_login - List maintenances
get_maintenance - List notifications
get_notifications - List OAuth clients
get_clients - Get an OAuth client
get_client - Get the OAuth client's thumbnail
get_client_thumbnail - List payment methods
get_payment_methods - Get a payment method
get_payment_method - List payments
get_payments - Get a payment
get_payment - List service transfers
get_service_transfers - Get a service transfer request
get_service_transfer - Get account settings
get_account_settings - Get network usage
get_transfer - List users
get_users - Get a user
get_user - List a user's grants
get_user_grants - List Beta programs
get_beta_programs - Get a Beta program
get_beta_program - List Managed Databases engines
get_databases_engines - Get a Managed Databases engine
get_databases_engine - List Managed Databases
get_databases_instances - List MySQL Managed Database advanced parameters
get_databases_mysql_config - List MySQL Managed Databases
get_databases_mysql_instances - Get a MySQL Managed Database
get_databases_mysql_instance - Get MySQL Managed Database credentials
get_databases_mysql_instance_credentials - Get a MySQL Managed Database SSL certificate
get_databases_mysql_instance_ssl - List PostgreSQL Managed Database advanced parameters
get_databases_postgresql_config - List PostgreSQL Managed Databases
get_databases_postgre_sql_instances - Get a PostgreSQL Managed Database
get_databases_postgre_sql_instance - Get PostgreSQL Managed Database credentials
get_databases_postgre_sql_instance_credentials - Get a PostgreSQL Managed Database SSL certificate
get_databases_postgresql_instance_ssl - List Managed Databases types
get_databases_types - Get a Managed Databases type
get_databases_type - List domains
get_domains - Get a domain
get_domain - List domain records
get_domain_records - Get a domain record
get_domain_record - Get a domain zone file
get_domain_zone - List images
get_images - List share groups
get_sharegroups - List a user's tokens
get_user_tokens - Get a token
get_sharegroup_token - Get a token's share group
get_sharegroup_by_token - List images by token
get_sharegroup_images_by_token - Get a share group
get_sharegroup - List shared images by group
get_sharegroup_images - List members by share group
get_sharegroup_members - Get a membership token
get_sharegroup_member_token - Get an image
get_image - List share groups by image
get_images_sharegroups_image - List Linodes
get_linode_instances - Get a Linode
get_linode_instance - List backups
get_backups - Get a backup
get_backup - List configuration profiles
get_linode_configs - Get a configuration profile
get_linode_config - List configuration profile interfaces
get_linode_config_interfaces - Get a configuration profile interface
get_linode_config_interface - List disks
get_linode_disks - Get a disk
get_linode_disk - List a Linode's firewalls
get_linode_firewalls - List Linode interfaces
get_linode_interfaces - List a Linode's network interface history
get_linode_interface_history - List Linode interface settings
get_linode_interface_settings - Get a Linode interface
get_linode_interface - List Linode interface firewalls
get_linode_interface_firewalls - Get networking information
get_linode_ips - Get a Linode's IP address
get_linode_ip - List Linode NodeBalancers
get_linode_node_balancers - Get daily Linode statistics
get_linode_stats - Get a month's Linode statistics
get_linode_stats_by_year_month - Get this month's network transfer stats
get_linode_transfer - Get monthly network transfer stats
get_linode_transfer_by_year_month - List a Linode's volumes
get_linode_volumes - List kernels
get_kernels - Get a kernel
get_kernel - List StackScripts
get_stack_scripts - Get a StackScript
get_stack_script - List types
get_linode_types - Get a type
get_linode_type - List Kubernetes clusters
get_lke_clusters - Get a Kubernetes cluster
get_lke_cluster - List Kubernetes API endpoints
get_lke_cluster_api_endpoints - Get the control plane access control list
get_lke_cluster_acl - Get a Kubernetes cluster dashboard URL
get_lke_cluster_dashboard - Get a Kubeconfig
get_lke_cluster_kubeconfig - Get a node
get_lke_cluster_node - List node pools
get_lke_cluster_pools - Get a node pool
get_lke_node_pool - List LKE Kubernetes versions (any tier)
get_lke_tiers_versions - Get an LKE Kubernetes version (any tier)
get_lke_tiers_version - List Kubernetes types
get_lke_types - List LKE Kubernetes versions (non-enterprise)
get_lke_versions - Get an LKE Kubernetes version (non-enterprise)
get_lke_version - List Longview clients
get_longview_clients - Get a Longview client
get_longview_client - Get a Longview plan
get_longview_plan - List Longview subscriptions
get_longview_subscriptions - Get a Longview subscription
get_longview_subscription - List Longview types
get_longview_types - List maintenance policies
get_maintenance_policies - List managed contacts
get_managed_contacts - Get a managed contact
get_managed_contact - List managed credentials
get_managed_credentials - Get a managed SSH key
get_managed_ssh_key - Get a managed credential
get_managed_credential - List managed issues
get_managed_issues - Get a managed issue
get_managed_issue - List managed Linode settings
get_managed_linode_settings - Get a Linode's managed settings
get_managed_linode_setting - List managed services
get_managed_services - Get a managed service monitor
get_managed_service - List managed stats
get_managed_stats - List alert channels
get_alert_channels - List alert definitions
get_alert_definitions - List dashboards
get_dashboards_all - Get a dashboard
get_dashboards_by_id - List supported service types
get_monitor_services - Get details for a supported service type
get_monitor_services_for_service_type - List alert definitions for a service type
get_alert_definitions_for_service_type - Get an alert definition
get_alert_definition - List dashboards for a service type
get_dashboards - List metrics for a service type
get_monitor_information - List network transfer prices
get_network_transfer_prices - List firewalls
get_firewalls - List default firewalls
get_firewall_settings - List firewall templates
get_firewall_templates - Get a firewall template
get_firewall_template - Get a firewall
get_firewall - List firewall devices
get_firewall_devices - Get a firewall device
get_firewall_device - List firewall rule versions
get_firewall_rule_versions - Get a firewall rule version
get_firewall_rule_version - List firewall rules
get_firewall_rules - List IP addresses
get_ips - Get an IP address
get_ip - List IPv6 pools
get_ipv6_pools - List IPv6 ranges
get_ipv6_ranges - Get an IPv6 range
get_ipv6_range - List VLANs
get_vlans - List NodeBalancers
get_node_balancers - List NodeBalancer types
get_node_balancer_types - Get a NodeBalancer
get_node_balancer - List configs
get_node_balancer_configs - Get a config
get_node_balancer_config - List nodes
get_node_balancer_config_nodes - Get a NodeBalancer's node
get_node_balancer_node - List NodeBalancer firewalls
get_node_balancer_firewalls - Get NodeBalancer statistics
get_node_balancer_stats - List VPC configurations
get_node_balancer_vpcs - Get a VPC configuration
get_node_balancer_vpc_config - List Object Storage buckets
get_object_storage_buckets - List Object Storage buckets per region
get_object_storage_bucketin_cluster - Get an Object Storage bucket
get_object_storage_bucket - Get Object Storage bucket access
get_object_storage_bucket_access - Get an Object Storage object ACL configuration
get_object_storage_bucket_acl - List Object Storage bucket contents
get_object_storage_bucket_content - Get an Object Storage TLS/SSL certificate
get_object_storage_ssl - List Object Storage endpoints
get_object_storage_endpoints - List Object Storage access keys
get_object_storage_keys - Get an Object Storage access key
get_object_storage_key - List Object Storage quotas
get_object_storage_quotas - Get an Object Storage quota
get_object_storage_quota - Get Object Storage quota usage data
get_object_storage_quota_usage - Get Object Storage transfer data
get_object_storage_transfer - List Object Storage types
get_object_storage_types - List placement groups
get_placement_groups - Get a placement group
get_placement_group - Get a profile
get_profile - List authorized apps
get_profile_apps - Get an authorized app
get_profile_app - List trusted devices
get_devices - Get a trusted device
get_trusted_device - List grants
get_profile_grants - List logins
get_profile_logins - Get a profile's login
get_profile_login - Get user preferences
get_user_preferences - List security questions
get_security_questions - List SSH keys
get_ssh_keys - Get an SSH key
get_ssh_key - List personal access tokens
get_personal_access_tokens - Get a personal access token
get_personal_access_token
Post 105 tools
- Acknowledge agreements
post_account_agreements - Enroll in a Beta program
post_beta_program - Delete your account
post_cancel_account - Create a proxy user token
post_child_account_token - Mark an event as seen
post_event_seen - Create an OAuth client
post_client - Reset an OAuth client secret
post_reset_client_secret - Add a payment method
post_payment_method - Set a default payment method
post_make_payment_method_default - Make a payment
post_payment - Add a promo credit
post_promo_credit - Request a service transfer
post_service_transfer - Accept a service transfer
post_accept_service_transfer - Enable Linode Managed
post_enable_account_managed - Create a user
post_user - Create or restore a MySQL Managed Database
post_databases_mysql_instances - Reset MySQL Managed Database credentials
post_databases_mysql_instance_credentials_reset - Patch a MySQL Managed Database
post_databases_mysql_instance_patch - Create or restore a PostgreSQL Managed Database
post_databases_postgre_sql_instances - Reset PostgreSQL Managed Database credentials
post_databases_postgre_sql_instance_credentials_reset - Patch a PostgreSQL Managed Database
post_databases_postgre_sql_instance_patch - Create a domain
post_domain - Import a domain
post_import_domain - Clone a domain
post_clone_domain - Create a domain record
post_domain_record - Create an image
post_image - Create a share group
post_sharegroups - Create a token
post_sharegroup_tokens - Add images to a share group
post_sharegroup_images - Add members to a share group
post_sharegroup_members - Upload an image
post_upload_image - Replicate an image
post_replicate_image - Create a Linode
post_linode_instance - Create a snapshot
post_snapshot - Cancel backups
post_cancel_backups - Enable backups
post_enable_backups - Restore a backup
post_restore_backup - Boot a Linode
post_boot_linode_instance - Clone a Linode
post_clone_linode_instance - Create a configuration profile
post_add_linode_config - Add a configuration profile interface
post_linode_config_interface - Reorder configuration profile interfaces
post_linode_config_interfaces - Create a disk
post_add_linode_disk - Clone a disk
post_clone_linode_disk - Reset a disk root password
post_reset_disk_password - Resize a disk
post_resize_disk - Apply a Linode's firewalls
post_apply_firewalls - Add a Linode interface
post_linode_interface - Allocate an IPv4 address
post_add_linode_ip - Launch a DC migration/pending host migration
post_migrate_linode_instance - Upgrade a Linode
post_mutate_linode_instance - Reset a Linode's root password
post_reset_linode_password - Reboot a Linode
post_reboot_linode_instance - Rebuild a Linode
post_rebuild_linode_instance - Boot a Linode into rescue mode
post_rescue_linode_instance - Resize a Linode
post_resize_linode_instance - Shut down a Linode
post_shutdown_linode_instance - Upgrade to Linode interfaces
post_upgrade_linode_interfaces - Create a StackScript
post_add_stack_script - Create a Kubernetes cluster
post_lke_cluster - Recycle a node
post_lke_cluster_node_recycle - Create a node pool
post_lke_cluster_pools - Recycle a node pool
post_lke_cluster_pool_recycle - Recycle cluster nodes
post_lke_cluster_recycle - Regenerate a Kubernetes cluster
post_lke_cluster_regenerate - Create a Longview client
post_longview_client - Create a managed contact
post_managed_contact - Create a managed credential
post_managed_credential - Delete a managed credential
post_managed_credential_revoke - Update a managed credential's username and password
post_managed_credential_username_password - Create a managed service
post_managed_service - Disable a managed service monitor
post_disable_managed_service - Enable a managed service monitor
post_enable_managed_service - Create an alert definition
post_alert_definition_for_service_type - Get an entity's metrics
post_read_metric - Create a token for a service type
post_get_token - Create a firewall
post_firewalls - Create a firewall device
post_firewall_device - Allocate an IP address
post_allocate_ip - Assign IP addresses
post_assign_ips - Share IP addresses
post_share_ips - Assign IPv4s to Linodes
post_assign_ipv4s - Configure IPv4 sharing
post_share_ipv4s - Create an IPv6 range
post_ipv6_range - Create a NodeBalancer
post_node_balancer - Create a config
post_node_balancer_config - Create a node
post_node_balancer_node - Rebuild a config
post_rebuild_node_balancer_config - Create an Object Storage bucket
post_object_storage_bucket - Allow access to an Object Storage bucket
post_object_storage_bucket_access - Create a URL for an object
post_object_storage_object_url - Upload an Object Storage TLS/SSL certificate
post_object_storage_ssl - Cancel Object Storage
post_cancel_object_storage - Create an Object Storage access key
post_object_storage_keys - Create a placement group
post_placement_group - Assign a placement group
post_group_add_linode - Unassign a placement group
post_group_unassign - Send a phone number verification code
post_profile_phone_number - Verify a phone number
post_profile_phone_number_verify - Answer security questions
post_security_questions - Add an SSH key
post_add_ssh_key - Disable two-factor authentication
post_tfa_disable - Generate a secret key for two-factor authentication
post_tfa_enable - Enable two-factor authentication
post_tfa_confirm - Create a personal access token
post_personal_access_token
Put 49 tools
- Update your account
put_account - Update an OAuth client
put_client - Update the OAuth client's thumbnail
put_client_thumbnail - Update account settings
put_account_settings - Update a user
put_user - Update a user's grants
put_user_grants - Update a MySQL Managed Database
put_databases_mysql_instance - Update a PostgreSQL Managed Database
put_databases_postgre_sql_instance - Update a domain
put_domain - Update a domain record
put_domain_record - Update a token
put_sharegroup_token - Update a share group
put_sharegroup - Update a shared image
put_sharegroup_imageshare - Update a membership token
put_sharegroup_member_token - Update an image
put_image - Update a Linode
put_linode_instance - Update a configuration profile
put_linode_config - Update a configuration profile interface
put_linode_config_interface - Update a disk
put_disk - Update a Linode's firewalls
put_linode_firewalls - Update Linode interface settings
put_linode_interface_settings - Update a Linode interface
put_linode_interface - Update an IP address's RDNS for a Linode
put_linode_ip - Update a StackScript
put_stack_script - Update a Kubernetes cluster
put_lke_cluster - Update the control plane access control list
put_lke_cluster_acl - Update a node pool
put_lke_node_pool - Update a Longview client
put_longview_client - Update a Longview plan
put_longview_plan - Update a managed contact
put_managed_contact - Update a managed credential
put_managed_credential - Update a Linode's managed settings
put_managed_linode_setting - Update a managed service monitor
put_managed_service - Update an alert definition
put_alert_definition - Update default firewalls
put_firewall_settings - Update a firewall
put_firewall - Update firewall rules
put_firewall_rules - Update an IP address's RDNS
put_ip - Update a NodeBalancer
put_node_balancer - Update a config
put_node_balancer_config - Update a node
put_node_balancer_node - Update a NodeBalancer's firewalls
put_node_balancer_firewalls - Update access to an Object Storage bucket
put_storage_bucket_access - Update an object's ACL configuration
put_object_storage_bucket_acl - Update an Object Storage access key
put_object_storage_key - Update a placement group
put_placement_group - Update a profile
put_profile - Update a user's preferences
put_user_preferences - Update an SSH key
put_ssh_key
Delete 45 tools
- Delete an OAuth client
delete_client - Delete a payment method
delete_payment_method - Cancel a service transfer
delete_service_transfer - Delete a user
delete_user - Delete a MySQL Managed Database
delete_databases_mysql_instance - Delete a PostgreSQL Managed Database
delete_databases_postgre_sql_instance - Delete a domain
delete_domain - Delete a domain record
delete_domain_record - Delete a token
delete_sharegroup_token - Delete a share group
delete_sharegroup - Revoke access to a shared image
delete_sharegroup_imageshare - Revoke a membership token
delete_sharegroup_member_token - Delete an image
delete_image - Delete a Linode
delete_linode_instance - Delete a configuration profile
delete_linode_config - Delete a configuration profile interface
delete_linode_config_interface - Delete a disk
delete_disk - Delete a Linode interface
delete_linode_interface - Delete an IPv4 address
delete_linode_ip - Delete a StackScript
delete_stack_script - Delete a Kubernetes cluster
delete_lke_cluster - Delete the control plane access control list
delete_lke_cluster_acl - Delete a Kubeconfig
delete_lke_cluster_kubeconfig - Delete a node
delete_lke_cluster_node - Delete a node pool
delete_lke_node_pool - Delete a service token
delete_lke_service_token - Delete a Longview client
delete_longview_client - Delete a managed contact
delete_managed_contact - Delete a managed service monitor
delete_managed_service - Delete an alert definition
delete_alert_definition - Delete a firewall
delete_firewall - Delete a firewall device
delete_firewall_device - Delete an IPv6 range
delete_ipv6_range - Delete a VLAN
delete_vlan - Delete a NodeBalancer
delete_node_balancer - Delete a config
delete_node_balancer_config - Delete a NodeBalancer's node
delete_node_balancer_config_node - Remove an Object Storage bucket
delete_object_storage_bucket - Delete an Object Storage TLS/SSL certificate
delete_object_storage_ssl - Revoke an Object Storage access key
delete_object_storage_key - Delete a placement group
delete_placement_group - Revoke app access
delete_profile_app - Revoke a trusted device
delete_trusted_device - Delete a phone number
delete_profile_phone_number - Delete an SSH key
delete_ssh_key
Resume 2 tools
- Resume a MySQL Managed Database
resume_databases_mysql_instance - Resume a PostgreSQL Managed Database
resume_databases_postgre_sql_instance
Suspend 2 tools
- Suspend a MySQL Managed Database
suspend_databases_mysql_instance - Suspend a PostgreSQL Managed Database
suspend_databases_postgre_sql_instance
The first 400 of 439 are listed; the search box above covers all of them, and so does search_tools from your assistant.
Try asking
List my Linodes with their regions and show which have backups disabled.
Usage and limits
Every account gets a free daily allowance of tool calls; connecting, listing and searching are not counted. See the limits. Only a tool that runs costs a call.