Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Oracle DB MCP Servershow me the top 10 customers by total orders"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Oracle DB MCP Server
A Model Context Protocol (MCP) server for Oracle Database connectivity. This server enables AI tools like Cursor, Claude Desktop, and other MCP-compatible clients to interact with Oracle databases.
Features
Multiple Database Connections: Configure and manage multiple named Oracle database connections
Thin & Thick Mode Support: Works with Oracle's thin driver (no client required) or thick mode (with Oracle Instant Client)
Query Execution: Execute SELECT queries with result formatting
DML Operations: Execute INSERT, UPDATE, DELETE with safety checks
PL/SQL Support: Execute PL/SQL blocks, create procedures/functions
Schema Browsing: List tables, views, procedures, describe table structures
Stored Procedures: Execute stored procedures with input/output parameters
Transaction Management: Commit and rollback support
Safety Features: Read-only mode, dangerous query detection, automatic warnings
Installation
Using npx (Recommended)
No installation required. Configure your MCP client to run:
Local Installation
Then run:
Configuration
Configuration File (connections.json)
Create a configuration file with your database connections:
Connection Options
Each connection supports:
Option | Description |
| Unique identifier for the connection |
| Database server hostname |
| Port number (default: 1521) |
| Oracle service name |
| Oracle SID (alternative to serviceName) |
| Full connection string (alternative to host/port/service) |
| Database username |
| Database password (direct) |
| Environment variable containing password |
|
|
Configuration File Locations
The server searches for configuration in this order:
ORACLE_MCP_CONFIGenvironment variable./config/connections.json./connections.json~/.oracle-mcp/connections.json
Environment Variables
For simple single-connection setup:
MCP Client Configuration
Cursor
Add to your Cursor MCP settings (.cursor/mcp.json):
Claude Desktop
Add to your Claude Desktop config:
Available Tools
Connection Management
Tool | Description |
| List all configured connections with status |
| Test connectivity and get database info |
| Establish a connection |
| Close a connection |
Query Execution
Tool | Description |
| Execute SELECT queries |
| Execute INSERT/UPDATE/DELETE |
| Execute PL/SQL blocks or DDL |
| Call stored procedures |
Schema Browsing
Tool | Description |
| List tables and views |
| Get column, constraint, index info |
| List procedures, functions, packages |
| Get source code of PL/SQL objects |
| Get procedure parameters |
| Get query execution plan |
Transaction Management
Tool | Description |
| Commit current transaction |
| Rollback current transaction |
Safety Features
Read-Only Mode
Connections configured as readonly:
Block all DML operations (INSERT, UPDATE, DELETE)
Block PL/SQL execution
Allow only SELECT queries
Dangerous Query Detection
The server warns or blocks:
DROP statements
TRUNCATE statements
UPDATE/DELETE without WHERE clause
ALTER SYSTEM commands
Oracle Client Modes
Thin Mode (Default)
No Oracle client installation required. Works with:
Oracle Database 12.1 and later
Oracle Cloud databases
Thick Mode
Requires Oracle Instant Client. Enable in config:
Required for:
Oracle Database versions before 12.1
Advanced features (LDAP, Kerberos, etc.)
Some data types (BFILE, etc.)
Development
Building from Source
Running in Development
Testing
License
MIT
Author
Gihan Sundarapperuma gihan213@gmail.com