Creativity · MCP — server

MCP Oracle Server

The MCP Oracle Server connects to Oracle Database via the oracledb Python/Node driver (or JDBC in JVM variants) and exposes read, write, and metadata tools. It's commonly used for Oracle Autonomous Database, Oracle 23ai with AI Vector Search, and traditional 19c workloads — wrapped behind parameterised statements to block SQL injection.

MCP facts

Kind
server
Ecosystem
anthropic-mcp
Language
Python (oracledb) / Node (node-oracledb)
Transports
stdio

Capabilities

  • Tools: run_query, list_tables, describe_table, execute_dml, vector_search (23ai)
  • Resources: oracle://schema/{owner}/table/{name}
  • Auth: Oracle Wallet (mTLS) for Autonomous DB; basic for on-prem

Install

pipx install mcp-server-oracle

Configuration

{
  "mcpServers": {
    "oracle": {
      "command": "mcp-server-oracle",
      "env": {
        "ORA_USER": "${ORA_USER}",
        "ORA_PASSWORD": "${ORA_PASSWORD}",
        "ORA_DSN": "db.adb.ap-mumbai-1.oraclecloud.com/acme_high.adb.oraclecloud.com",
        "ORA_WALLET": "/etc/oracle/wallet"
      }
    }
  }
}

Frequently asked questions

Does it support Oracle AI Vector Search?

Oracle Database 23ai adds the VECTOR type and vector search primitives. MCP Oracle servers that target 23ai expose a vector_search tool that accepts an embedding plus a table/column and returns top-K rows.

How is SQL injection prevented?

All tools use bind variables — the tool's input schema separates the statement from parameters. The LLM never concatenates user input into a raw SQL string.

What about Oracle APEX apps?

APEX apps expose REST Data Services (ORDS). For APEX-driven automation, the ORDS MCP pattern is often more convenient than raw SQL.

Sources

  1. Oracle Database 23ai AI Vector Search — accessed 2026-04-20
  2. python-oracledb — accessed 2026-04-20
  3. Model Context Protocol — accessed 2026-04-20