9 Commits

Author SHA1 Message Date
Daniel Bauer
1eb7285132 chore: update lockfile 2025-07-09 09:53:44 +02:00
Daniel Bauer
906e387192 ci: assert lock file has been updated 2025-07-09 09:53:19 +02:00
Daniel Bauer
0a03fec5b8 fix: synchronize version 2025-07-09 09:49:17 +02:00
Daniel Bauer
e541a27d9f ci: validate version and only publish when tagged 2025-07-09 09:46:49 +02:00
Daniel Bauer
20b2f1b219 doc: add example gif 2025-07-08 13:58:13 +02:00
Daniel Bauer
38e1118167 chore: update lock file for version 1.1.0
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-05 12:53:39 +02:00
Daniel Bauer
d04bfd2f90 Merge branch 'main' of github.com:dnlbauer/cordra-mcp 2025-07-05 12:48:18 +02:00
Daniel Bauer
2499654bf4 bump: version 1.1.0
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-05 12:48:02 +02:00
Daniel Bauer
3e8205c098 Merge pull request #1 from dnlbauer/fix-schema-pagination
Fix schema pagination and enhance search functionality
2025-07-05 12:43:55 +02:00
6 changed files with 30 additions and 7 deletions

View File

@@ -3,6 +3,7 @@ name: CI
on: on:
push: push:
branches: [ main ] branches: [ main ]
tags: [ 'v*' ]
pull_request: pull_request:
branches: [ main ] branches: [ main ]
@@ -25,7 +26,7 @@ jobs:
run: uv python install ${{ matrix.python-version }} run: uv python install ${{ matrix.python-version }}
- name: Install dependencies - name: Install dependencies
run: uv sync --dev run: uv sync --dev --locked
- name: Run ruff linting - name: Run ruff linting
run: uv run ruff check run: uv run ruff check
@@ -36,13 +37,33 @@ jobs:
- name: Run tests - name: Run tests
run: uv run pytest run: uv run pytest
- name: Validate version consistency
# Ensure that the version is consistent across files and matches the tag if applicable
run: |
PYPROJECT_VERSION=$(python3 -c "import tomllib; print(tomllib.load(open('pyproject.toml', 'rb'))['project']['version'])")
INIT_VERSION=$(python3 -c "import re; print(re.search(r'__version__ = \"(.+?)\"', open('src/cordra_mcp/__init__.py').read()).group(1))")
if [ "$PYPROJECT_VERSION" != "$INIT_VERSION" ]; then
echo "Version mismatch: pyproject.toml=$PYPROJECT_VERSION, __init__.py=$INIT_VERSION"
exit 1
fi
# Additionally check tag version if this is a tag build
if [[ "$GITHUB_REF" == refs/tags/v* ]]; then
TAG_VERSION=${GITHUB_REF#refs/tags/v}
if [ "$TAG_VERSION" != "$PYPROJECT_VERSION" ]; then
echo "Version mismatch: tag=$TAG_VERSION, pyproject.toml=$PYPROJECT_VERSION"
exit 1
fi
fi
docker: docker:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: test needs: test
permissions: permissions:
contents: read contents: read
packages: write packages: write
if: github.ref == 'refs/heads/main' && github.event_name == 'push' if: startsWith(github.ref, 'refs/tags/v')
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@@ -63,7 +84,7 @@ jobs:
with: with:
images: ghcr.io/${{ github.repository_owner }}/cordra-mcp images: ghcr.io/${{ github.repository_owner }}/cordra-mcp
tags: | tags: |
type=ref,event=branch type=ref,event=tag
type=raw,value=latest type=raw,value=latest
- name: Build and push Docker image - name: Build and push Docker image
@@ -81,7 +102,7 @@ jobs:
needs: test needs: test
permissions: permissions:
id-token: write id-token: write
if: github.ref == 'refs/heads/main' && github.event_name == 'push' if: startsWith(github.ref, 'refs/tags/v')
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4

View File

@@ -7,6 +7,8 @@ access to explore and understand Cordra repositories.
This allows AI systems to quickly understand the data model and schema structure 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. of a Cordra repository and to explore digital objects and their relationships.
![Example](example.gif)
## Features ## Features
- **Read-Only Access**: All operations are strictly read-only, - **Read-Only Access**: All operations are strictly read-only,

BIN
example.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

View File

@@ -1,6 +1,6 @@
[project] [project]
name = "cordra-mcp" name = "cordra-mcp"
version = "1.0.0" version = "1.1.1"
description = "MCP server for Cordra digital object repository" description = "MCP server for Cordra digital object repository"
authors = [ authors = [
{name = "Daniel Bauer", email = "github@dbauer.me"}, {name = "Daniel Bauer", email = "github@dbauer.me"},

View File

@@ -1,3 +1,3 @@
"""MCP server for Cordra digital object repository.""" """MCP server for Cordra digital object repository."""
__version__ = "0.1.0" __version__ = "1.1.1"

2
uv.lock generated
View File

@@ -113,7 +113,7 @@ wheels = [
[[package]] [[package]]
name = "cordra-mcp" name = "cordra-mcp"
version = "1.0.0" version = "1.1.1"
source = { editable = "." } source = { editable = "." }
dependencies = [ dependencies = [
{ name = "mcp", extra = ["cli"] }, { name = "mcp", extra = ["cli"] },