About envmcp
envmcp is a lightweight command line tool for using environment variables in Cursor MCP server definitions. It keeps secrets out of client configuration files and suits Cursor users who manage credentials. It is distributed as an npm package.
Key features
- 01Substitutes $VARIABLE references in command arguments
- 02Supports a custom environment file path
- 03Searches current, parent and home directories for .env.mcp
- 04Runs through npx or a global npm install
Use cases
- 01Avoiding plaintext database URLs in Cursor MCP configuration
- 02Sharing API keys across several MCP server definitions
MCP support
This tool wraps the startup command of an MCP server so that Cursor passes it substituted arguments. It does not expose MCP tools itself.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEenvmcp
Use environment variables in your Cursor MCP server definitions.
💡 Looking for more features? Consider mcpipe (npm) which includes envmcp's functionality as well as debugging tools and other capabilities.
Quick Start
# Use default ~/.env.mcp file
npx envmcp your-mcp-server $DATABASE_URL
# Specify custom env file
npx envmcp --env-file .env your-mcp-server $API_KEY $DATABASE_URL
# Short flag version
npx envmcp -e /path/to/secrets.env your-mcp-server $MY_SECRET
Usage in MCP Clients
Prefix your server command with envmcp.
Before (secrets exposed in config):
{
"my_database": {
"command": "my-mcp-server",
"args": ["postgresql://user:password@hostname/db"]
}
}
After (secrets in ~/.env.mcp):
{
"my_database": {
"command": "npx",
"args": ["envmcp", "my-mcp-server", "$DATABASE_URL"]
}
}
How It Works
- Looks for
.env.mcpin current directory, then parent directories, finally~/.env.mcp - If
--env-fileis specified, uses that file instead - Loads environment variables from the file
- Replaces
$VARIABLE_NAMEreferences in your command arguments - Executes the command with substituted values
Installation
npm install -g envmcp
Options
--env-file <path>,-e <path>: Specify custom environment file path
Environment File Format
DATABASE_URL=postgresql://user:password@localhost/db
API_KEY=your-secret-api-key
# This is a comment
QUOTED_VALUE="value with spaces"
See sample.env.mcp for more examples.
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.