Skip to main content

A local MCP server that manages API keys with user approval

Project description

SecretButler 🗝️

A secure local MCP server for managing API keys with user approval

Install MCP Server

SecretButler Logo

Overview

SecretButler provides a secure way to manage and share API keys with MCP clients like Claude Desktop and Cursor. It runs as a local server with a native GUI that requires explicit user approval before sharing any secrets.

SecretButler Example

✨ Features

  • 🔒 Secure: Stores API keys locally in ~/.secretbutler.toml
  • 👤 User-controlled: GUI popup requires explicit approval for each request
  • 🔌 MCP compatible: Works with any MCP client
  • ⚙️ Easy setup: Simple TOML configuration
  • 🍎 Native macOS: Uses native macOS GUI components

🚀 Installation

Add to your MCP client configuration:

{
    "mcpServers": {
        "SecretButler": {
            "command": "uvx",
            "args": ["secretbutler"],
            "env": {
                "CLIENT_NAME": "Claude"
            }
        }
    }
}

⚙️ Configuration

On first run, SecretButler creates ~/.secretbutler.toml:

[secrets]
OPENAI_API_KEY = "sk-..."
ANTHROPIC_API_KEY = "sk-ant-..."
HF_API_KEY = "hf_..."

Simply edit this file to add your API keys.

🛠️ MCP Tools

Tool Description
list_secrets() Returns available secret names (no approval needed)
request_secrets(secret_names, client_name) Request specific secrets with user approval

🔐 Security

  • ✅ Secrets stored locally only
  • ✅ No sharing without explicit approval
  • ✅ Clear approval dialogs show requested secrets and client
  • ✅ Foreground GUI prevents unauthorized access

📄 License

MIT License

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

secretbutler-0.1.1.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

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

secretbutler-0.1.1-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file secretbutler-0.1.1.tar.gz.

File metadata

  • Download URL: secretbutler-0.1.1.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.15

File hashes

Hashes for secretbutler-0.1.1.tar.gz
Algorithm Hash digest
SHA256 97dd68ac01b7b1f855e154abc3406d5b1e49f7a540d76016e1a2832642026e65
MD5 d8a0c08c2ccc06a8c1a8028808556d6c
BLAKE2b-256 37a88b180e1ec2cbf756c01442ac821d96521459ef7060e1b558731953a11bfc

See more details on using hashes here.

File details

Details for the file secretbutler-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: secretbutler-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.15

File hashes

Hashes for secretbutler-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7065bcfd8e56eef44953f53d9783a6c8094d9d2f07c07a3da76c5874bec3bd7c
MD5 b13d47dfe2a90884e737f60fb200d24a
BLAKE2b-256 41821e561316e4433c5e3c9421b5560efa4647114631722899a7b4f26361ad3a

See more details on using hashes here.

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