vault-mcp
Exposes OS keychain or AES-256-GCM encrypted file secrets as MCP tools, allowing reading, setting, and listing secrets without exposing values in conversation messages.
README
vault-mcp
MCP server that exposes secrets from your OS keychain (or an AES-256-GCM encrypted file) as MCP tools. Secrets are returned directly in tool results and never appear in conversation messages.
Tools
| Tool | Description |
|---|---|
get_secret(key) |
Read a secret value from the vault |
set_secret(key, value) |
Store a secret in the vault |
list_secrets() |
List stored key names — values are never returned |
Quick start
# Install deps
cd vault-mcp && npm install
# Walk through adding a first secret and get your config block
npx vault-mcp init
# (on Linux without libsecret, set passphrase first)
# export VAULT_MCP_PASSPHRASE="my-strong-passphrase"
# npx vault-mcp init
The init command prints a JSON block to paste into claude_desktop_config.json (Claude Desktop) or .claude/settings.json (Claude Code).
Backends
OS Keychain (keytar) — recommended on macOS / Windows
When keytar installs successfully and libsecret is available, secrets are stored in the OS keychain (Keychain Access on macOS, Credential Manager on Windows, Secret Service on Linux).
No environment variable needed.
AES-256-GCM file vault — Linux CI / containers
If keytar is unavailable, vault-mcp falls back to ~/.vault-mcp/vault.json. Each value is encrypted with AES-256-GCM using a key derived via scrypt from your passphrase.
export VAULT_MCP_PASSPHRASE="my-strong-passphrase"
Add this env var to your MCP server config (see init output).
Other CLI commands
vault-mcp set MY_SECRET "value" # store without interactive prompt
vault-mcp list # print stored key names
vault-mcp server # start MCP server (used by config block)
MCP config example (file vault)
{
"mcpServers": {
"vault-mcp": {
"command": "node",
"args": ["/path/to/vault-mcp/src/server.js"],
"env": {
"VAULT_MCP_PASSPHRASE": "my-strong-passphrase"
}
}
}
}
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.