oci-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@oci-mcpList my compute instances in the root compartment"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
OCI MCP Server
Model Context Protocol (MCP) server exposing Oracle Cloud Infrastructure tools, resources and prompts.
🔧 Tools: list/inspect Compute, Autonomous Databases, Object Storage, instance actions, quick security checks, (experimental) cost summaries
📚 Resources:
oci://compartmentsetc.🧠 Prompts:
oci_analysis_prompt🖥️ Works with Claude Desktop via stdio transport
Built with the official MCP Python SDK and the OCI Python SDK.
Quick start
git clone https://github.com/karthiksuku/oci-mcp.git
cd oci-mcp
chmod +x install.sh
./install.sh
### Auth Prerequisites
- OCI CLI configured. By default this server reads credentials from `~/.oci/config`.
- Create it with: `oci setup config`
- macOS/Linux: `~/.oci/config`
- Windows: `%USERPROFILE%\.oci\config`
- Override via `OCI_CONFIG_FILE=/path/to/config` or a `.env` file.
# ensure you've run: oci setup config
python oci_mcp_server.py # starts stdio MCP serverAdd to Claude Desktop
Add to ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"oci-infrastructure": {
"command": "python",
"args": ["/ABSOLUTE/PATH/oci-mcp/oci_mcp_server.py"],
"env": { "OCI_CONFIG_FILE": "/Users/<you>/.oci/config" }
}
}
}Open Claude Desktop → Connect to server → select oci-infrastructure.
Required IAM policies (examples)
Grant read-only for discovery (adjust compartment OCIDs and groups):
Allow group MyGroup to read instances in tenancy
Allow group MyGroup to read virtual-network-family in tenancy
Allow group MyGroup to read autonomous-database-family in tenancy
Allow group MyGroup to read objectstorage-namespaces in tenancy
Allow group MyGroup to read buckets in tenancy
Allow group MyGroup to read usage-reports in tenancyFor instance actions:
Allow group MyGroup to manage instance-family in compartment <COMP_OCID>Tools
list_compute_instances(compartment_ocid=None, lifecycle_state=None)get_instance_details(instance_id)instance_action(instance_id, action)— actions: START, STOP, RESET, SOFTRESET, SOFTSTOPlist_autonomous_databases(compartment_ocid=None)list_storage_buckets(compartment_ocid=None)list_compartments()perform_security_assessment(compartment_ocid=None)get_tenancy_cost_summary(start_time_iso, end_time_iso, granularity="DAILY")(experimental; requires Usage API access)
See examples/sample_queries.md for ideas.
Configuration
Uses
~/.oci/configby default (created viaoci setup config).Can also read explicit env vars from
.env(see.env.example).Optional:
DEFAULT_COMPARTMENT_OCIDto scope queries.
Notes
Cost summary uses the Usage API if available.
Networking/security heuristics are conservative (non-invasive read-only calls).
This repo is a base—extend with OKE, LB, Budgets, Events, etc.
License
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/Oreo-Tech/oci-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server