Omeka S MCP Sample

by nakamura196

160 downloads
Not rated
GitHub

About

This project demonstrates how to integrate Omeka S API with Claude Desktop using MCP (Model Context Protocol).

Details

Author
nakamura196
Downloads
160
Categories
Other

- List items from Omeka S with pagination support
- Get details of a specific item by ID
- Create new items with title and description
- Upload media to items from local file or URL
- Integrated with Claude Desktop via MCP

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Omeka S MCP Sample
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, install dependencies with uv pip install -e ., and create a .env file with Omeka S API credentials. Add the server configuration to your Claude Desktop mcpServers JSON, pointing to omeka_server.py and specifying the full Python path if needed.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "omeka s mcp sample": {
            "omeka-s-mcp-sample": {
                "command": "uv",
                "args": [
                    "pip",
                    "install",
                    "-e",
                    "."
                ]
            }
        }
    }
}

McpServers

{
    "omeka-s-mcp-sample": {
        "command": "uv",
        "args": [
            "pip",
            "install",
            "-e",
            "."
        ]
    }
}

Omeka S MCP Sample

This project demonstrates how to integrate Omeka S API with Claude Desktop using MCP (Model Context Protocol).

The server provides the following Omeka S API features:
- List items
- Get item details
- Create new items
- Upload media (from file or URL)

Installation

1. Clone this repository
2. Install dependencies:

uv pip install -e .

Configuration

Create a .env file in the project root with your Omeka S API credentials:

OMEKA_API_URL=https://your-omeka-s-instance/api
OMEKA_KEY_IDENTITY=your-key-identity
OMEKA_KEY_CREDENTIAL=your-key-credential

Usage

Add the following settings to your Claude Desktop configuration file:

"mcpServers": {
    "omeka-s-mcp-sample": {
        "command": "python",
        "args": [
            "/path/to/omeka-s-mcp-sample/server/omeka_server.py"
        ]
    }
}

> [!NOTE]
> If you receive a command not found error when launching the server, specify the full path to your Python executable.

Available Tools

The server provides the following MCP tools:

list-items

List items from Omeka S with pagination support.

get-item

Get details of a specific item by ID.

create-item

Create a new item with title and optional description.

upload-media

Upload media to an item either from a local file or URL.

Example Usage

You can ask Claude to:
- List items from your Omeka S instance
- Get details of a specific item
- Create new items with metadata
- Upload media files or URLs to items

Development

This project uses:
- Python 3.10+
- MCP 1.6.0+
- aiohttp for API requests
- Ruff for code formatting and linting

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.