ArvanCloud MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ARVAN_HOST | No | Bind address for HTTP transports. | 127.0.0.1 |
| ARVAN_PORT | No | Bind port for HTTP transports. | 8000 |
| ARVAN_API_KEY | Yes | Required. Machine-user access key. The Apikey prefix is added automatically. | |
| ARVAN_SSH_KEY | No | Default SSH auth (inline key). | |
| ARVAN_TIMEOUT | No | Per-request timeout (seconds). | 60 |
| ARVAN_BASE_URL | No | API host (use the .com alias if needed). | https://napi.arvancloud.ir |
| ARVAN_SSH_PORT | No | SSH port. | 22 |
| ARVAN_SSH_USER | No | Default SSH user for the remote-exec tools. | root |
| ARVAN_S3_REGION | No | S3 region (selects the endpoint) or an explicit endpoint URL. | ir-thr-at1 |
| ARVAN_TRANSPORT | No | stdio, sse, or streamable-http. | stdio |
| ARVAN_VERIFY_SSL | No | TLS verification. | true |
| ARVAN_MAX_RETRIES | No | Retries for network errors / 429 / 5xx. | 4 |
| ARVAN_S3_ENDPOINT | No | Explicit S3 endpoint URL. | |
| ARVAN_SSH_TIMEOUT | No | Connect timeout (seconds). | 30 |
| ARVAN_SSH_KEY_FILE | No | Default SSH auth (key file). | |
| ARVAN_SSH_PASSWORD | No | Default SSH auth (password). | |
| ARVAN_S3_ACCESS_KEY | No | Object Storage credentials (separate from the API key). | |
| ARVAN_S3_SECRET_KEY | No | Object Storage credentials (separate from the API key). | |
| ARVAN_BACKOFF_FACTOR | No | Exponential backoff base (seconds). | 1.0 |
| ARVAN_DEFAULT_REGION | No | Default IaaS region, e.g. ir-thr-c2, so you don't repeat it. | |
| ARVAN_SSH_KNOWN_HOSTS | No | Host-key file (off = no verification). | |
| ARVAN_ENABLED_SERVICES | No | Comma list of tool groups to expose (common is always on). | all |
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| arvan_requestA | Call any ArvanCloud API endpoint directly (generic escape hatch). Use this for any operation that does not have a dedicated tool. Discover
available endpoints with Args:
method: HTTP method.
path: Endpoint path relative to the API base, e.g.
Returns: The decoded JSON response from ArvanCloud. |
| arvan_capabilitiesA | Discover ArvanCloud products and their API endpoints. Call without arguments for a compact overview of every service. Pass a
service key ( |
| arvan_doctorA | Diagnose the server's configuration and connectivity. Checks: whether the API key works (a live call), which optional CLI tools are installed (IaC/security/k8s/git/net), and whether Object Storage and SSH defaults are configured. Run this first to see what's ready to use. |
| arvan_find_toolA | Search this server's own tools by keyword (handy with 200+ tools). Returns matching tool names and one-line descriptions, ranked by relevance. |
| arvan_list_regionsA | List all ArvanCloud IaaS regions (datacenters) and their codes. |
| arvan_account_detailsA | Get the current account/project details for Cloud Server. |
| arvan_get_quotasB | Get resource quotas and current usage for a region. |
| arvan_list_serversB | List cloud servers (VMs) in a region. |
| arvan_get_serverA | Get details of a single cloud server by id. |
| arvan_server_optionsC | Get available options for creating a server in a region. |
| arvan_create_serverA | Create one or more cloud servers. Args:
name: Server name (a numeric suffix is added when count > 1).
flavor_id: Plan/flavor id — see |
| arvan_delete_serverB | Delete a cloud server. Set force_delete_floating_ips to also release IPs. |
| arvan_server_actionC | Run a power/maintenance action on a server. Actions: power-on, power-off, reboot, hard-reboot, rescue, unrescue, reset-root-password, add-public-ip, change-public-ip. |
| arvan_rename_serverC | Rename a cloud server. |
| arvan_rebuild_serverA | Rebuild a server from an image (destroys current root disk contents). |
| arvan_resize_serverC | Change a server's plan/flavor (resize CPU & RAM). |
| arvan_resize_server_diskB | Resize a server's root disk to the given size in GB. |
| arvan_list_imagesA | List server images. Args:
region: Region code; defaults to ARVAN_DEFAULT_REGION.
image_type: Filter by type, e.g. |
| arvan_list_plansA | List available server plans/flavors (sizes) and their pricing. |
| arvan_list_ptr_recordsA | List reverse-DNS (PTR) records in a region. |
| arvan_create_ptr_recordA | Create a reverse-DNS (PTR) record mapping an IP to a domain. |
| arvan_delete_ptr_recordB | Delete a reverse-DNS (PTR) record by id. |
| arvan_list_ssh_keysA | List SSH keys registered in a region (for injecting into new servers). |
| arvan_create_ssh_keyC | Register an SSH public key so it can be injected into servers at create. |
| arvan_delete_ssh_keyB | Delete a registered SSH key by name. |
| arvan_list_tagsB | List resource tags in a region. |
| arvan_create_tagC | Create a resource tag. |
| arvan_delete_tagC | Delete a resource tag by id. |
| arvan_attach_tagB | Attach a tag to a resource (e.g. a server). |
| arvan_detach_tagC | Detach a tag from a resource. |
| arvan_attach_security_group_to_serverC | Attach a security group to a server. |
| arvan_detach_security_group_from_serverB | Detach a security group from a server. |
| arvan_wait_for_serverA | Poll a server until it becomes active (or the timeout elapses). Handy right after |
| arvan_list_networksB | List networks (public and private) available in a region. |
| arvan_list_subnetsB | List private-network subnets in a region. |
| arvan_create_private_networkA | Create a private network (subnet). Args:
name: Network name.
region: Region code; defaults to ARVAN_DEFAULT_REGION.
subnet_ip: CIDR for the subnet, e.g. |
| arvan_get_subnetB | Get a private-network subnet by id. |
| arvan_update_subnetB | Update a subnet (e.g. dns_servers, enable_dhcp, subnet_gateway). |
| arvan_delete_subnetB | Delete a private-network subnet by id. |
| arvan_attach_networkB | Attach a network to a server (optionally with a fixed IP). |
| arvan_detach_networkB | Detach a network from a server. |
| arvan_list_security_groupsB | List security groups (firewall groups) in a region. |
| arvan_create_security_groupC | Create a security group. |
| arvan_delete_security_groupC | Delete a security group by id. |
| arvan_create_security_ruleB | Add a rule to a security group. Args:
group_id: Target security-group id.
direction: |
| arvan_delete_security_ruleA | Delete a security-group rule by id. |
| arvan_list_floating_ipsA | List floating (public) IP addresses in a region. |
| arvan_create_floating_ipC | Allocate a new floating (public) IP address. |
| arvan_attach_floating_ipC | Attach a floating IP to a server/port. |
| arvan_detach_floating_ipA | Detach a floating IP from the given port. |
| arvan_delete_floating_ipC | Release (delete) a floating IP address by id. |
| arvan_set_port_securityC | Enable or disable port security on a network port. |
| arvan_list_volumesB | List block-storage volumes in a region. |
| arvan_get_volumeA | Get a single block-storage volume by id. |
| arvan_get_volume_limitsB | Get block-storage volume limits/quota for a region. |
| arvan_create_volumeB | Create a block-storage volume. Args: name: Volume name. size: Size in GB. region: Region code; defaults to ARVAN_DEFAULT_REGION. description: Optional description. |
| arvan_update_volumeB | Update a volume's name and/or description. |
| arvan_delete_volumeB | Delete a block-storage volume by id. |
| arvan_attach_volumeB | Attach a volume to a server. |
| arvan_detach_volumeC | Detach a volume from a server. |
| arvan_snapshot_volumeC | Create a snapshot of a volume. |
| arvan_s3_list_bucketsA | List all Object Storage buckets. |
| arvan_s3_create_bucketC | Create a bucket. |
| arvan_s3_delete_bucketB | Delete an (empty) bucket. |
| arvan_s3_list_objectsB | List objects in a bucket (optionally under a prefix). |
| arvan_s3_put_objectA | Upload an object. Args:
bucket: Target bucket.
key: Object key (path) within the bucket.
content: The object body. Plain text, or base64 if |
| arvan_s3_get_objectA | Download an object. Returns text, or base64 when Bodies larger than 256 KiB are truncated; use a presigned URL for big files. |
| arvan_s3_delete_objectC | Delete a single object. |
| arvan_s3_delete_objectsC | Delete multiple objects in one call. |
| arvan_s3_copy_objectC | Copy an object to another key/bucket. |
| arvan_s3_head_objectB | Get an object's metadata (size, type, etag) without downloading it. |
| arvan_s3_generate_presigned_urlA | Generate a presigned URL for temporary access to an object.
|
| arvan_s3_get_bucket_policyB | Get a bucket's access policy (JSON). |
| arvan_s3_put_bucket_policyA | Set a bucket's access policy (an S3 policy document). |
| arvan_s3_set_bucket_aclA | Set a bucket ACL (private, public-read, public-read-write). |
| arvan_s3_sync_local_dirC | Upload all files under a local directory to a bucket (recursive). |
| arvan_s3_enable_static_websiteB | Configure a bucket for static website hosting (optionally make it public). |
| arvan_list_domainsA | List CDN domains on the account (supports pagination & search). |
| arvan_get_domainC | Get details and settings for a CDN domain. |
| arvan_create_domainA | Add a domain to the CDN / Cloud DNS (the "dns-service" onboarding call). Args:
domain: The domain name, e.g. |
| arvan_delete_domainA | Remove a domain from the CDN. The delete endpoint requires the domain's id. If |
| arvan_get_caching_settingsB | Get caching settings for a domain. |
| arvan_update_caching_settingsA | Update caching settings for a domain.
|
| arvan_purge_cacheA | Purge cached content for a domain. Pass |
| arvan_list_page_rulesC | List page rules for a domain. |
| arvan_create_page_ruleC | Create a page rule. Args:
domain: The CDN domain.
url: URL pattern the rule applies to (e.g. |
| arvan_delete_page_ruleC | Delete a page rule by id. |
| arvan_list_firewall_rulesB | List firewall (WAF) rules for a domain. |
| arvan_create_firewall_ruleB | Create a firewall (WAF) rule. Args:
domain: The CDN domain.
name: Rule name.
action: Action to take, e.g. |
| arvan_get_ssl_settingsB | Get HTTPS/SSL settings for a domain. |
| arvan_update_ssl_settingsA | Update HTTPS/SSL settings for a domain. Pass |
| arvan_delete_firewall_ruleC | Delete a firewall (WAF) rule by id. |
| arvan_list_rate_limit_rulesA | List rate-limit rules for a domain. |
| arvan_create_rate_limit_ruleC | Create a rate-limit rule.
|
| arvan_delete_rate_limit_ruleC | Delete a rate-limit rule by id. |
| arvan_list_log_forwardersA | List log-forwarding destinations for a domain. |
| arvan_create_log_forwarderC | Create a log forwarder (ship access logs to an external sink). |
| arvan_delete_log_forwarderC | Delete a log forwarder by id. |
| arvan_list_metric_exportersA | List Prometheus-style metric exporters for a domain. |
| arvan_create_metric_exporterC | Create a metric exporter for a domain. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| provision_web_server | Guide: provision a server, install a web stack, and (optionally) wire DNS. |
| audit_security | Guide: run a security audit of a region and a domain. |
| setup_cdn | Guide: onboard a domain to the CDN with DNS, caching and SSL. |
| deploy_static_site | Guide: host a static site on Object Storage. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| capabilities_resource | The full ArvanCloud API catalogue as an MCP resource. |
| regions_resource | Live list of ArvanCloud regions. |
| domains_resource | Live list of CDN/DNS domains on the account. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/dwin-gharibi/arvancloud-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server