Secrets management, reimagined

Stop passing .env files around.

Keep your secrets in one place. Sync them across machines and environments, inject them into any process, and safely let AI agents manage them.

Encrypted by default. · CLI-first. · MCP-native.

Start free$ bulgur init

No credit card. Free for up to 2 projects.

$ bulgur init
Detected Next.js
Created project "acme-web"
Imported 12 secrets from .env
 
$ bulgur run -- pnpm dev
Injected 12 secrets

Your .env file was never meant to be infrastructure.

It starts with a few API keys on your laptop.

Then there's .env.local. A production copy. A CI secret store. A teammate asking for the latest values. And eventually, an API key sitting somewhere it shouldn't.

bulgur gives your secrets one home and makes them available wherever your code runs.

One source of truth

Store secrets once and organize them by project and environment. No more hunting for the latest .env file.

Works with anything

No framework integration. No SDK in your application. bulgur injects secrets directly into the process environment.

Built for local development and CI

Use the same workflow on your laptop, another machine, or inside your deployment pipeline.

MCP-native

Give your AI agent access. Not your secrets.

Claude Code, Cursor, and other MCP clients can work with bulgur directly. They can create secrets, rotate credentials, manage configuration, and reference secrets by name.

But they can never read the values back.

MCP-scoped tokens are write-only by design. Read attempts are rejected server-side, including direct API requests. Your agent can manage the secret without putting the secret in its context.

You

Rotate DATABASE_URL and generate a new key.

Assistant

Rotated DATABASE_URL. New value stored as version 4. Previous version kept in history.

$ claude mcp add bulgur \
-e BULGUR_TOKEN=blg_… \
-- bulgur mcp

Secrets management without the ceremony.

Run anything with secrets

Secrets are injected directly into the process. Nothing needs to be written to .env.

bulgur run -- pnpm dev
bulgur run -- python app.py
bulgur run -- docker compose up

Sync every environment

Keep development, staging, and production configuration together while maintaining separate values for each.

bulgur push
bulgur pull

Share what should be shared

Define project-wide values once with Shared secrets. Override them only where an environment needs something different.

Keep sensitive values out of sight

Mark a secret sensitive and its value disappears from the dashboard. Your app still uses it through the CLI or CI, without exposing it to someone looking at the screen.

Rotate without losing history

Generate secure random values, rotate credentials, keep previous versions, and roll back when necessary.

Know what happened

Every reveal, pull, and change is recorded. See who accessed what, when, and from where.

AES-256-GCM

Encrypted before it reaches the database.

bulgur uses envelope encryption with AES-256-GCM.

Each project gets its own data encryption key. That key is wrapped by a master key that never touches the database.

Secrets are decrypted only when an authorized principal explicitly requests access. And every reveal is logged.

Per-project encryption

Separate data keys isolate projects.

Server-enforced permissions

Access rules live on the server, not in the CLI.

Write-only AI access

MCP tokens cannot read, export, or reveal secret values.

Complete audit trail

Sensitive operations leave a record.

From .env to bulgur in 30 seconds.

01

Initialize

$ bulgur init

bulgur detects your project and imports your existing .env.

02

Sync

$ bulgur push

Your secrets are now available across machines and environments.

03

Run

$ bulgur run -- pnpm dev

Your process gets the secrets it needs. Your filesystem doesn't.

Secrets management shouldn't cost more than your side project.

Free

€0

For side projects and getting started.

  • 1 workspace
  • 2 projects
  • Unlimited secrets
  • CLI
  • MCP
Start free

Pro

Popular

€2 / month

For developers running more.

  • 3 workspaces
  • Unlimited projects
  • Secret history
  • Audit log
  • Everything in Free
Get Pro

Team

€5 / month

For people building together.

  • 10 workspaces
  • Team members
  • Invitations
  • Role-based access
  • Everything in Pro
Create a team

Prices per organization. No credit card required to start. Need more than 10 workspaces? Get in touch.

Questions developers usually ask.

Can bulgur employees read my secrets?

Secret values are envelope-encrypted using AES-256-GCM. Decryption happens only after an authorized explicit reveal, and every reveal is audit-logged.

Does bulgur replace .env files?

That's the idea. You can import an existing .env, then use bulgur run to inject those values directly into your process without keeping the file around.

Will it work with my framework?

If your application reads environment variables, it works with bulgur. Next.js, Node.js, Python, Go, Rails, Docker, and anything else that reads from the process environment require no special integration.

Can my AI coding agent use it?

Yes. bulgur exposes an MCP server for clients such as Claude Code and Cursor. MCP credentials can be restricted so agents can create and rotate secrets without being able to retrieve their values.

What if an MCP token leaks?

The token still cannot reveal secret values. Read, reveal, and export operations are rejected server-side for MCP-scoped credentials. Revoke the token and create another one.

Does it work in CI?

Yes. Provide your bulgur credentials to the pipeline and use bulgur run -- <command>, or bulgur pull.

Can I self-host it?

bulgur Cloud is the supported deployment today. Self-hosting may be offered later.

Delete .env from your workflow.

One place for your secrets. One command to use them anywhere. AI agents included.