Introduction to the Claude Code Plugin¶
The Claude Code Plugin for EventSourcingDB is an extension that lets you interact with a running EventSourcingDB instance directly from the terminal using natural language. It provides a set of focused Skills that teach Claude how to use the EventSourcingDB HTTP API, covering everything from writing and reading events to running EventQL queries.
How the Plugin Works¶
The plugin is a collection of Claude Code Skills, each responsible for a single API endpoint. When you invoke a Skill or describe what you want in natural language, Claude reads the Skill's instructions, assembles the appropriate HTTP request using curl, sends it to your EventSourcingDB instance, and presents the result. There is no SDK, no Docker container, and no background process. The plugin runs entirely within your Claude Code session.
You can invoke Skills explicitly by name, such as /esdb:write-events or /esdb:read-events. Alternatively, you can simply describe what you want in plain English, and Claude will automatically pick the right Skill based on its description. This means you can say "show me the history of /orders/123" and Claude will figure out which Skill to use.
When to Use the Plugin¶
The plugin is designed for interactive and exploratory workflows in the terminal. It is a good fit when you want to:
- Explore your event store: Browse subjects, inspect event types, and read event histories without writing any code.
- Prototype event flows: Write test events, experiment with preconditions, and iterate on your domain model.
- Learn EventQL: Describe what you want to know in natural language, and let Claude write the query for you.
- Debug an issue: Quickly check what events exist for a subject, verify schemas, or inspect the state of your event store.
When Not to Use the Plugin¶
The plugin is not intended for production write paths. Writing events in a real application should go through a Client SDK or the HTTP API directly, where you have full control over preconditions, error handling, and transactional guarantees.
Similarly, automated pipelines that process large volumes of events are better served by direct API access. The plugin adds a layer of human interaction that is valuable for exploration but unnecessary for automated systems.
Looking for a Persistent Integration?
If you need a persistent, always-available connection between an LLM and EventSourcingDB, especially in setups where multiple tools and agents collaborate, consider the MCP Server instead. The MCP Server runs as a Docker container and works with any MCP-compatible client. The Claude Code Plugin is the lighter alternative for quick terminal-based interaction.
To install the plugin and connect it to your EventSourcingDB instance, see Getting Started.