This guide provides detailed instructions for Windows users to install and configure the Twenty MCP Server.
Before starting, ensure you have:
Git Bash provides a Linux-like environment on Windows, making it compatible with our install script.
-
Open Git Bash (installed with Git for Windows)
-
Clone and install:
# Clone the repository
git clone https://github.com/jezweb/twenty-mcp.git
cd twenty-mcp
# Make install script executable
chmod +x install.sh
# Run installation
./install.sh- Note your path:
pwd
# Example: /c/Users/YourName/twenty-mcp
# Your server path: C:/Users/YourName/twenty-mcp/dist/index.jsIf you prefer using Windows Command Prompt:
-
Open Command Prompt (cmd.exe)
-
Clone the repository:
git clone https://github.com/jezweb/twenty-mcp.git
cd twenty-mcp- Install and build:
npm install
npm run build- Get your path:
echo %cd%
REM Example: C:\Users\YourName\twenty-mcp
REM Your server path: C:\Users\YourName\twenty-mcp\dist\index.jsFor PowerShell users:
-
Open PowerShell
-
Clone and install:
git clone https://github.com/jezweb/twenty-mcp.git
cd twenty-mcp
npm install
npm run build- Get your path:
Get-Location
# Example: C:\Users\YourName\twenty-mcp
# Your server path: C:\Users\YourName\twenty-mcp\dist\index.jscopy .env.example .envOpen .env in your text editor (Notepad, VS Code, etc.) and add:
TWENTY_API_KEY=your-api-key-here
TWENTY_BASE_URL=https://api.twenty.comIf you prefer using system environment variables:
Command Prompt:
set TWENTY_API_KEY=your-api-key-here
set TWENTY_BASE_URL=https://api.twenty.comPowerShell:
$env:TWENTY_API_KEY="your-api-key-here"
$env:TWENTY_BASE_URL="https://api.twenty.com"The Twenty MCP Server supports OAuth 2.1 authentication for enhanced security and multi-user support.
Use the built-in OAuth setup CLI:
Git Bash (Recommended):
npm run setup:oauthCommand Prompt:
npm run setup:oauthPowerShell:
npm run setup:oauthIf you prefer manual configuration, add these to your .env file:
# OAuth Configuration
AUTH_ENABLED=true
REQUIRE_AUTH=false
AUTH_PROVIDER=clerk
# Clerk Configuration
CLERK_PUBLISHABLE_KEY=pk_test_your_publishable_key
CLERK_SECRET_KEY=sk_test_your_secret_key
CLERK_DOMAIN=your-app.clerk.accounts.dev
# Security
API_KEY_ENCRYPTION_SECRET=your-32-byte-hex-string-here
# Server Configuration
MCP_SERVER_URL=http://localhost:3000
PORT=3000Command Prompt:
set AUTH_ENABLED=true
set CLERK_SECRET_KEY=sk_test_your_secret_key
set CLERK_PUBLISHABLE_KEY=pk_test_your_publishable_key
set API_KEY_ENCRYPTION_SECRET=your-32-byte-hex-stringPowerShell:
$env:AUTH_ENABLED="true"
$env:CLERK_SECRET_KEY="sk_test_your_secret_key"
$env:CLERK_PUBLISHABLE_KEY="pk_test_your_publishable_key"
$env:API_KEY_ENCRYPTION_SECRET="your-32-byte-hex-string"# Test OAuth endpoints
npm run test:oauth
# Start server with OAuth
npm start| Mode | Setup Complexity | Security | Multi-user |
|---|---|---|---|
| API Key | Simple | Basic | ❌ Single user |
| OAuth | Moderate | Enhanced | ✅ Multiple users |
Choose OAuth for:
- Multi-user deployments
- Enhanced security requirements
- Production environments
Solution: Run your terminal as Administrator
Solution: Use quotes in configurations:
{
"args": ["C:/Program Files/twenty-mcp/dist/index.js"]
}Solution: Use forward slashes or double backslashes:
- ✅
C:/Users/Name/twenty-mcp/dist/index.js - ✅
C:\\Users\\Name\\twenty-mcp\\dist\\index.js - ❌
C:\Users\Name\twenty-mcp\dist\index.js
Solution:
- Restart your terminal after installing Node.js
- Or add Node.js to PATH manually
-
Find config file:
%APPDATA%\Claude\claude_desktop_config.json -
Example configuration:
{
"mcpServers": {
"twenty-crm": {
"command": "node",
"args": ["C:/Users/YourName/twenty-mcp/dist/index.js"],
"env": {
"TWENTY_API_KEY": "your-key-here",
"TWENTY_BASE_URL": "https://api.twenty.com"
}
}
}
}Use forward slashes in the configuration:
{
"args": ["C:/Users/YourName/twenty-mcp/dist/index.js"]
}Test your installation:
npm run validateExpected output:
[SUCCESS] Configuration is valid! 🎉
- Check the main README for more details
- Run
npm run validateto diagnose issues - Report problems at GitHub Issues