I’m happy to share a new module for Omeka S that brings AI-agent interoperability directly into the admin interface.
Repository: https://github.com/ateeducacion/omeka-s-WebMCP
What is WebMCP?
WebMCP implements the emerging WebMCP standard (W3C Community Group draft), which allows web applications to register tools and resources that AI agents can discover and invoke directly from the browser.
In practical terms:
Your Omeka S backend can now expose structured management capabilities to AI assistants running in the browser.
What Does This Mean for Omeka S?
With WebMCP enabled, an AI agent can:
- Create, update, delete, and search items
- Manage item sets
- Create and update sites
- Upload and attach media (including IIIF, YouTube, oEmbed, URLs)
- Manage users
- Inspect vocabularies, properties, resource classes, and templates
- Perform batch operations
- Access structured Omeka resources like dashboard summaries or item JSON-LD
All operations run securely through a server-side proxy inside Omeka S, using the authenticated PHP session and CSRF protection.
Key Features
Full Tool Coverage
Tools are grouped by domain:
- Item Management
- Media Management
- Item Sets
- Sites
- Users
- Vocabularies & Templates
- Bulk Operations
The catalog-item tool allows AI agents to populate all 15 Dublin Core Terms fields without requiring JSON-LD knowledge.
Example:
catalog-item id=42
title = "Photograph of the harbour, 1923"
creator = "Anonymous"
date = "1923"
type = "Photograph"
subject = ["harbour", "maritime", "1920s"]
rights = "Public Domain"
resource_class = "dctype:Image"
Media from Anywhere
Attach media using:
- Direct file URLs
- YouTube links (with optional start/end times)
- oEmbed services (Vimeo, SoundCloud, Flickr…)
- IIIF Image API
- IIIF Presentation manifests
- Inline HTML snippets
Files fetched from URLs are stored locally in Omeka S — not external references.
Secure Architecture
All tool calls are routed through:
POST /admin/webmcp/proxy
The proxy uses Omeka’s ApiManager, so requests:
- Respect Omeka’s permission system
- Run within the normal lifecycle
- Use CSRF protection
- Require an authenticated admin session
No direct /api/* exposure is needed.
How to Try It
Install the module
Copy into:
modules/WebMCP
Then install it from Admin → Modules.
Enable WebMCP in Chrome Canary
- Install Chrome Canary
- Enable:
chrome://flags/#enable-web-mcp - Install the WebMCP extension
- Open your Omeka S admin interface
Tools and resources register automatically.
Developer-Friendly Setup
A full Docker stack is included:
make up
make down
make test
make lint
Includes:
- Pre-created users
- PHPUnit tests
- Code style checks
- Asset cache-busting
- CSRF injection
- Property hydration handling for Omeka’s ValueHydrator
Example Use Cases
- AI-assisted cataloging of large archival collections
- Semi-automated metadata normalization
- Guided ingestion workflows
- Classroom experimentation with AI + cultural heritage collections
- Research on human–AI collaboration in digital archives
Requirements
- Omeka S 4.x+
- PHP 8.1+
License
GPLv3
If you experiment with it, I’d be very interested in feedback — especially from institutions working with IIIF, large metadata imports, or AI-assisted curation workflows.
Happy to discuss ideas, improvements, or collaborations.