Skip to main content

Inspired by: https://github.com/awslabs/mcp/tree/main/src/aws-documentation-mcp-server

OCI Documentation MCP Server

Forked from jin38324/oci-documentation-mcp-server
Many thanks to the original author for the great work!

Model Context Protocol (MCP) server for OCI Documentation

This MCP server provides tools to search for content, and access OCI documentation.

Features

  • Read Documentation: Fetch and convert OCI documentation pages to markdown format
  • Search Documentation: Search OCI documentation using Oracle Documentation Search API
  • Multiple Transport Modes: Supports stdio, SSE, and Streamable HTTP transport protocols

Prerequisites

Installation Requirements

  1. Install uv from Astral or the GitHub README
  2. Install Python 3.10 or newer using uv python install 3.10 (or a more recent version)

Installation

Option 1: Streamable HTTP (Recommended for OpenWebUI, Cherry Studio, etc.)

{
  "mcpServers": {
    "oci-documentation-mcp-server": {
      "type": "streamable-http",
      "url": "http://localhost:8000/mcp"
    }
  }
}

Option 2: stdio (For Cursor, Claude Desktop, etc.)

{
  "mcpServers": {
    "oci-documentation-mcp-server": {
      "command": "uvx",
      "args": [
        "--from",
        "oci-documentation-mcp-server@latest",
        "python",
        "-m",
        "oci_documentation_mcp_server.server",
        "--transport",
        "stdio"
      ],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    }
  }
}

Or the simpler version:

{
  "mcpServers": {
    "oci-documentation-mcp-server": {
      "command": "uvx",
      "args": ["oci-documentation-mcp-server@latest", "--transport", "stdio"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    }
  }
}

Basic Usage

Example:

  • In Cursor ask: Write a function to download files for OCI Object Storage.

Cursor_MCP

Running the Server

Local Development

# Install dependencies
make install

# Run with Streamable HTTP (default, port 8000)
make run

# Run with custom port
make run PORT=9000

# Run with stdio transport
make run-stdio

# Run with SSE transport
make run-sse

Docker Deployment

# Build Docker image
make docker-build

# Run Docker container
make docker-run PORT=8000

# Stop container
make docker-stop

Command Line Options

uv run oci_documentation_mcp_server --help

# Options:
#   --transport {stdio,sse,streamable-http}
#                         Transport protocol to use (default: streamable-http)
#   --host HOST           Host to bind the server to (default: 0.0.0.0)
#   --port PORT           Port to run the server on (default: 8000)
#   --path PATH           Path for the MCP endpoint (default: /mcp)

Integration with OpenWebUI

OpenWebUI requires mcpo as a proxy to use MCP servers:

Step 1: Start the MCP Server

make run PORT=8001

Step 2: Run mcpo Proxy

pip install mcpo

mcpo --port 8000 --api-key "your-secret-key" \
  --server-type "streamable-http" \
  -- http://127.0.0.1:8001/mcp

Step 3: Configure OpenWebUI

  • Go to Settings → Tools/Functions
  • Add new tool server
  • URL: http://localhost:8000
  • API Key: your-secret-key

Tools

read_documentation

Fetches an OCI documentation page and converts it to markdown format.

read_documentation(url: str, max_length: int = 5000, start_index: int = 0) -> str

Parameters:

  • url: URL of the OCI documentation page (must be from docs.oracle.com and end with .htm or .html)
  • max_length: Maximum number of characters to return (default: 5000)
  • start_index: Start index for pagination (default: 0)

search_documentation

Searches OCI documentation using the Oracle Documentation Search API.

search_documentation(search_phrase: str, limit: int = 3) -> list[SearchResult]

Parameters:

  • search_phrase: Search phrase to use
  • limit: Maximum number of results to return (1-10, default: 3)

Returns:

  • List of SearchResult objects with title, url, and description fields

Development

# Install dev dependencies
make dev

# Run tests
make test

# Run linting
make lint

# Format code
make format

# Clean build artifacts
make clean

License

Apache License 2.0

Metadata

Release files for oracle-oci-documentation-mcp-server 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for oracle-oci-documentation-mcp-server 1.0.0
File Size Uploaded Provenance
oracle_oci_documentation_mcp_server-1.0.0.tar.gz 1.4 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for oracle-oci-documentation-mcp-server 1.0.0
File Interpreter ABI Platform
oracle_oci_documentation_mcp_server-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.4 MB

Release files / oracle_oci_documentation_mcp_server-1.0.0.tar.gz

Download URL oracle_oci_documentation_mcp_server-1.0.0.tar.gz
Size 1.4 MB
Tags Source
SHA-256 checksum
How to use checksums
74dd89c30f2c8c1f850d7b33a991e75af952796da2dbbd33cd9668ef739952f5
BLAKE2b-256 checksum
How to use checksums
c31694fa3367c3858ed32a252eb92ffb788a17c42a2188377ebfdf8e25aec31a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.

Transparency log

Release files / oracle_oci_documentation_mcp_server-1.0.0-py3-none-any.whl

Download URL oracle_oci_documentation_mcp_server-1.0.0-py3-none-any.whl
Size 11.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cfab4e26a49b254c4ef1e6a5e8165be90e49e89a2c9abc97407d262a380abf5c
BLAKE2b-256 checksum
How to use checksums
a739008ef157335b86d3716d58bf3c34999df9525d6c387e31bcfe91cf867238
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.

Transparency log

Security for oracle-oci-documentation-mcp-server 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for oracle_oci_documentation_mcp_server-1.0.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 11, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page