Ever Gauzy MCP Server
Transform Your Ever® Gauzy™ Platform into an AI-Powered Workspace
The Ever Gauzy MCP Server enables AI assistants like Claude, ChatGPT, and other AI tools to directly interact with your Gauzy platform through a secure, production-ready Model Context Protocol implementation. Manage projects, track time, handle HR operations, and execute business workflows using natural language through AI assistants.
🌐 Production Servers
Our remote MCP infrastructure is ready for immediate use:
| Service | Production | Demo |
|---|---|---|
| MCP Server | https://mcp.gauzy.co | https://mcpdemo.gauzy.co |
| Auth Server | https://mcpauth.gauzy.co | https://mcpauthdemo.gauzy.co |
| Status | ✅ Live | ✅ Live |
What this means for you:
- No installation or hosting required
- Enterprise-grade infrastructure with 99.9% uptime
- OAuth 2.0 secured endpoints
- Automatic scaling and load balancing
- Real-time operations with WebSocket support
- Global CDN for optimal performance
🎯 What Can You Do?
The Gauzy MCP Server transforms how you interact with business operations. Instead of clicking through interfaces, simply tell your AI assistant what you need:
Project Management
- "Show me all active projects and their current status"
- "Create a new project called 'Mobile App Redesign' with a 3-month timeline"
- "Assign 5 developers to the backend API project"
- "What projects are behind schedule this week?"
Time Tracking & Productivity
- "Start tracking time on the authentication feature"
- "Show my team's time logs for the last sprint"
- "Generate a weekly timesheet report for all employees"
- "Who worked the most hours on the frontend project?"
Task Management
- "Create 10 tasks from this requirements document and assign them to the team"
- "Show all high-priority tasks due this week"
- "Update task status to 'In Review' and add completion notes"
- "Bulk assign all QA tasks to the testing team"
HR & Employee Management
- "Add a new employee to the development team"
- "Show employee performance metrics for Q4"
- "Process leave requests pending approval"
- "Track employee skills and certifications across the organization"
Financial Operations
- "Generate invoices for all completed projects this month"
- "Process expense claims submitted last week"
- "Create payment records for contractor work"
- "Show revenue breakdown by project and client"
Sales & CRM
- "Show all deals in the pipeline with 'Negotiation' status"
- "Create a new sales opportunity for the enterprise client"
- "Update contact information for all marketing leads"
- "Track deal progression through sales stages"
🔥 Key Features
323 Business Tools Across 22 Categories
The remote MCP server provides comprehensive access to your entire Gauzy platform:
Core Operations (90 tools)
- Employee Management (15) - Full employee lifecycle, profiles, organization members
- Task Management (16) - Complete CRUD with bulk operations and analytics
- Project Management (14) - Project lifecycle, assignments, team collaboration
- Daily Planning (17) - Personal and team planning with task integration
- Organization Contacts (17) - Contact management with bulk operations
- Time Tracking (3) - Start/stop timers, status monitoring
- Authentication (5) - Secure login, token refresh, session management
- Testing & Diagnostics (3) - Connection tests, health checks, capability enumeration
Financial Management (37 tools)
- Payments (14) - Payment processing and management
- Expenses (9) - Expense tracking and reporting
- Invoices (14) - Invoice creation and management
Business Operations (196+ tools)
- Candidate Management (15) - Recruitment and hiring workflows
- Sales & CRM (23) - Deals, pipelines, opportunity tracking
- Goal Management (24) - OKR system with objectives and key results
- Inventory & Equipment (21) - Asset tracking and warehouse management
- Product Management (18) - Catalog management and categorization
- Time Off Management (20) - Leave requests, PTO tracking, approvals
- Skills Management (10) - Competency tracking and development
- Merchant Management (14) - Vendor and supplier relationships
- Income Management (13) - Revenue tracking and analysis
- Activity Logging (12) - Audit trails and user actions
- Content & Communication (15) - Comments, discussions, collaboration
- Reporting (4) - Analytics and custom reports
- HR & Awards (7) - Recognition programs and achievements
🔒 Enterprise-Grade Security
OAuth 2.0 Authorization Flow
The remote MCP server implements a complete OAuth 2.0 authorization framework:
- Client Registration - Register your application with the MCP Auth Server
- Authorization Request - User authenticates and grants permissions
- Token Exchange - Receive JWT access and refresh tokens
- Secure API Access - All requests validated with Bearer tokens
- Automatic Refresh - Seamless token renewal without interruption
Security Features:
- JWT Token Validation - Public key cryptography (RS256, ES256)
- JWKS Endpoint - Dynamic key rotation support
- Token Introspection - Real-time validation (RFC 7662)
- Scope-Based Access Control - Fine-grained permissions
- TLS 1.3 Encryption - End-to-end secure transport
- Rate Limiting - 100 requests per 15-minute window
- CSRF Protection - State parameter validation
- Audit Logging - Complete request/response tracking
⚡ Production Infrastructure
Multi-Transport Architecture
The remote server supports three connection methods:
-
HTTP/REST Transport (
https://mcp.gauzy.co/sse)- JSON-RPC 2.0 over HTTPS
- Server-Sent Events for real-time updates
- CORS-enabled for web applications
- Session management with Redis
- Perfect for web apps, mobile apps, and API integrations
-
WebSocket Transport (
wss://mcp.gauzy.co/sse)- Persistent bidirectional connections
- Real-time push notifications
- Compression enabled (per-message deflate)
- 16MB payload support
- Ideal for dashboards, live monitoring, real-time collaboration
-
Stdio Transport (via NPM package)
- Direct process communication
- Zero network overhead
- Best for Claude Desktop and local AI assistants
- Automatic transport detection
High Availability:
- Load Balanced - Multiple server instances
- Redis Sessions - Shared state across instances
- Health Monitoring -
/healthendpoint with readiness checks - Automatic Failover - Zero-downtime deployments
- Horizontal Scaling - Handles thousands of concurrent users
🚀 Developer Experience
Automatic Token Management
- Tracks token expiration with 10-second buffer
- Refreshes tokens automatically before expiry
- Maintains organization and tenant context
- Zero-configuration for end users
Session Persistence
- Redis-backed multi-user sessions
- 30-minute TTL (configurable)
- Session hijacking protection
- Cross-instance session sharing
Error Handling
- Descriptive error messages
- Validation errors with field details
- Automatic retry on transient failures
- Debug mode for troubleshooting
Tool Discovery
tools/list- Enumerate all 323 available tools- Complete JSON schemas for all tool parameters
- Zod validation for type safety
- Comprehensive tool descriptions
🏗️ How the Remote MCP Server Works
Architecture Overview
The Gauzy remote MCP infrastructure consists of two main production services that work together to provide secure, scalable AI assistant integration:
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ AI Assistant │ │ MCP Server │ │ Gauzy API │
│ (Claude, etc) │◄───────►│ mcp.gauzy.co │◄───────►│ api.gauzy.co │
│ │ MCP │ │ REST │ │
│ - Claude │ Proto │ 323 Tools │ API │ - Projects │
│ - ChatGPT │ col │ - HTTP/WS │ │ - Tasks │
│ - Custom Apps │ │ - Sessions │ │ - Employees │
│ │ │ - Rate Limit │ │ - Timesheets │
└─────────────────┘ └──── ──────────────┘ └─────────────────┘
│ │
│ OAuth 2.0 │
│ Tokens │
│ │
└──────────────┬────────────┘
│
▼
┌──────────────────┐
│ Auth Server │
│ mcpauth.gauzy.co │
│ │
│ - OAuth 2.0 │
│ - JWT Tokens │
│ - JWKS │
│ - User Auth │
└──────────────────┘
│
▼
┌──────────┐
│ Redis │
│ Sessions │
└──────────┘
Component Details
1. MCP Server (mcp.gauzy.co)
The production MCP server is the main entry point for all AI assistant interactions:
Core Responsibilities:
- Tool Execution - Processes 323 tool invocations from AI assistants
- Request Routing - Translates MCP protocol to Gauzy API calls
- Session Management - Maintains multi-user sessions across instances
- Authentication - Validates OAuth tokens and manages Gauzy API authentication
- Rate Limiting - Protects backend from abuse (100 req/15min)
- Response Formatting - Converts API responses to MCP-compatible format
Transport Endpoints:
POST /sse- JSON-RPC 2.0 endpoint for MCP requestsGET /sse/events- Server-Sent Events streamGET /health- Health check and readiness probeGET /.well-known/oauth-protected-resource- OAuth metadata
Processing Flow:
- Client sends JSON-RPC request (e.g.,
tools/callwithlist_projects) - HTTP/WebSocket transport receives and parses request
- Session middleware extracts user session from Redis
- OAuth middleware validates Bearer token against Auth Server
- Tool handler validates parameters with Zod schema
- AuthManager ensures valid Gauzy API token (auto-refresh if needed)
- ApiClient makes authenticated request to Gauzy API
- Response transformed to MCP format
- Result returned to client via transport layer
- Session activity timestamp updated in Redis
2. Auth Server (mcpauth.gauzy.co)
Dedicated OAuth 2.0 authorization server providing enterprise authentication:
Core Responsibilities:
- User Authentication - Validates Gauzy credentials
- Token Issuance - Generates JWT access and refresh tokens
- Client Management - OAuth client registration and validation
- Token Validation - Introspection endpoint for token verification
- Key Management - RSA/ECDSA key pairs with JWKS endpoint
OAuth Endpoints:
GET /oauth2/authorize- Authorization endpoint (browser-based)POST /oauth2/token- Token exchange endpointPOST /oauth2/introspect- Token introspection (RFC 7662)POST /oauth2/register- Dynamic client registration (RFC 7591)GET /oauth2/userinfo- OpenID Connect user infoGET /.well-known/oauth-authorization-server- Server metadata (RFC 8414)GET /.well-known/jwks.json- JSON Web Key Set for token validation
Supported Grant Types:
- Authorization Code + PKCE - For web and mobile applications
- Refresh Token - Long-lived access without re-authentication
- Client Credentials - For machine-to-machine communication
Token Structure:
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 900,
"refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"scope": "mcp.read mcp.write"
}
JWT Claims:
{
"iss": "https://mcpauth.gauzy.co",
"sub": "user-id",
"aud": "https://mcp.gauzy.co/sse",
"exp": 1735654800,
"iat": 1735654000,
"scope": "mcp.read mcp.write",
"tenant_id": "tenant-123",
"organization_id": "org-456"
}
3. Session Management (Redis)
Redis provides distributed session storage for horizontal scaling:
Session Data Structure:
{
sessionId: "mcp-session-abc123",
userId: "user-id",
tenantId: "tenant-123",
organizationId: "org-456",
gauzyAccessToken: "gauzy-jwt-token",
gauzyRefreshToken: "gauzy-refresh-token",
tokenExpiry: 1735654800000,
metadata: {
ipAddress: "192.168.1.1",
userAgent: "Claude Desktop/1.0",
createdAt: "2025-01-30T10:00:00Z",
lastActivity: "2025-01-30T10:30:00Z"
},
ttl: 1800000 // 30 minutes
}
Session Security:
- IP address and User-Agent validation (session hijacking prevention)
- Automatic cleanup of expired sessions
- Sliding TTL on each request (maintains active sessions)
- Cross-instance session sharing for load balancing
Request Flow Example
Let's trace a complete request: "Show all active projects"
-
AI Assistant (Claude Desktop):
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_projects",
"arguments": {
"filter": { "active": true }
}
}
} -
MCP Server receives request at
https://mcp.gauzy.co/sse -
Session Middleware extracts session cookie → Redis lookup → Session validated
-
OAuth Middleware extracts
Authorization: Bearer <token>header:- Checks Redis cache for token validation result
- If not cached: Fetches JWKS from
https://mcpauth.gauzy.co/.well-known/jwks.json - Validates JWT signature, expiry, audience, issuer
- Caches validation result (5 min TTL)
-
Tool Handler
list_projects:- Validates
filterparameter with Zod schema - Checks Gauzy API token expiry (stored in session)
- If expired: Calls Gauzy
/auth/refreshwith refresh token - Updates session with new tokens
- Validates
-
API Client makes request:
GET https://api.gauzy.co/api/projects?active=true
Authorization: Bearer <gauzy-token> -
Gauzy API returns projects data
-
MCP Server formats response:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "Found 5 active projects:\n1. Mobile App (Due: 2025-03-15)\n..."
}
]
}
} -
Session Updated in Redis:
lastActivity→ current timestamp -
AI Assistant receives formatted response and presents to user
🔌 Connecting to the Remote MCP Server
Connection Methods
The production Gauzy MCP server supports three connection methods to accommodate different use cases:
1. Claude Desktop Integration (Stdio via NPM)
The easiest way to connect Claude Desktop to the remote Gauzy MCP Server:
Configuration (~/.claude_desktop_config.json):
{
"mcpServers": {
"gauzy": {
"command": "npx",
"args": ["-y", "@gauzy/mcp-server"],
"env": {
"API_BASE_URL": "https://api.gauzy.co",
"GAUZY_AUTH_EMAIL": "your-email@example.com",
"GAUZY_AUTH_PASSWORD": "your-password"
}
}
}
}
How it works:
- NPX downloads and runs the latest
@gauzy/mcp-serverpackage - Package connects to your Gauzy API endpoint
- Authenticates with your credentials
- Establishes stdio communication with Claude Desktop
- Automatically manages tokens and sessions
Demo Environment:
{
"mcpServers": {
"gauzy-demo": {
"command": "npx",
"args": ["-y", "@gauzy/mcp-server"],
"env": {
"API_BASE_URL": "https://apidemo.gauzy.co",
"GAUZY_AUTH_EMAIL": "demo@gauzy.co",
"GAUZY_AUTH_PASSWORD": "demo123"
}
}
}
}
2. HTTP/REST API Integration
For web applications, mobile apps, or any HTTP client:
Endpoint: https://mcp.gauzy.co/sse
Example - List Available Tools:
curl -X POST https://mcp.gauzy.co/sse \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_OAUTH_TOKEN" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {}
}'
Example - Execute Tool:
curl -X POST https://mcp.gauzy.co/sse \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_OAUTH_TOKEN" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "list_projects",
"arguments": {
"filter": { "active": true }
}
}
}'
Available Endpoints:
POST /sse- MCP JSON-RPC 2.0 requestsGET /sse/events- Server-Sent Events streamGET /health- Health checkGET /.well-known/oauth-protected-resource- OAuth metadata
Features:
- JSON-RPC 2.0 over HTTPS
- OAuth 2.0 Bearer token authentication
- CORS-enabled for web applications
- Session cookies for state management
- Rate limiting: 100 requests per 15 minutes
3. WebSocket Real-Time Connection
For real-time bidirectional communication:
Endpoint: wss://mcp.gauzy.co/sse
Example with wscat:
# Install wscat
npm install -g wscat
# Connect to WebSocket server
wscat -c wss://mcp.gauzy.co/sse \
-H "Authorization: Bearer YOUR_OAUTH_TOKEN"
# Send initialization
{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"my-client","version":"1.0.0"}}}
# List tools
{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}
# Execute tool
{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"list_projects","arguments":{}}}
Features:
- Persistent connection with automatic reconnection
- Compression enabled (per-message deflate)
- 16MB max payload size
- Server-initiated notifications
- Sub-second latency
- Perfect for dashboards and live monitoring
🔐 OAuth 2.0 Authentication
For HTTP and WebSocket connections, the remote MCP server requires OAuth 2.0 Bearer tokens.
Get an Access Token
Step 1: Discover OAuth Metadata
curl https://mcpauth.gauzy.co/.well-known/oauth-authorization-server
Response includes:
authorization_endpoint- Where to send users for authorizationtoken_endpoint- Where to exchange codes for tokensintrospection_endpoint- Token validationjwks_uri- Public keys for JWT verificationgrant_types_supported- Available OAuth flowsscopes_supported- Available permission scopes
Step 2: Register OAuth Client
curl -X POST https://mcpauth.gauzy.co/oauth2/register \
-H "Content-Type: application/json" \
-d '{
"client_name": "My Application",
"redirect_uris": ["https://myapp.com/callback"],
"grant_types": ["authorization_code", "refresh_token"],
"response_types": ["code"],
"scope": "mcp.read mcp.write",
"token_endpoint_auth_method": "none"
}'
Response:
{
"client_id": "client_abc123xyz",
"client_name": "My Application",
"redirect_uris": ["https://myapp.com/callback"],
"grant_types": ["authorization_code", "refresh_token"],
"response_types": ["code"],
"scope": "mcp.read mcp.write"
}
Step 3: Authorization Code Flow (with PKCE)
Generate PKCE verifier and challenge:
// Generate code verifier (43-128 characters)
const codeVerifier = generateRandomString(128);
// Generate code challenge (SHA256 hash, base64url encoded)
const codeChallenge = base64urlEncode(sha256(codeVerifier));
Redirect user to authorization endpoint:
https://mcpauth.gauzy.co/oauth2/authorize?
response_type=code&
client_id=client_abc123xyz&
redirect_uri=https://myapp.com/callback&
scope=mcp.read%20mcp.write&
state=random_state_string&
code_challenge=CODE_CHALLENGE_HERE&
code_challenge_method=S256
User authenticates with Gauzy credentials and grants permission.
Receive authorization code at your redirect URI:
https://myapp.com/callback?code=auth_code_here&state=random_state_string