Skip to main content

MCP server for Cordra digital object repository

Project description

Cordra MCP Server

Cordra is a configurable digital object repository system that stores digital objects as JSON documents with associated metadata and optional binary payloads. This Model Context Protocol (MCP) server provides AI assistants with read-only access to explore and understand Cordra repositories. This allows AI systems to quickly understand the data model and schema structure of a Cordra repository and to explore digital objects and their relationships.

Example

Features

  • Read-Only Access: All operations are strictly read-only, ensuring safe exploration without risk of data modification or corruption.
  • Schema Discovery: Discover and retrieve schema definitions for each type in the repository.
  • Individual Object Retrieval: Retrieve specific digital objects by their handle identifier with complete metadata.

MCP Architecture

Resources

  • cordra://objects/{prefix}/{suffix} - Retrieve a specific object by its handle identifier
  • cordra://schemas/{schema_name} - Schema definition for a specific type.
  • cordra://design - Design document containing the overall structure and configuration of the Cordra repository.

Tools

  • search_objects - Search for digital objects using a query string with pagination support.
    • query - Lucene/Solr compatible search query
    • type - Optional filter by object type
    • limit - Number of results per page (default: 1)
    • page_num - Page number to retrieve, 0-based (default: 0)

Configuration

The MCP server can be configured using environment variables with the CORDRA_ prefix:

  • CORDRA_BASE_URL - Cordra server URL (default: https://localhost:8443)
  • CORDRA_USERNAME - Username for authentication (optional)
  • CORDRA_PASSWORD - Password for authentication (optional)
  • CORDRA_VERIFY_SSL - SSL certificate verification (default: true)
  • CORDRA_TIMEOUT - Request timeout in seconds (default: 30)

Usage

Run the MCP server:

uv run mcp-cordra

Claude Code

You can add this MCP to Claude Code by registering it in the settings of your project or creating a .mcp.json file in your workdir:

Example using the docker build:

{
  "mcpServers": {
    "cordra": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "CORDRA_BASE_URL",
        "ghcr.io/dnlbauer/cordra-mcp:latest"
      ],
      "env": {
        "CORDRA_BASE_URL": "https://cordra.example.de"
      }
    }
  }
}

Example using the python package with uvx:

{
  "mcpServers": {
    "cordra": {
      "command": "uvx",
      "args": [
        "cordra-mcp"
      ],
      "env": {
        "CORDRA_BASE_URL": "https://cordra.example.de"
      }
    }
  }
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cordra_mcp-1.1.1.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cordra_mcp-1.1.1-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file cordra_mcp-1.1.1.tar.gz.

File metadata

  • Download URL: cordra_mcp-1.1.1.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for cordra_mcp-1.1.1.tar.gz
Algorithm Hash digest
SHA256 f4f15919e5b9660c2f2431242ef4f8fcfedad75bab835b20e265190a394f53b3
MD5 7df64d11f79f774d50a63580373aa56f
BLAKE2b-256 acf75a227b7eb85b37515ce2202f2e7ed9cfc520fedf3641f730947b74202d2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cordra_mcp-1.1.1.tar.gz:

Publisher: ci.yml on dnlbauer/cordra-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cordra_mcp-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: cordra_mcp-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for cordra_mcp-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c5a322c14a13c6ad78d9a25af2cea665652babc6e6eae19780e5799960463272
MD5 f7dbac3f8f0dc460d09c91e7ada525d4
BLAKE2b-256 f1026943ba464678aa122298a2a74930915638eb88ed168cfd9f63a5021c8f99

See more details on using hashes here.

Provenance

The following attestation bundles were made for cordra_mcp-1.1.1-py3-none-any.whl:

Publisher: ci.yml on dnlbauer/cordra-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page