Skip to main content

Installable CLI and MCP tools for the Esheria Regulatory Pack API.

Project description

Esheria CLI And MCP

Installable command-line and MCP tools for the Esheria Regulatory Pack API.

The package exposes two commands:

esheria --help
esheria-mcp --help

CLI Quickstart

  1. Create an API token in the Esheria dashboard.
  2. Install the command. pipx is recommended because it keeps command-line tools isolated from project dependencies:
pipx install esheria

If you do not use pipx, use normal pip:

python3 -m pip install esheria
  1. Configure your shell. Put these in your terminal for a one-off test, or in ~/.zshrc, ~/.bashrc, or your shell profile to keep them:
export ESHERIA_API_BASE_URL="https://api.esheria.ai"
export ESHERIA_API_KEY="<client-api-key>"

ESHERIA_API_TOKEN is also accepted as an alias when ESHERIA_API_KEY is unset.

Do not commit API keys. The CLI and MCP server read credentials from environment variables or command-line flags and redact API key values from diagnostic output.

  1. Confirm the API is reachable:
esheria health --format json
esheria ready --format json
  1. Discover packs, choose a domain_pack_id, then pass that pack ID to pack-specific commands:
esheria packs list --format json
esheria packs inspect KE-DATA-PROTECTION --format json
esheria packs versions KE-DATA-PROTECTION --format json
esheria packs diff KE-DATA-PROTECTION --format json
esheria packs change-events KE-DATA-PROTECTION --format json
esheria obligations list KE-DATA-PROTECTION --query breach --limit 3 --format json
esheria penalties list KE-DATA-PROTECTION --limit 5 --format json
esheria legal-review audit KE-DATA-PROTECTION --limit 5 --format json

KE-DATA-PROTECTION is only an example pack ID. The CLI and MCP server are catalog-first: users should list packs and then call tools with the pack ID they want. ESHERIA_DEFAULT_PACK_ID is optional legacy configuration and is not required for normal CLI or MCP use.

MCP Server

MCP hosts run the server for you. The JSON/TOML snippet tells the host which command to start and which environment variables to pass into that process.

For local testing only, you can run the stdio server yourself:

esheria-mcp serve --stdio

The MCP server is read-only and exposes Regulatory Pack API tools for health, readiness, pack discovery, obligations, applicability, claim verification, version history, diffs, change events, filing calendars, evidence registers, penalty facts, legal review audit metadata, relationship graph queries, exports, and citation context lookup.

Codex MCP

Edit ~/.codex/config.toml and add:

[mcp_servers.esheria]
command = "uvx"
args = ["--from", "esheria", "esheria-mcp", "serve", "--stdio"]
env = { ESHERIA_API_BASE_URL = "https://api.esheria.ai", ESHERIA_API_KEY = "<client-api-key>" }

Restart Codex, then call esheria_health, esheria_ready, and esheria_list_packs.

Claude Code

Run this once from a terminal. It writes the MCP server entry into Claude Code's MCP configuration:

claude mcp add --scope user --transport stdio \
  --env ESHERIA_API_BASE_URL=https://api.esheria.ai \
  --env ESHERIA_API_KEY=<client-api-key> \
  esheria -- uvx --from esheria esheria-mcp serve --stdio

Then run:

claude mcp list

Start or restart Claude Code and ask it to use the Esheria MCP tools.

Claude Desktop

Open the Claude Desktop MCP config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add or merge this object:

{
  "mcpServers": {
    "esheria": {
      "command": "uvx",
      "args": ["--from", "esheria", "esheria-mcp", "serve", "--stdio"],
      "env": {
        "ESHERIA_API_BASE_URL": "https://api.esheria.ai",
        "ESHERIA_API_KEY": "<client-api-key>"
      }
    }
  }
}

Restart Claude Desktop after saving the file.

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

esheria-0.2.1.tar.gz (27.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

esheria-0.2.1-py3-none-any.whl (29.0 kB view details)

Uploaded Python 3

File details

Details for the file esheria-0.2.1.tar.gz.

File metadata

  • Download URL: esheria-0.2.1.tar.gz
  • Upload date:
  • Size: 27.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for esheria-0.2.1.tar.gz
Algorithm Hash digest
SHA256 111e17a3e820cb28d3ac599c8f21213b9fce6a185a1e74211c77d9c59b12a762
MD5 2c2a039bfcdcddc11eff0fce6e86885b
BLAKE2b-256 91d6ffe053a872e2084c85932c5ba9294b90b3c117ce9e9141302f4ae07d8537

See more details on using hashes here.

Provenance

The following attestation bundles were made for esheria-0.2.1.tar.gz:

Publisher: publish-pypi.yml on esherialabs/esheria-regulatory-intelligence

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file esheria-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: esheria-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 29.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for esheria-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1be3637b4df0266035918c4073622b6bcdd31331f8cb2779659e865a65d1f208
MD5 d1fe3cb061243805531c3d0b2a9d9a46
BLAKE2b-256 32da528969333f1a5606a62956861e821177ead5ec7085c550392cf153290e2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for esheria-0.2.1-py3-none-any.whl:

Publisher: publish-pypi.yml on esherialabs/esheria-regulatory-intelligence

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page