Skip to main content

What are MCP Clients?

MCP (Model Context Protocol) clients are applications that connect to MCP servers to access tools, resources, and capabilities. These clients enable AI assistants and development environments to interact with Oracle Cloud Infrastructure and other services through standardized MCP servers.

Supported Clients

The Oracle MCP Servers support several popular MCP-compatible clients:

Cline

VS Code extension for AI-powered development

Cursor

AI-first code editor with MCP integration

MCPHost

Command-line MCP client for local AI models

Configuration Basics

All MCP clients require a JSON configuration file that specifies:
  • Server name: A unique identifier for the MCP server
  • Transport type: How the client communicates with the server (stdio, HTTP, etc.)
  • Command: The executable to run the server
  • Arguments: Command-line arguments for the server
  • Environment variables: Configuration like OCI profile and log levels

Standard Configuration Structure

{
  "mcpServers": {
    "oracle-oci-api-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "oracle.oci-api-mcp-server@latest"
      ],
      "env": {
        "OCI_CONFIG_PROFILE": "<profile_name>",
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    }
  }
}

Transport Types

Oracle MCP Servers support multiple transport mechanisms:

stdio (Standard Input/Output)

The most common transport method. The client launches the server as a subprocess and communicates via stdin/stdout.
{
  "type": "stdio",
  "command": "uvx",
  "args": ["oracle.oci-api-mcp-server@latest"]
}

HTTP Streaming

For running servers as standalone HTTP services. Start the server separately, then connect:
ORACLE_MCP_HOST=127.0.0.1 ORACLE_MCP_PORT=8888 uvx oracle.oci-api-mcp-server
Client configuration:
{
  "type": "streamableHttp",
  "url": "http://127.0.0.1:8888/mcp"
}
The type attribute differs across clients. Some use http while others (like Cline) expect streamableHttp.

Running with Podman

All Oracle MCP Servers can run in containers using podman. This provides isolation and consistent environments.

Prerequisites

  1. Install podman
  2. Build the container image:
SUBDIRS=src/oci-api-mcp-server make containerize

Podman Configuration

{
  "type": "stdio",
  "command": "podman",
  "args": [
    "run", "-i", "--rm", 
    "-v", "/path/to/your/.oci:/app/.oci",
    "oracle.oci-api-mcp-server:latest"
  ],
  "env": {
    "FASTMCP_LOG_LEVEL": "INFO"
  }
}
Ensure the key_file field in /path/to/your/.oci/config uses the ~ character so paths resolve both inside and outside the container:
key_file=~/.oci/oci_api_key.pem
security_token_file=~/.oci/sessions/DEFAULT/token

Environment Variables

OCI_CONFIG_PROFILE

Specifies which OCI CLI profile to use for authentication. Set this to the profile name you configured during authentication.
"env": {
  "OCI_CONFIG_PROFILE": "DEFAULT"
}

FASTMCP_LOG_LEVEL

Controls the verbosity of server logs:
  • ERROR: Only critical errors (recommended for production)
  • INFO: General information and errors
  • DEBUG: Detailed debugging information
"env": {
  "FASTMCP_LOG_LEVEL": "ERROR"
}

Next Steps

Choose your MCP client and follow the setup guide:

Configure Cline

Set up the Cline VS Code extension

Configure Cursor

Configure Cursor IDE for MCP

Configure MCPHost

Set up MCPHost with Ollama

Build docs developers (and LLMs) love