Skip to main content
Glama

CMP MCP Server

A Model Context Protocol (MCP) server for CMP (Connectivity Management Platform) API integration, built for Cloudflare Workers.

Features

  • πŸ” Query SIM List - Retrieve SIM cards with filtering options (status, date range, ICCID range, etc.)

  • πŸ“± Query SIM Details - Get comprehensive SIM card information including usage statistics

  • πŸ” Secure Authentication - HMAC-SHA256 signature-based API authentication

  • ☁️ Cloudflare Workers - Serverless deployment with global edge network

  • 🌐 MCP Compatible - Works with Claude Desktop and other MCP clients

Quick Start

1. Environment Setup

Create your environment variables in Cloudflare Workers dashboard:

# Required environment variables (set as secrets in Cloudflare) CMP_APP_KEY=your_cmp_app_key CMP_APP_SECRET=your_cmp_app_secret

The CMP_ENDPOINT is already configured in wrangler.jsonc.

2. Deploy to Cloudflare Workers

# Install dependencies npm install # Deploy to Cloudflare Workers npm run deploy

3. Local Development

# Copy environment template cp .env.example .env # Edit .env with your actual credentials # Then start development server npm run dev

Configuration

Environment Variables

Variable

Description

Required

CMP_APP_KEY

Your CMP API application key

βœ…

CMP_APP_SECRET

Your CMP API application secret

βœ…

CMP_ENDPOINT

CMP API endpoint URL

❌ (defaults to production)

Setting Secrets in Cloudflare

# Set your API credentials as secrets wrangler secret put CMP_APP_KEY wrangler secret put CMP_APP_SECRET

Available Tools

query_sim_list

Query SIM cards with filtering options.

Parameters:

  • pageNum (optional): Page number (default: 1)

  • pageSize (optional): Records per page (default: 10, max: 1000)

  • enterpriseDataPlan (optional): Enterprise data plan name

  • expirationTimeStart (optional): Start expiration date (yyyy-MM-dd)

  • expirationTimeEnd (optional): End expiration date (yyyy-MM-dd)

  • iccidStart (optional): ICCID start range

  • iccidEnd (optional): ICCID end range

  • label (optional): SIM card label

  • simState (optional): SIM state (2=Pre-activation, 3=Test, 4=Silent, 5=Standby, 6=Active, 7=Shutdown, 8=Pause, 10=Pre-logout, 11=Logout)

  • simType (optional): SIM card type

query_sim_detail

Get detailed information for a specific SIM card.

Parameters:

  • iccid (required): SIM card ICCID number

Connect to Claude Desktop

To connect your MCP server to Claude Desktop, follow Anthropic's Quickstart and update your Claude Desktop configuration:

{ "mcpServers": { "cmp-server": { "command": "npx", "args": [ "mcp-remote", "https://your-cmp-server.workers.dev/sse" ] } } }

Connect to Cloudflare AI Playground

  1. Go to https://playground.ai.cloudflare.com/

  2. Enter your deployed MCP server URL (your-cmp-server.workers.dev/sse)

  3. Start using your CMP tools directly!

Development

Project Structure

src/ β”œβ”€β”€ index.ts # Main MCP server implementation β”œβ”€β”€ cmp_client.ts # CMP API client with authentication └── ...

Scripts

npm run dev # Start development server npm run deploy # Deploy to Cloudflare Workers npm run type-check # Run TypeScript type checking npm run lint:fix # Fix linting issues npm run format # Format code

Security

  • βœ… API credentials stored as Cloudflare Workers secrets

  • βœ… HMAC-SHA256 signature authentication

  • βœ… Environment variables validation

  • βœ… No sensitive data in source code

  • βœ… .gitignore configured for security

License

MIT License - see LICENSE file for details.

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Acceleronix/cmp-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server