Get the FREE Ultimate OpenClaw Setup Guide →

oracle

MCP Server for working with large Oracle databases

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio danielmeppiel-oracle-mcp-server docker run -i --rm -e ORACLE_CONNECTION_STRING -e TARGET_SCHEMA -e CACHE_DIR -e THICK_MODE dmeppiel/oracle-mcp-server \
  --env CACHE_DIR=".cache" \
  --env THICK_MODE="" \
  --env TARGET_SCHEMA="" \
  --env READ_ONLY_MODE="1" \
  --env ORACLE_CLIENT_LIB_DIR="" \
  --env ORACLE_CONNECTION_STRING="<db-username>/${input:db-password}@<host>:1521/<service-name>"

How to use

This MCP server provides contextual Oracle database schema information to AI assistants. It caches and serves table schemas, supports targeted lookups for individual tables, and can search for tables by name patterns. It also exposes relationship information via foreign keys and communicates vendor-specific details to MCP-enabled tools such as GitHub Copilot in VSCode, Claude, and ChatGPT. To use it, configure the MCP client (in your editor or tool) to point at the Oracle MCP server and enable agent mode so that Copilot can access the server’s tools through the chat interface. The recommended integration path is via Docker, which bundles the necessary Oracle client libraries and the MCP server runtime.

How to install

Prerequisites:

  • Docker installed and running, or Python 3.12+ with uv (for local UV option)
  • Oracle database access credentials
  • Optional: Oracle Instant Client libraries if running in non-docker mode or enabling thick mode

Option A: Run via Docker (recommended)

  1. Ensure Docker is running.
  2. Create a configuration snippet in your editor (example shown in the README) and set environment variables, e.g., ORACLE_CONNECTION_STRING, TARGET_SCHEMA, CACHE_DIR, THICK_MODE, READ_ONLY_MODE.
  3. Start the container using the provided mcp_config (or run a similar docker command): docker run -i --rm
    -e ORACLE_CONNECTION_STRING="<db-username>/${input:db-password}@<host>:1521/<service-name>"
    -e TARGET_SCHEMA=""
    -e CACHE_DIR=".cache"
    -e THICK_MODE=""
    -e READ_ONLY_MODE="1"
    dmeppiel/oracle-mcp-server

Option B: Run via UV (local installation)

  1. Prerequisites: Python 3.12+, Oracle instant client (for oracledb), and access to your Oracle DB.
  2. Install UV and clone the repository: curl -LsSf https://astral.sh/uv/install.sh | sh

    or via PowerShell on Windows

    irm https://astral.sh/uv/install.ps1 | iex
  3. Install dependencies in a virtual environment: uv venv source .venv/bin/activate # macOS/Linux .venv\Scripts\activate # Windows uv pip install -e .
  4. Run the MCP server locally: uv run main.py
  5. Configure the MCP client (as shown in the README) to point at your uv-based server: { "servers": { "oracle": { "command": "/path/to/your/.local/bin/uv", "args": ["run", "main.py"], "env": { "ORACLE_CONNECTION_STRING": "<db-username>/${input:db-password}@<host>:1521/<service-name>", "TARGET_SCHEMA": "", "CACHE_DIR": ".cache", "THICK_MODE": "", "ORACLE_CLIENT_LIB_DIR": "", "READ_ONLY_MODE": "1" } } } }

Note: Adjust ORACLE_CONNECTION_STRING, TARGET_SCHEMA, and cache/mode options to match your environment. Always use READ_ONLY_MODE=1 by default for security.

Additional notes

Tips and gotchas:

  • The ORACLE_CONNECTION_STRING is the primary credential string; keep it secure and avoid exposing it in shared settings.
  • TARGET_SCHEMA defaults to your user schema if left empty.
  • CACHE_DIR determines where local schema caches are stored; leave it as .cache or point to a persistent directory for faster restarts.
  • THICK_MODE enables a more feature-complete client setup (requires Oracle client libraries); use as needed.
  • READ_ONLY_MODE is enabled by default (1) to prevent writes; set to 0 only if you truly need write access.
  • If using Docker, ensure the container has network access to your Oracle DB and that the host/port in ORACLE_CONNECTION_STRING is reachable.
  • For large Oracle databases, expect an initial caching period where the server builds the local schema cache; subsequent lookups will be fast.

Related MCP Servers

Sponsor this space

Reach thousands of developers