Skip to main content
Glama
Kuass

oracle-db-mcp

by Kuass

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ORACLE_THICK_MODENoSet to 'true' to enable Thick mode (requires Oracle Client installation)
ORACLE_CLIENT_LIB_DIRNoPath to Oracle Instant Client library directory (required if ORACLE_THICK_MODE is true)
ORACLE_CONNECTION_STRINGYesOracle database connection string in format username/password@hostname:port/service_name

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_tablesB

Get a list of all tables in the oracle database with optional filtering and pagination

Args:
    pattern (string, optional): Filter tables by name pattern (case-insensitive)
    limit (int, optional): Maximum number of tables to return. Default is 50
    offset (int, optional): Number of tables to skip. Default is 0
list_schemasB

Get a list of all schemas in the oracle database

Args:
    None
list_objectsA

List database objects (tables, views, sequences, packages) in a schema

Args:
    schema_name (string, optional): The schema name to list objects from. If not provided, lists objects from current user's schema
    object_type (string, optional): Filter by object type (TABLE, VIEW, SEQUENCE, PACKAGE, FUNCTION, PROCEDURE)
    limit (int, optional): Maximum number of objects to return. Default is 100
get_object_detailsC

Get detailed information about a database object

Args:
    object_name (string): The name of the object
    object_type (string, optional): The type of object (TABLE, VIEW, SEQUENCE). Default is TABLE
get_top_queriesB

Get the slowest queries based on elapsed time

Args:
    limit (int, optional): Number of queries to return. Default is 10
explain_queryC

Get the execution plan for a SQL query

Args:
    query (string): The SQL query to explain
analyze_db_healthB

Perform comprehensive database health checks including tablespace usage, session status, wait events, and invalid objects

Args:
    include_all_invalid (bool, optional): If True, return all invalid objects. If False, limit to first 20. Default is False
describe_tableC

Get a description of a table in the oracle database"

Args:
    table_name (string): The name of the table to describe
read_queryB

Execute SELECT queries to read data from the oracle database

Args:
    query (string): The SELECT query to execute
    max_rows (int, optional): Maximum number of rows to return. Default is 100
exec_dml_sqlC

Execute insert/update/delete/truncate to the oracle database

Args:
    query (string): The sql to execute
exec_ddl_sqlC

Execute create/drop/alter to the oracle database

Args:
    query (string): The sql to execute
exec_pro_sqlC

Execute PL/SQL code blocks including stored procedures, functions and anonymous blocks

Args:
    execsql (string): The PL/SQL code block to execute

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 12 tools

Disambiguation4/5

Most tools have clearly distinct purposes, especially the SQL execution family (read_query, exec_dml_sql, exec_ddl_sql, exec_pro_sql) which is well separated by SQL type. However, describe_table overlaps with get_object_details when object_type=TABLE, and list_tables overlaps with list_objects using object_type=TABLE; descriptions help but misselection is possible.

Naming Consistency4/5

All tool names use snake_case and a verb_noun pattern, which is consistent. The exec_* prefix uses an abbreviation while other tools use full verbs (get, list, read, describe, explain, analyze), a minor deviation.

Tool Count5/5

12 tools is well within the ideal 3-15 range for a database server, and each tool covers a distinct operation or SQL category. No obvious redundancy or bloat.

Completeness4/5

Core CRUD and lifecycle operations are covered: listing schemas/tables/objects, describing tables, reading and executing DML/DDL/PL/SQL, explaining queries, and health checks. Minor gaps include index/constraint introspection and explicit transaction control, but agents can likely work around these.

Maintenance

ActivityInactive
ResponsivenessNo issues