oracle/mcp

Repository containing MCP (Model Context Protocol) servers that provides a suite of tools for managing and interacting with Oracle products.

Oracle MCP Server Repository

What it is

  • A collection of reference implementations of Model Context Protocol (MCP) servers. Each server lives under src/ and is written in a different language (Python, Node.js, Java, etc.) to showcase MCP’s language‑agnostic design.

What MCP does

  • MCP is a protocol that standardises how tools, data, and models talk to each other across cloud resources. An MCP server implements a concrete set of Oracle‑cloud‑specific tools and exposes them to any MCP‑compatible client (e.g., Cline, Cursor, MCPHost).

Key components

  • Polyglot servers – e.g. oci-cloud-mcp-server (Python SDK), oci-api-mcp-server (OCI CLI wrapper), oci-javascript-mcp-server, oracle-db-mcp-java-toolkit, etc.
  • Shared authentication module – handles OCI credential resolution and HTTP token exchange for both stdio‑based and HTTP‑based servers.
  • Container support – several servers can be built and run with Podman.
  • Developer tooling – integration with the Model Context Protocol Inspector for debugging, and a Moon‑based mono‑repo workflow (proto, moon run …).

Typical workflow

  1. Install the lightweight Python tool uv and the desired server (e.g. uvx oracle.oci-cloud-mcp-server@latest).
  2. Configure OCI credentials (OCI CLI profile or IAM confidential app for HTTP mode).
  3. Add the server to an MCP client’s JSON config (examples for Cline, Cursor, MCPHost).
  4. Run the server via stdio or as an HTTP service (optionally inside a Podman container).
  5. Use the client (or the Inspector) to invoke Oracle cloud tools, models, or data pipelines through a uniform MCP interface.

Who might use it

  • Developers building AI/ML pipelines that need a consistent way to call Oracle Cloud services (compute, database, storage) from any language.
  • Tool authors who want to expose new Oracle‑specific capabilities via MCP without writing a custom client.
  • Researchers prototyping model‑orchestrated workflows who prefer a reference implementation rather than building a protocol stack from scratch.

Getting started (quick)

# 1. Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# 2. Install Python 3.13 via uv
uv python install 3.13
# 3. (If using OCI) configure OCI CLI profile
oci session authenticate --region=us-phoenix-1 --tenancy-name=my-tenancy
# 4. Run the recommended server
uvx oracle.oci-cloud-mcp-server@latest
# 5. Add the minimal JSON snippet to your MCP client config (replace <profile_name>)

Running in a container

podman run -e ORACLE_MCP_HOST=0.0.0.0 -e ORACLE_MCP_PORT=8888 \
  -e OCI_REGION=us-phoenix-1 -e IDCS_DOMAIN=… \
  -p 127.0.0.1:8888:8888 oracle.oci-cloud-mcp-server:latest

Development workflow

  • Install proto (moonrepo.dev/docs/proto/install).
  • Use moon run <server>:test to run tests, moon run <server>:build to build a distribution, and moon run :lint :lock for repo‑wide linting and lock‑file checks.
  • For Python servers, uv creates an isolated virtual environment from the lockfile; for JavaScript servers, npm is used.

Maturity

  • Stated as proof‑of‑concept / reference – not intended for production. Good for learning, prototyping, and contributing.

License

  • The repository includes a LICENSE.txt file (the exact license isn’t listed in the README, but it is provided with the source).

Bottom line: Oracle’s MCP Server repo is a multi‑language showcase of how to expose Oracle Cloud tooling through the Model Context Protocol, letting AI/ML developers interact with cloud resources in a uniform, language‑agnostic way.

Related

  • Project
  • Project
  • Project
  • Project
  • Project