Skip to main content
This guide will help you quickly set up and run your first Oracle MCP Server. We’ll use the OCI API MCP Server as an example, which provides tools to interact with Oracle Cloud Infrastructure services.

What You’ll Build

By the end of this quickstart, you’ll have:
  • A working MCP server connected to your MCP client (like Cline or Cursor)
  • The ability to execute OCI CLI commands through your AI assistant
  • A foundation for exploring other Oracle MCP servers
1

Install uv

The uv tool is a fast Python package installer and runner. Install it using the official installer:
curl -LsSf https://astral.sh/uv/install.sh | sh
For more installation options, visit the uv installation guide.
2

Install Python 3.13

Install Python 3.13 using uv:
uv python install 3.13
Most Oracle MCP servers require Python 3.13 or later. The uv tool will automatically manage Python versions for you.
3

Configure OCI Authentication (Optional)

If you plan to use OCI-related servers (like oci-api-mcp-server, oci-compute-mcp-server, etc.), you’ll need to authenticate with Oracle Cloud Infrastructure.
  1. Install the OCI CLI
  2. Authenticate using session tokens:
oci session authenticate --region=us-phoenix-1 --tenancy-name=<your-tenancy-name>
Replace us-phoenix-1 with your preferred region and <your-tenancy-name> with your OCI tenancy name.
  1. This creates a session token and configuration file at ~/.oci/config
For detailed authentication options including API key-based authentication, see the Installation page.
All actions are performed with the permissions of your configured OCI CLI profile. Use least-privilege IAM policies and secure credential management.
4

Configure Your MCP Client

Now configure your MCP client to connect to the Oracle MCP server. Below are examples for popular clients.
  1. Install the Cline VS Code Extension
  2. Click the MCP Servers button in the Cline panel
  3. Select the Installed tab and click Configure MCP Servers
  4. Add the following to your cline_mcp_settings.json:
{
  "mcpServers": {
    "oracle-oci-api-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "oracle.oci-api-mcp-server@latest"
      ],
      "env": {
        "OCI_CONFIG_PROFILE": "DEFAULT",
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    }
  }
}
  1. Save the file and verify the server appears with a green toggle in the Installed tab
You can configure MCP servers either globally or per-project:Project Configuration: Create .cursor/mcp.json in your project directoryGlobal Configuration: Create ~/.cursor/mcp.json in your home directoryAdd the following configuration:
{
  "mcpServers": {
    "oracle-oci-api-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "oracle.oci-api-mcp-server"
      ],
      "env": {
        "OCI_CONFIG_PROFILE": "DEFAULT",
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    }
  }
}
Verify installation in Cursor SettingsMCP tab → Installed Servers
Replace DEFAULT with your OCI profile name if you configured a different profile during authentication. You can view your profiles with cat ~/.oci/config on macOS/Linux.
5

Test Your Server

Now let’s verify everything is working! Open your MCP client and try these commands:Example 1: Get help for an OCI command
Can you show me how to list compute instances using the OCI CLI?
Example 2: List compartments
List all compartments in my tenancy
Example 3: Check compute resources
Show me all compute instances in the us-phoenix-1 region
If the server is working correctly, your AI assistant will use the MCP tools to execute these commands and return results.

Alternative: HTTP Streaming Mode

Instead of STDIO transport, you can run MCP servers in HTTP streaming mode for remote access:
1

Start the server with HTTP transport

ORACLE_MCP_HOST=127.0.0.1 ORACLE_MCP_PORT=8888 uvx oracle.oci-api-mcp-server
2

Configure your client for HTTP

Add this to your MCP client configuration:
{
  "mcpServers": {
    "oracle-oci-api-mcp-server": {
      "type": "streamableHttp",
      "url": "http://127.0.0.1:8888/mcp"
    }
  }
}
Some MCP clients use "type": "http" while others (like Cline) expect "type": "streamableHttp". Check your client’s documentation.

Next Steps

Explore Other Servers

Discover 22 different Oracle MCP servers for databases, compute, networking, and more

Container Deployment

Learn how to run MCP servers using Podman or Docker containers

Local Development

Set up a development environment to customize and extend MCP servers

Client Configuration

Detailed configuration examples for all supported MCP clients

Troubleshooting

  1. Check that your JSON configuration is valid (no trailing commas, proper quotes)
  2. Restart your MCP client after saving the configuration
  3. Check the client logs for connection errors
  4. Verify uv is installed and in your PATH: uv --version
  1. Verify your OCI session hasn’t expired: oci session validate
  2. Re-authenticate if needed: oci session authenticate --profile-name DEFAULT --region <region> --auth security_token
  3. Check your ~/.oci/config file exists and has valid credentials
  4. Ensure the profile name in your MCP config matches your OCI config
Most Oracle MCP servers require Python 3.13+. Verify with:
uv python list
If 3.13 isn’t installed, run:
uv python install 3.13

Additional Resources

Build docs developers (and LLMs) love