Skip to main content
Glama
bluegemsk

oracle-mcp-lite

by bluegemsk

oracle-mcp-lite

Free, offline Oracle AWR / ASH report analyzer for AI assistants (Model Context Protocol server, MIT).

Give Claude, Cursor, Codex or any MCP client an AWR or ASH report (HTML or text, Oracle 10g–23ai, single instance or RAC global) and get back: report type and DB version, average active sessions, load profile, top wait events and top SQL — each with a short, version-aware DBA tuning advice — plus a prioritised top-3 tuning_summary. Runs locally; your reports never leave your machine. No Oracle client or database connection needed.

Full version: PL/SQL code review, DDL summary (missing PKs, unindexed FKs), Data Pump .dmp inspection and more — see https://bluegem.sk/oracle-mcp-lite.html

Install

pip install oracle-mcp-lite
oracle-mcp-lite --list-tools

Client config (Claude Desktop / Cursor / Gemini CLI):

{"mcpServers": {"oracle-awr": {"command": "oracle-mcp-lite"}}}

Claude Code: claude mcp add oracle-awr -- oracle-mcp-lite

Related MCP server: oracledb-mcp

Use

"Analyze the AWR report at /reports/awr_0900.html and tell me what to fix first."

Example tuning_summary (synthetic report):

1. ARCH wait on SENDREQ (41.7%): Redo shipping to the standby is slow: check network bandwidth/latency to the
   standby and the transport mode; ASYNC transport removes it from the commit path.
2. CPU time (27.8%): Find the top SQL by CPU / buffer gets and cut logical I/O ...
3. SQL aaaaaaaaaaaa1 (25.0%): Slow per execution (1,800.0 s/exec): check the plan with DBMS_XPLAN.DISPLAY_AWR ...

Development

pip install -e '.[dev]' && pytest && python -m build

Tests use synthetic fixtures only.

Not affiliated with Oracle. Oracle is a trademark of Oracle Corporation.

Available Tools

1 tool
awr_analyzeB

Analyze an Oracle AWR or ASH report (HTML or text, 10g-23ai, incl. RAC global). Returns DB info, load profile, top wait events and top SQL with tuning advice, recommendations and a top-3 tuning_summary.

NameRequiredDescriptionDefault
pathNo
contentNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden; it does disclose the return payload (DB info, load profile, top waits, top SQL, tuning advice, recommendations, top-3 summary), which is valuable. However it says nothing about whether the operation is purely read-only, what happens on unparseable input, size limits, or that the generated advice is advisory rather than an executed change.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, with the resource and supported formats front-loaded and the return contents enumerated in a single compact clause. Every element earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because there is no output schema, the description had to describe return values and it does so competently. But with no annotations and zero schema coverage, an agent is still missing the input-mode contract and safety profile, which for a two-optional-parameter analysis tool is a meaningful gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and both parameters (path, content) are entirely undocumented in the schema, so the description must compensate — yet it never mentions either parameter. An agent cannot tell from the description whether 'path' is a filesystem path or URL, whether 'content' is raw report text, or how the two combine given both are optional and neither is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (analyze an Oracle AWR or ASH report) plus the accepted formats (HTML or text), version range (10g-23ai) and RAC global scope. No sibling tools exist, so no differentiation is needed, and the sentence is unambiguous about what the tool consumes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use guidance, and no mention of the two invocation modes (path vs content) or how to obtain a report first. The only usage hint is implicit in the noun phrase 'AWR or ASH report'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.1
    • First observedawr_analyze

TDQS

B3.4/5.0

Scored across 1 tool

Disambiguation5/5

With only a single tool there is no possibility of confusion or misselection. The purpose (analyze AWR/ASH reports) is clearly stated and unambiguous.

Naming Consistency4/5

The lone name awr_analyze follows a clear noun_verb snake_case pattern, though a single data point makes consistency trivially satisfied rather than demonstrated across a set.

Tool Count2/5

A one-tool surface is too thin for a database diagnostics server; everything hinges on the user already having a report file. Typical tuning workflows (connect, list snapshots, fetch report) have no supporting tools.

Completeness3/5

The analysis itself appears thorough (DB info, waits, top SQL, recommendations), but the lifecycle is a dead end: there is no tool to retrieve or generate an AWR/ASH report from a database, and no follow-up tools for deeper drill-down.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Universal database copilot for diagnostics, operations, and performance analysis via MCP and CLI.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server for Oracle SQL performance diagnostics and AWR analysis, compatible with any MCP client that supports stdio or HTTP transports.
    -