Skip to content

Add OCI Vision MCP server - #365

Merged
krisrice merged 1 commit into
oracle:mainfrom
antimverma:antverma/add-oci-vision-mcp
Jul 21, 2026
Merged

Add OCI Vision MCP server#365
krisrice merged 1 commit into
oracle:mainfrom
antimverma:antverma/add-oci-vision-mcp

Conversation

@antimverma

Copy link
Copy Markdown
Member

Description

Adds the OCI Vision MCP server under src/oci-vision-mcp-server.

This server provides stdio MCP tools for OCI Vision image analysis and related Object Storage image workflows, including image analysis, OCR, object detection, face detection, async image jobs, Object Storage upload/list/fetch, stored result lookup, and runtime configuration status.

The implementation follows the repository MCP server structure and public packaging expectations:

  • Adds pyproject.toml, uv.lock, README.md, CHANGELOG.md, LICENSE.txt, Containerfile, and oracle/ package source.
  • Exposes the package entry point as oracle.oci-vision-mcp-server.
  • Supports stdio transport only.
  • Uses OCI CLI-compatible session-token authentication only.
  • Documents that HTTP, streamable HTTP, OAuth, IDCS bearer-token validation, /mcp, and /.well-known/* endpoints are not exposed.
  • Adds OCI SDK additional_user_agent telemetry derived from package metadata.
  • Includes unit/integration tests with coverage threshold set to 90%.

Fixes: N/A

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested?

Validated locally from src/oci-vision-mcp-server:

  • uv sync --locked --all-extras --dev
  • uv run pytest --cov=. --cov-branch --cov-report=term-missing
    • 236 passed, 2 skipped
    • Coverage: 91.31%
  • uv build
    • Successfully built sdist and wheel.
  • Wheel content inspection
    • Confirmed wheel metadata and console entry point are present.
    • Confirmed test files are excluded from the wheel.
  • MCP client smoke testing with Codex using the locally built wheel
    • Registered the server as a local stdio MCP server.
    • Verified detect_faces completed successfully on a local image.
    • Verified detect_text completed successfully on a local screenshot and returned OCR lines.
  • Best-practices validation
    • UPL headers present on Python source and Containerfile.
    • pyproject.toml metadata and entry point validated.
    • stdio-only behavior documented and tested.
    • OCI SDK additional user-agent derivation tested.

Test Configuration:

  • OS: macOS
  • Python: 3.13.2
  • Package manager: uv
  • MCP transport: stdio
  • OCI auth mode: OCI CLI-compatible session-token profile

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules (N/A)

@oracle-contributor-agreement oracle-contributor-agreement Bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Jul 16, 2026
@krisrice

Copy link
Copy Markdown
Member

Automated review result: needs security/manual review.

Reason:

  • This adds a new OCI Vision MCP server with authentication, caller-controlled URL image retrieval, Object Storage reads and uploads, stored-result replay, and Vision control-plane calls.

Manual review should verify server-side authorization, URL/SSRF protections, object bounds and pagination, upload confirmation/audit behavior, untrusted OCR/backend content handling, and secret/customer-data redaction. No automated approval or merge was performed.

@krisrice krisrice left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maintainer-directed merge after review: GitHub reports the PR mergeable, all reported checks are passing, and the repository maintainer explicitly requested merging all mergeable PRs.

@krisrice
krisrice merged commit 7b05117 into oracle:main Jul 21, 2026
30 checks passed
@dustin-sale

Copy link
Copy Markdown
Contributor

@antimverma can you please resubmit this PR? It was merged before we had a chance to complete review and I have since backed it out with in PR 389. Thanks.

@antimverma

antimverma commented Jul 30, 2026

Copy link
Copy Markdown
Member Author

@antimverma can you please resubmit this PR? It was merged before we had a chance to complete review and I have since backed it out with in PR 389. Thanks.

@dustin-sale @krisrice Resubmitted the OCI Vision MCP PR.
Can we please review/approve the same.
#397

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants