npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

cursor-pro-limits-mcp

v1.0.1

Published

MCP server for monitoring Cursor Pro usage limits and API quotas

Readme

Cursor Pro Limits MCP Server

A Model Context Protocol (MCP) server for monitoring Cursor Pro usage limits and API quotas. This server helps you track your daily usage across different AI services and stay within your Cursor Pro limits.

Features

  • 📊 Real-time Usage Monitoring: Track Sonnet 4.5, Gemini, and GPT-5 request usage
  • 🚨 Alert System: Get warnings when approaching limits
  • 📈 Usage Statistics: Detailed breakdown of current usage vs. limits
  • 🔧 Easy Integration: Works with any MCP-compatible client
  • 🎯 TypeScript: Fully typed with strict TypeScript configuration

Cursor Pro Limits (Monthly)

Based on Cursor Pro subscription limits:

Pro Tier

  • Sonnet 4.5: 225 requests/month
  • Gemini: 550 requests/month
  • GPT-5: 500 requests/month
  • Total: 1,275 requests/month

Pro+ Tier

  • Sonnet 4.5: 675 requests/month
  • Gemini: 1,650 requests/month
  • GPT-5: 1,500 requests/month
  • Total: 3,825 requests/month

Ultra Tier

  • Sonnet 4.5: 4,500 requests/month
  • Gemini: 11,000 requests/month
  • GPT-5: 10,000 requests/month
  • Total: 25,500 requests/month

Installation

npm install cursor-pro-limits-mcp

Usage

As an MCP Server

  1. Configure your MCP client to use this server:
{
  "mcpServers": {
    "cursor-pro-limits": {
      "command": "npx",
      "args": ["cursor-pro-limits-mcp"]
    }
  }
}
  1. Available Tools:

get_usage_stats

Get comprehensive usage statistics for all services.

// Returns current usage, limits, percentages, and remaining requests

get_service_usage

Get detailed usage for a specific service.

Parameters:

  • service: "sonnet45" | "gemini" | "gpt5" | "total"

check_alerts

Check for services approaching or exceeding limits.

update_usage

Update usage statistics (for testing or manual updates).

Parameters:

  • sonnet45Requests (optional): Number of Sonnet 4.5 requests
  • geminiRequests (optional): Number of Gemini requests
  • gpt5Requests (optional): Number of GPT-5 requests
  • totalRequests (optional): Total number of requests

set_subscription_tier

Set the subscription tier (pro, pro-plus, ultra).

Parameters:

  • tier: Subscription tier ("pro", "pro-plus", or "ultra")

get_subscription_info

Get current subscription tier and limits information.

Programmatic Usage

import { CursorLimitsMonitor } from 'cursor-pro-limits-mcp';

// Create monitor for Pro tier (default)
const monitor = new CursorLimitsMonitor('pro');

// Get current usage stats
const stats = monitor.getUsageStats();
console.log(`Sonnet 4.5: ${stats.limits.sonnet45Requests}/${stats.quotas.maxSonnet45Requests}`);

// Check for alerts
const alerts = monitor.checkAlerts();
if (alerts.length > 0) {
  console.log('Warning: Approaching limits!');
}

// Update usage (e.g., from API response)
monitor.updateLimits({
  sonnet45Requests: 150,
  geminiRequests: 300,
  gpt5Requests: 200,
  totalRequests: 650
});

// Switch to Pro+ tier for higher limits
monitor.updateTier('pro-plus');
console.log(`Switched to ${monitor.getCurrentTier()} tier`);

Development

Prerequisites

  • Node.js 18.0.0 or higher
  • npm or yarn

Setup

# Clone the repository
git clone <repository-url>
cd cursor-pro-limits-mcp

# Install dependencies
npm install

# Build the project
npm run build

Available Scripts

# Build TypeScript
npm run build

# Watch mode for development
npm run dev

# Start the server
npm start

# Lint code
npm run lint

# Fix linting issues
npm run lint:fix

# Format code
npm run format

# Check formatting
npm run format:check

# Clean build directory
npm run clean

Code Quality

This project uses:

  • TypeScript with strict configuration
  • ESLint for code linting
  • Prettier for code formatting
  • No any types - fully typed codebase

API Reference

Types

interface CursorProLimits {
  sonnet45Requests: number;
  geminiRequests: number;
  gpt5Requests: number;
  totalRequests: number;
  lastUpdated: Date;
}

interface UsageStats {
  limits: CursorProLimits;
  quotas: CursorProQuotas;
  usagePercentages: {
    sonnet45: number;
    gemini: number;
    gpt5: number;
    total: number;
  };
  remaining: {
    sonnet45: number;
    gemini: number;
    gpt5: number;
    total: number;
  };
}

Methods

CursorLimitsMonitor

  • getUsageStats(): Get comprehensive usage statistics
  • getServiceUsage(service): Get usage for specific service
  • checkAlerts(): Check for services approaching limits
  • updateLimits(limits): Update usage statistics
  • onUpdate(callback): Subscribe to usage updates

Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes
  4. Run tests and linting: npm run lint && npm run format:check
  5. Commit your changes: git commit -m 'Add amazing feature'
  6. Push to the branch: git push origin feature/amazing-feature
  7. Open a Pull Request

License

MIT License - see LICENSE file for details.

Support

For issues and questions:

  • Open an issue on GitHub
  • Check the documentation
  • Review the TypeScript types for API reference