Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PYTHONPATH | No | Path to the MCP server OCI directory | |
| FASTMCP_LOG_LEVEL | No | Log level for FastMCP (e.g., INFO, DEBUG) |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_oci_profiles | List all available OCI profiles from ~/.oci/config file.
Returns a list of profiles with their configuration details.
Use this when you need to select a profile before making OCI API calls. |
| set_oci_profile | Set the active OCI profile to use for API calls.
Args:
profile_name: Name of the profile to activate (e.g., "DEFAULT", "production")
This will initialize or reinitialize OCI clients with the selected profile. |
| get_current_oci_profile | Get the currently active OCI profile. Returns information about which profile is currently being used for API calls. |
| list_compartments | List all compartments accessible to the user. |
| list_instances | List all instances in a compartment. |
| get_instance | Get details of a specific instance. |
| start_instance | Start an instance. |
| stop_instance | Stop an instance. |
| list_db_systems | List DB Systems in a compartment. |
| get_db_system | Get DB System details. |
| list_db_nodes | List DB Nodes in a compartment, optionally filtered by DB System.
Note: compartment_id is always required by the SDK. |
| get_db_node | Get DB Node details. |
| start_db_node | Start a DB Node. |
| stop_db_node | Stop a DB Node. |
| reboot_db_node | Reboot a DB Node. |
| reset_db_node | Reset (force reboot) a DB Node. |
| softreset_db_node | Soft reset (graceful reboot) a DB Node. |
| start_db_system | Start all nodes of a DB System.
Note: compartment_id required to enumerate nodes correctly. |
| stop_db_system | Stop all nodes of a DB System.
Note: compartment_id required to enumerate nodes correctly. |
| list_vcns | List all Virtual Cloud Networks (VCNs) in a compartment.
Args:
compartment_id: OCID of the compartment to list VCNs from
Returns:
List of VCNs with their CIDR blocks, DNS labels, and default resources |
| get_vcn | Get detailed information about a specific VCN.
Args:
vcn_id: OCID of the VCN to retrieve
Returns:
Detailed VCN information including CIDR blocks, DNS configuration, and default resources |
| list_subnets | List all subnets in a compartment, optionally filtered by VCN.
Args:
compartment_id: OCID of the compartment to list subnets from
vcn_id: Optional OCID of the VCN to filter subnets
Returns:
List of subnets with CIDR blocks, security lists, and routing information |
| get_subnet | Get detailed information about a specific subnet.
Args:
subnet_id: OCID of the subnet to retrieve
Returns:
Detailed subnet information including CIDR, security lists, and routing |
| list_vnics | List all Virtual Network Interface Cards (VNICs) in a compartment.
Args:
compartment_id: OCID of the compartment to list VNICs from
instance_id: Optional OCID of the instance to filter VNICs
Returns:
List of VNICs with their IP addresses, subnet information, and security groups |
| get_vnic | Get detailed information about a specific VNIC.
Args:
vnic_id: OCID of the VNIC to retrieve
Returns:
Detailed VNIC information including IP addresses, subnet, and NSG associations |
| list_security_lists | List all security lists in a compartment, optionally filtered by VCN.
Args:
compartment_id: OCID of the compartment to list security lists from
vcn_id: Optional OCID of the VCN to filter security lists
Returns:
List of security lists with their ingress and egress rules |
| get_security_list | Get detailed information about a specific security list.
Args:
security_list_id: OCID of the security list to retrieve
Returns:
Detailed security list with all ingress and egress rules |
| list_network_security_groups | List all Network Security Groups (NSGs) in a compartment.
Args:
compartment_id: OCID of the compartment to list NSGs from
vcn_id: Optional OCID of the VCN to filter NSGs
Returns:
List of NSGs with their security rules |
| get_network_security_group | Get detailed information about a specific Network Security Group.
Args:
nsg_id: OCID of the NSG to retrieve
Returns:
Detailed NSG information with all security rules |
| get_namespace | Get the Object Storage namespace for the tenancy.
The namespace is a unique identifier for the tenancy in Object Storage.
It's required for all Object Storage operations.
Returns:
Dictionary with namespace information |
| list_buckets | List all Object Storage buckets in a compartment.
Args:
compartment_id: OCID of the compartment to list buckets from
namespace: Optional namespace (if not provided, will be fetched automatically)
Returns:
List of buckets with their configurations and metadata |
| get_bucket | Get detailed information about a specific Object Storage bucket.
Args:
bucket_name: Name of the bucket
namespace: Optional namespace (if not provided, will be fetched automatically)
Returns:
Detailed bucket information including public access settings and versioning |
| list_volumes | List all Block Storage volumes in a compartment.
Args:
compartment_id: OCID of the compartment to list volumes from
Returns:
List of volumes with their size, state, and attachment information |
| get_volume | Get detailed information about a specific Block Storage volume.
Args:
volume_id: OCID of the volume to retrieve
Returns:
Detailed volume information including size, performance tier, and backup policy |
| list_boot_volumes | List all boot volumes in a compartment.
Args:
compartment_id: OCID of the compartment to list boot volumes from
availability_domain: Optional AD to filter boot volumes
Returns:
List of boot volumes with their size, state, and source image information |
| get_boot_volume | Get detailed information about a specific boot volume.
Args:
boot_volume_id: OCID of the boot volume to retrieve
Returns:
Detailed boot volume information including size, performance, and source image |
| list_file_systems | List all File Storage file systems in a compartment and availability domain.
Args:
compartment_id: OCID of the compartment to list file systems from
availability_domain: Name of the availability domain
Returns:
List of file systems with their state and metadata |
| get_file_system | Get detailed information about a specific File Storage file system.
Args:
file_system_id: OCID of the file system to retrieve
Returns:
Detailed file system information including metered bytes and snapshots |
| list_databases | List all databases in a compartment, optionally filtered by DB System.
Args:
compartment_id: OCID of the compartment to list databases from
db_system_id: Optional OCID of the DB System to filter databases
Returns:
List of databases with their state, version, and connection information |
| get_database | Get detailed information about a specific database.
Args:
database_id: OCID of the database to retrieve
Returns:
Detailed database information including connection strings, character set, and PDB name |
| list_autonomous_databases | List all Autonomous Databases in a compartment.
Args:
compartment_id: OCID of the compartment to list Autonomous Databases from
Returns:
List of Autonomous Databases with their configuration, workload type, and connection info |
| get_autonomous_database | Get detailed information about a specific Autonomous Database.
Args:
autonomous_database_id: OCID of the Autonomous Database to retrieve
Returns:
Detailed Autonomous Database information including connection strings, wallet info, and auto-scaling settings |
| list_users | List all IAM users in a compartment.
Args:
compartment_id: OCID of the compartment to list users from
Returns:
List of users with their state, capabilities, and MFA status |
| get_user | Get detailed information about a specific IAM user.
Args:
user_id: OCID of the user to retrieve
Returns:
Detailed user information including capabilities, MFA status, and group memberships |
| list_groups | List all IAM groups in a compartment.
Args:
compartment_id: OCID of the compartment to list groups from
Returns:
List of groups with their members count and state |
| get_group | Get detailed information about a specific IAM group.
Args:
group_id: OCID of the group to retrieve
Returns:
Detailed group information including members and description |
| list_policies | List all IAM policies in a compartment.
Args:
compartment_id: OCID of the compartment to list policies from
Returns:
List of policies with their statements and state |
| get_policy | Get detailed information about a specific IAM policy.
Args:
policy_id: OCID of the policy to retrieve
Returns:
Detailed policy information including all policy statements |
| list_dynamic_groups | List all dynamic groups in a compartment.
Args:
compartment_id: OCID of the compartment to list dynamic groups from
Returns:
List of dynamic groups with their matching rules and state |
| get_dynamic_group | Get detailed information about a specific dynamic group.
Args:
dynamic_group_id: OCID of the dynamic group to retrieve
Returns:
Detailed dynamic group information including matching rules for instance principals |
| list_load_balancers | List all classic load balancers in a compartment.
Args:
compartment_id: OCID of the compartment to list load balancers from
Returns:
List of load balancers with their IP addresses, shape, and state |
| get_load_balancer | Get detailed information about a specific classic load balancer.
Args:
load_balancer_id: OCID of the load balancer to retrieve
Returns:
Detailed load balancer information including backend sets, listeners, and certificates |
| list_network_load_balancers | List all network load balancers in a compartment.
Args:
compartment_id: OCID of the compartment to list network load balancers from
Returns:
List of network load balancers with their IP addresses and state |
| get_network_load_balancer | Get detailed information about a specific network load balancer.
Args:
network_load_balancer_id: OCID of the network load balancer to retrieve
Returns:
Detailed network load balancer information including backend sets and listeners |
| list_availability_domains | List all availability domains in a compartment.
Args:
compartment_id: OCID of the compartment (typically use tenancy OCID for root)
Returns:
List of availability domains with their names and IDs |
| list_fault_domains | List all fault domains in an availability domain.
Args:
compartment_id: OCID of the compartment
availability_domain: Name of the availability domain
Returns:
List of fault domains with their names and IDs |
| list_images | List all compute images in a compartment.
Args:
compartment_id: OCID of the compartment to list images from
Returns:
List of images with OS, version, size, and lifecycle state |
| get_image | Get detailed information about a specific compute image.
Args:
image_id: OCID of the image to retrieve
Returns:
Detailed image information including launch options and OS details |
| list_shapes | List all compute shapes available in a compartment.
Args:
compartment_id: OCID of the compartment
Returns:
List of shapes with CPU, memory, network, and GPU specifications |
| list_regions | List all available OCI regions.
Returns:
List of regions with their keys and names |
| get_tenancy_info | Get detailed information about a tenancy.
Args:
tenancy_id: OCID of the tenancy
Returns:
Tenancy details including name, home region, and description |
| list_vaults | List all KMS vaults in a compartment.
Args:
compartment_id: OCID of the compartment to list vaults from
Returns:
List of vaults with their type, endpoints, and state |
| get_vault | Get detailed information about a specific KMS vault.
Args:
vault_id: OCID of the vault to retrieve
Returns:
Detailed vault information including crypto and management endpoints |
| list_keys | List all encryption keys in a vault's compartment.
Note: You must first get a vault to obtain its management_endpoint.
Args:
compartment_id: OCID of the compartment
management_endpoint: Management endpoint from the vault (get from vault details)
Returns:
List of keys with their algorithm, protection mode, and state |
| get_key | Get detailed information about a specific encryption key.
Note: You must first get a vault to obtain its management_endpoint.
Args:
key_id: OCID of the key to retrieve
management_endpoint: Management endpoint from the vault (get from vault details)
Returns:
Detailed key information including algorithm, shape, and versions |
| get_cost_usage_summary | Get cost and usage summary for a tenancy.
Args:
tenant_id: OCID of the tenancy
time_usage_started: Start time in ISO format (YYYY-MM-DD)
time_usage_ended: End time in ISO format (YYYY-MM-DD)
granularity: Granularity of the data (DAILY or MONTHLY), defaults to DAILY
Returns:
List of cost and usage summaries with amounts, services, and compartments |
| get_cost_by_service | Get cost breakdown by service for a tenancy.
Args:
tenant_id: OCID of the tenancy
time_usage_started: Start time in ISO format (YYYY-MM-DD)
time_usage_ended: End time in ISO format (YYYY-MM-DD)
Returns:
List of costs grouped by service with total cost per service |
| get_cost_by_compartment | Get cost breakdown by compartment for a tenancy.
Args:
tenant_id: OCID of the tenancy
time_usage_started: Start time in ISO format (YYYY-MM-DD)
time_usage_ended: End time in ISO format (YYYY-MM-DD)
Returns:
List of costs grouped by compartment with total cost per compartment |
| list_budgets | List all budgets in a compartment.
Args:
compartment_id: OCID of the compartment to list budgets from
Returns:
List of budgets with amount, reset period, actual spend, and forecasted spend |
| get_budget | Get detailed information about a specific budget.
Args:
budget_id: OCID of the budget to retrieve
Returns:
Detailed budget information including targets, alert rules, and spend tracking |
| list_alarms | List all alarms in a compartment.
Args:
compartment_id: OCID of the compartment to list alarms from
Returns:
List of alarms with their query, severity, state, and destinations |
| get_alarm | Get detailed information about a specific alarm.
Args:
alarm_id: OCID of the alarm to retrieve
Returns:
Detailed alarm information including query, thresholds, and notification settings |
| get_alarm_history | Get alarm state history.
Args:
alarm_id: OCID of the alarm
alarm_historytype: Type of history (STATE_TRANSITION_HISTORY, STATE_HISTORY, RULE_HISTORY)
Returns:
List of alarm history entries with timestamps and state changes |
| list_metrics | List available metrics in a compartment.
Args:
compartment_id: OCID of the compartment
namespace: Optional namespace to filter metrics (e.g., oci_computeagent, oci_blockstore)
Returns:
List of available metrics with their namespaces and dimensions |
| query_metric_data | Query metric data for a time range using MQL.
Args:
compartment_id: OCID of the compartment
query: Metric query in MQL format (e.g., "CpuUtilization[1m].mean()")
start_time: Start time in ISO format (YYYY-MM-DDTHH:MM:SSZ)
end_time: End time in ISO format (YYYY-MM-DDTHH:MM:SSZ)
resolution: Data resolution (1m, 5m, 1h)
Returns:
List of metric data points with timestamps and values |
| search_logs | Search logs using the Logging Search API.
Args:
time_start: Start time in ISO format (YYYY-MM-DDTHH:MM:SSZ)
time_end: End time in ISO format (YYYY-MM-DDTHH:MM:SSZ)
search_query: Search query string
Returns:
List of log entries matching the search criteria |
| list_log_groups | List all log groups in a compartment.
Args:
compartment_id: OCID of the compartment to list log groups from
Returns:
List of log groups with their display names and lifecycle states |
| list_logs | List all logs in a log group.
Args:
log_group_id: OCID of the log group
Returns:
List of logs with their types, retention, and enabled state |
| list_oke_clusters | List all OKE (Container Engine for Kubernetes) clusters in a compartment.
Args:
compartment_id: OCID of the compartment
Returns:
List of OKE clusters with their details including Kubernetes version, endpoints, and lifecycle state |
| get_oke_cluster | Get detailed information about a specific OKE cluster.
Args:
cluster_id: OCID of the cluster
Returns:
Detailed cluster information including:
- Kubernetes version and available upgrades
- Cluster endpoints (public/private)
- Network configuration (VCN, subnets, CIDR blocks)
- Add-ons configuration (dashboard, tiller)
- Image policy settings
- Cluster metadata and options |
| list_oke_node_pools | List all node pools in a compartment, optionally filtered by cluster.
Args:
compartment_id: OCID of the compartment
cluster_id: Optional OCID of the cluster to filter by
Returns:
List of node pools with their details including:
- Node shape and image information
- Kubernetes version
- Placement configuration (ADs, subnets)
- Node count per subnet
- Lifecycle state |
| get_oke_node_pool | Get detailed information about a specific node pool.
Args:
node_pool_id: OCID of the node pool
Returns:
Detailed node pool information including:
- Node configuration (shape, image, SSH keys)
- Individual node details (IPs, state, fault domains)
- Placement configuration across ADs
- Node eviction settings
- Node pool cycling details
- Initial node labels
- Security settings (NSGs, encryption) |
| get_oke_cluster_kubeconfig | Get the kubeconfig file content for accessing an OKE cluster.
Args:
cluster_id: OCID of the cluster
Returns:
Kubeconfig content in YAML format that can be saved to ~/.kube/config
or used with kubectl --kubeconfig flag |
| list_oke_work_requests | List work requests (async operations) for OKE resources in a compartment.
Args:
compartment_id: OCID of the compartment
resource_id: Optional OCID of a specific resource (cluster or node pool) to filter by
Returns:
List of work requests with their details including:
- Operation type (create, update, delete, etc.)
- Status and completion percentage
- Associated resources
- Timestamps (accepted, started, finished) |
| get_oke_work_request | Get detailed information about a specific OKE work request.
Args:
work_request_id: OCID of the work request
Returns:
Detailed work request information including:
- Operation type and status
- Completion percentage
- Associated resources and actions
- Timing information |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |