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.2.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.2-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: secretbutler-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 f0ab41b0ba30e155a50bc4c534378cbfa2a8d1f2235bf4a62e2b01057546c6ec
MD5 462ea1afe728b47b0cd3dea668945157
BLAKE2b-256 3817872c9417f330760b58d149edf820b1d78704aa1c0d9bc4ce6b040c8fa4d5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: secretbutler-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.1 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8886257b8f6ddfdb249f34c98899dae4d7798b4c4b61c1cf286f49c15e61776e
MD5 7e660b335fee9497096ed22f71f068da
BLAKE2b-256 6edaca731617e00c5d53f563f6359c9e2e37d680d4a059ff64e0c3b35865c71a

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