
by Utlyze.com
🎮 The Team Analytics Power-Up for Your AI Assistant
Brought to you by Utlyze - Zero Latency Operations Through AI Employees
npx -y cursor-admin-mcp
That's it. Your AI assistant just leveled up.
Think of this as equipping your AI with X-ray vision for your development team:
- 🏢 Team Roster - Instantly know who's on the team and their roles
- 📊 Usage Analytics - See who's actually coding vs. who's in meetings
- 💰 Credit Tracker - Know exactly where your AI credits are going
- 📈 Productivity Metrics - Lines added, AI acceptance rates, favorite models
- 🔍 Deep Insights - Which developer uses which tools, when they're most active
Stop asking your team for status updates. Your AI can now tell you:
- "Who wrote the most code this week?"
- "What's our AI spending trend?"
- "Which team member has the highest AI acceptance rate?"
- "Show me usage patterns for the last month"
You: "Show me team usage for this week"
AI: Here's your team's activity for the last 7 days:
👥 TEAM MEMBERS
1. James Brady (Owner) - [email protected]
2. Cody Vincent - [email protected]
3. 2 other members
📊 USAGE STATISTICS
• Most Active: Cody Vincent (641 AI requests)
• Most Productive: Cody Vincent (29,477 lines added)
• Top Models: claude-4-opus, gpt-4, claude-sonnet
• Active Days: 2/4 members coding daily
💰 SPENDING: $1,957.32 total
• James Brady: $1,848.57 (94.4%)
• Cody Vincent: $73.76 (3.8%)
• Others: $34.99 (1.8%)
- Node.js 16+
- A Cursor team admin API key (get it from your team settings)
npm install -g cursor-admin-mcp
git clone https://github.com/h3ro-dev/cursor-admin-mcp.git
cd cursor-admin-mcp
npm install
npm run build
Create a .env
file in the project root (or set the environment variable):
CURSOR_API_KEY=key_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json
):
{
"mcpServers": {
"cursor-admin": {
"command": "npx",
"args": ["cursor-admin-mcp"],
"env": {
"CURSOR_API_KEY": "key_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
}
}
Add to your Cursor settings:
{
"mcpServers": {
"cursor-admin": {
"command": "node",
"args": ["/path/to/cursor-admin-mcp/dist/index.js"],
"env": {
"CURSOR_API_KEY": "key_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
}
}
Get a list of all team members with their information.
Example usage in Claude/Cursor:
"Show me all team members"
"List everyone on the team with their roles"
Returns:
[
{
"name": "John Doe",
"email": "[email protected]",
"role": "admin"
},
{
"name": "Jane Smith",
"email": "[email protected]",
"role": "member"
}
]
Retrieve detailed usage metrics for a specified date range (max 90 days).
Parameters:
startDate
: Start date in epoch millisecondsendDate
: End date in epoch milliseconds
Example usage in Claude/Cursor:
"Show me usage data for the last 7 days"
"What was our team's AI acceptance rate last month?"
"Which models did we use most this week?"
Returns:
[
{
"date": "2024-01-15",
"linesAdded": 1523,
"linesDeleted": 342,
"acceptanceRate": 0.82,
"requestTypes": {
"completion": 234,
"chat": 56,
"edit": 23
},
"mostUsedModels": ["gpt-4", "claude-3"],
"mostUsedExtensions": ["copilot", "cursor-tab"],
"clientVersion": "0.42.0"
}
]
Get team spending information with optional filtering and pagination.
Optional Parameters:
searchTerm
: Filter by search termsortBy
: Field to sort bysortDirection
: "asc" or "desc"page
: Page numberpageSize
: Items per page
Example usage in Claude/Cursor:
"Show me team spending"
"Who are the top spenders this month?"
"Search for John's spending data"
Returns:
{
"members": [
{
"email": "[email protected]",
"name": "John Doe",
"spending": 125.50
}
],
"total": 1250.00,
"page": 1,
"pageSize": 10
}
# Clone the repository
git clone https://github.com/h3ro-dev/cursor-admin-mcp.git
cd cursor-admin-mcp
# Install dependencies
npm install
# Copy environment file
cp .env.example .env
# Edit .env and add your CURSOR_API_KEY
# Run in development mode
npm run dev
# Run tests
npm test
# Run tests with coverage
npm test -- --coverage
# Run tests in watch mode
npm run test:watch
# Build the project
npm run build
# Run the built version
npm start
cursor-admin-mcp/
├── src/
│ ├── index.ts # MCP server implementation
│ └── cursor-client.ts # Cursor API client
├── tests/
│ └── cursor-client.test.ts # Test suite
├── examples/
│ └── (example scripts)
├── docs/
│ └── (additional documentation)
├── package.json
├── tsconfig.json
├── jest.config.js
├── .env.example
├── .gitignore
└── README.md
// The MCP server handles all the communication
// Just use natural language in Claude/Cursor:
"Show me all team members and their roles"
"Get usage data for January 2024"
"What's our team's total spending this month?"
"Show me the AI acceptance rate trend for the last 30 days"
// Complex date ranges
"Compare usage between last week and this week"
// Specific metrics
"Which team members have the highest AI suggestion acceptance rate?"
// Spending analysis
"Show me spending sorted by amount for team members whose name contains 'John'"
The server includes comprehensive error handling:
- Invalid API Key: Clear error message if authentication fails
- Rate Limiting: Respects Cursor API rate limits
- Date Validation: Ensures date ranges don't exceed 90 days
- Network Errors: Graceful handling of connection issues
- Invalid Parameters: Detailed validation messages
- API keys are never logged or exposed
- All communication uses HTTPS
- Basic authentication as per Cursor API requirements
- Environment variables for sensitive data
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
- Write tests for new features
- Update documentation
- Follow TypeScript best practices
- Ensure all tests pass
- Add examples for new functionality
If you get authentication errors:
- Verify your API key starts with
key_
- Ensure you're a team admin
- Check the key hasn't been revoked
If the server won't connect:
- Check your internet connection
- Verify the Cursor API is accessible
- Check for any firewall restrictions
If you get date range errors:
- Ensure your date range is within 90 days
- Use epoch milliseconds for dates
- Verify endDate > startDate
MIT License - see LICENSE file for details
- Built for the Cursor editor
- Implements the Model Context Protocol
- Uses the official MCP SDK
Built by Utlyze
Utlyze - Zero Latency Operations Through AI Employees
We're pioneering the future of work by creating AI employees that seamlessly integrate with your existing workflows. The Cursor Admin MCP Server is just one example of how we're making teams more efficient through intelligent automation.
Visit Utlyze.com | Contact Us | LinkedIn
Made with ❤️ by the Utlyze team for the Cursor community