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.0.tar.gz (27.8 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.0-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: esheria-0.2.0.tar.gz
  • Upload date:
  • Size: 27.8 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.0.tar.gz
Algorithm Hash digest
SHA256 142883ff0a3f538cf43a0d5731f00efb57b9a195d69ef85770d1e9f716e527b9
MD5 db2d4c8c44ea5299a9274ae1fe9a7b9a
BLAKE2b-256 ba87e950fe4ad03bc7f2cd3ca51b9ea2ff44aba28cd28e0fc8b117a2b4c98467

See more details on using hashes here.

Provenance

The following attestation bundles were made for esheria-0.2.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: esheria-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 29.1 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8395f6703a23606af3477d1d70b637ea7c1256b1bb0c84242d944bfbd82276fd
MD5 c8928d2953e8dc6af76ef25887a26b7e
BLAKE2b-256 394b89166cccda25a996bdc64ed985feda53a668439824e507655084d2e66324

See more details on using hashes here.

Provenance

The following attestation bundles were made for esheria-0.2.0-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