Skip to main content
Glama
dwin-gharibi

ArvanCloud MCP Server

by dwin-gharibi

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ARVAN_HOSTNoBind address for HTTP transports.127.0.0.1
ARVAN_PORTNoBind port for HTTP transports.8000
ARVAN_API_KEYYesRequired. Machine-user access key. The Apikey prefix is added automatically.
ARVAN_SSH_KEYNoDefault SSH auth (inline key).
ARVAN_TIMEOUTNoPer-request timeout (seconds).60
ARVAN_BASE_URLNoAPI host (use the .com alias if needed).https://napi.arvancloud.ir
ARVAN_SSH_PORTNoSSH port.22
ARVAN_SSH_USERNoDefault SSH user for the remote-exec tools.root
ARVAN_S3_REGIONNoS3 region (selects the endpoint) or an explicit endpoint URL.ir-thr-at1
ARVAN_TRANSPORTNostdio, sse, or streamable-http.stdio
ARVAN_VERIFY_SSLNoTLS verification.true
ARVAN_MAX_RETRIESNoRetries for network errors / 429 / 5xx.4
ARVAN_S3_ENDPOINTNoExplicit S3 endpoint URL.
ARVAN_SSH_TIMEOUTNoConnect timeout (seconds).30
ARVAN_SSH_KEY_FILENoDefault SSH auth (key file).
ARVAN_SSH_PASSWORDNoDefault SSH auth (password).
ARVAN_S3_ACCESS_KEYNoObject Storage credentials (separate from the API key).
ARVAN_S3_SECRET_KEYNoObject Storage credentials (separate from the API key).
ARVAN_BACKOFF_FACTORNoExponential backoff base (seconds).1.0
ARVAN_DEFAULT_REGIONNoDefault IaaS region, e.g. ir-thr-c2, so you don't repeat it.
ARVAN_SSH_KNOWN_HOSTSNoHost-key file (off = no verification).
ARVAN_ENABLED_SERVICESNoComma 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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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 arvan_capabilities.

Args: method: HTTP method. path: Endpoint path relative to the API base, e.g. /ecc/v1/regions/ir-thr-c2/servers or /cdn/4.0/domains. A leading slash is optional. query: Optional query-string parameters. body: Optional JSON request body (for POST/PUT/PATCH).

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 (compute, network, storage, cdn, dns, vod, live) to get its full endpoint list, including request-body hints you can feed to arvan_request.

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_list_plans. image_id: OS/snapshot image id — see arvan_list_images. region: Region code; defaults to ARVAN_DEFAULT_REGION. disk_size: Root disk size in GB. count: How many identical servers to create. network_ids: Private network ids to attach. security_group_names: Security groups to apply. ssh_key_name: Name of an SSH key to inject (see arvan_list_ssh_keys). init_script: Cloud-init / startup script. ha_enabled: Enable high availability. create_type: Optional create type (e.g. image, snapshot). extra: Any additional fields to merge into the request body.

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. distributions (OS images), snapshots (your snapshots), or private. marketplace: Set True to list marketplace app images instead.

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_create_server and before SSHing in. Returns the latest server details plus ready/timed_out flags. The wait is bounded to 30 minutes regardless of timeout.

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. 192.168.0.0/24. subnet_gateway: Gateway IP within the subnet. enable_gateway: Whether to enable the gateway. enable_dhcp: Whether DHCP assigns addresses automatically. dns_servers: Comma-separated DNS servers. dhcp_start / dhcp_end: Optional DHCP allocation range.

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: ingress (inbound) or egress (outbound). protocol: tcp, udp, icmp … (omit for any). port_from / port_to: Port range (as strings). ips: Source/destination CIDRs, e.g. ["0.0.0.0/0"]. description: Optional description.

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. acl is one of private, public-read, public-read-write.

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 content_base64. content_base64: Set True when content is base64-encoded binary. content_type: Optional MIME type, e.g. application/json. acl: Optional ACL, e.g. public-read.

arvan_s3_get_objectA

Download an object. Returns text, or base64 when as_base64 or binary.

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.

operation is get_object (download) or put_object (upload).

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. example.com. extra: Additional fields to merge into the request body (e.g. plan).

arvan_delete_domainA

Remove a domain from the CDN.

The delete endpoint requires the domain's id. If domain_id is not supplied it is looked up automatically via the domain details.

arvan_get_caching_settingsB

Get caching settings for a domain.

arvan_update_caching_settingsA

Update caching settings for a domain.

settings accepts the caching fields documented by ArvanCloud, e.g. {"cache_status": "enable", "cache_page_200": "..."}.

arvan_purge_cacheA

Purge cached content for a domain.

Pass urls to purge specific paths, or omit to purge everything.

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. example.com/blog/*). actions: Map of rule actions, e.g. {"cache_level": "bypass"}.

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. block, allow, challenge. filters: Match conditions for the rule. extra: Additional fields to merge into the request body.

arvan_get_ssl_settingsB

Get HTTPS/SSL settings for a domain.

arvan_update_ssl_settingsA

Update HTTPS/SSL settings for a domain.

Pass ssl_type (default for free Let's Encrypt, manual for an uploaded certificate, off to disable) and/or a full settings body.

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.

rule carries the documented fields (e.g. url, method, count, duration, action).

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

NameDescription
provision_web_serverGuide: provision a server, install a web stack, and (optionally) wire DNS.
audit_securityGuide: run a security audit of a region and a domain.
setup_cdnGuide: onboard a domain to the CDN with DNS, caching and SSL.
deploy_static_siteGuide: host a static site on Object Storage.

Resources

Contextual data attached and managed by the client

NameDescription
capabilities_resourceThe full ArvanCloud API catalogue as an MCP resource.
regions_resourceLive list of ArvanCloud regions.
domains_resourceLive list of CDN/DNS domains on the account.

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/dwin-gharibi/arvancloud-mcp'

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