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.
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 identifiercordra://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 querytype- Optional filter by object typelimit- Number of results per page (default: 1)page_num- Page number to retrieve, 0-based (default: 0)
count_objects- Count the total number of objects matching a query.query- Lucene/Solr compatible search querytype- Optional filter by object type
Configuration
The MCP server can be configured using environment variables:
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)LOGLEVEL- Logging level (default:INFO, options:DEBUG,INFO,WARNING,ERROR,CRITICAL)
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cordra_mcp-1.2.1.tar.gz.
File metadata
- Download URL: cordra_mcp-1.2.1.tar.gz
- Upload date:
- Size: 2.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e37c39efa06b2aaf7cd777665102a7216c3e7efd3c25001ed667ad7337f5942
|
|
| MD5 |
194b418128d1926ac6f3a3ce26b68366
|
|
| BLAKE2b-256 |
e46cd78b35f236c24208eb4bc9b3b6a56c832604fb5453fa7dd96e58a856cf62
|
Provenance
The following attestation bundles were made for cordra_mcp-1.2.1.tar.gz:
Publisher:
ci.yml on dnlbauer/cordra-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cordra_mcp-1.2.1.tar.gz -
Subject digest:
1e37c39efa06b2aaf7cd777665102a7216c3e7efd3c25001ed667ad7337f5942 - Sigstore transparency entry: 736676929
- Sigstore integration time:
-
Permalink:
dnlbauer/cordra-mcp@f6bfb14b29dac3a0f091e978471024d1ed22b1ad -
Branch / Tag:
refs/tags/v1.2.1 - Owner: https://github.com/dnlbauer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@f6bfb14b29dac3a0f091e978471024d1ed22b1ad -
Trigger Event:
push
-
Statement type:
File details
Details for the file cordra_mcp-1.2.1-py3-none-any.whl.
File metadata
- Download URL: cordra_mcp-1.2.1-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
19e216ae4273252fc765589157d51e5931875cbd0a0802667491b816fa6d094e
|
|
| MD5 |
41b5a2b3f2927b4fea78b951cf2c0ad9
|
|
| BLAKE2b-256 |
a6fabea58007933896e3ab5174ed3f90346f0b628c14fd8ef107e796ef6ba725
|
Provenance
The following attestation bundles were made for cordra_mcp-1.2.1-py3-none-any.whl:
Publisher:
ci.yml on dnlbauer/cordra-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cordra_mcp-1.2.1-py3-none-any.whl -
Subject digest:
19e216ae4273252fc765589157d51e5931875cbd0a0802667491b816fa6d094e - Sigstore transparency entry: 736676933
- Sigstore integration time:
-
Permalink:
dnlbauer/cordra-mcp@f6bfb14b29dac3a0f091e978471024d1ed22b1ad -
Branch / Tag:
refs/tags/v1.2.1 - Owner: https://github.com/dnlbauer
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@f6bfb14b29dac3a0f091e978471024d1ed22b1ad -
Trigger Event:
push
-
Statement type: