Prerequisites

  • Rust 1.88+ — needed for the core engine, MCP server, and CLI
  • Python 3.10+ with uv — for the Python SDK
  • Bun or Node.js 18+ — optional, for the TypeScript SDK
  • Go 1.21+ — optional, for the Go SDK

Python SDK

pip install pensyve

Or build from source:

git clone https://github.com/major7apps/pensyve.git && cd pensyve
uv sync --extra dev
uv run maturin develop --manifest-path pensyve-python/Cargo.toml

Verify:

python -c "import pensyve; print(pensyve.__version__)"

TypeScript SDK

The TypeScript SDK is an HTTP client that talks to the REST API.

bun add pensyve

Or with npm:

npm install pensyve

Go SDK

go get github.com/major7apps/pensyve-go

MCP Server

Build from source:

cargo install pensyve-mcp

Or from the repo:

cargo build --release --bin pensyve-mcp

The binary lands at ./target/release/pensyve-mcp. See MCP Setup for configuration.

CLI

cargo install pensyve-cli

Or from the repo:

cargo build --release --bin pensyve-cli

REST API Server

The REST API requires a source build:

git clone https://github.com/major7apps/pensyve.git && cd pensyve
uv sync --extra dev
uv run maturin develop --manifest-path pensyve-python/Cargo.toml

Start the server:

uvicorn pensyve_server.main:app --port 8000

The TypeScript and Go SDKs connect to this server over HTTP.

Environment Variables

VariableDefaultPurpose
PENSYVE_PATH~/.pensyve/SQLite database directory
PENSYVE_NAMESPACEdefaultMemory namespace
PENSYVE_API_KEYSunsetComma-separated API keys (auth is off when unset)
PENSYVE_DATABASE_URLunsetPostgres connection string for managed deployments