CMP MCP Server

Um servidor MCP para integração com a API CMP, construído para rodar no Cloudflare Workers.

Documentação

CMP MCP Server

Um servidor Model Context Protocol (MCP) para integração com a API da CMP (Connectivity Management Platform), construído para Cloudflare Workers.

Recursos

  • 🔍 Consultar Lista de SIM - Recuperar cartões SIM com opções de filtro (status, intervalo de datas, intervalo de ICCID, etc.)
  • 📱 Consultar Detalhes do SIM - Obter informações abrangentes do cartão SIM, incluindo estatísticas de uso
  • 🔐 Autenticação Segura - Autenticação de API baseada em assinatura HMAC-SHA256
  • ☁️ Cloudflare Workers - Implantação serverless com rede global de borda
  • 🌐 Compatível com MCP - Funciona com Claude Desktop e outros clientes MCP

Início Rápido

1. Configuração do Ambiente

Crie suas variáveis de ambiente no painel do Cloudflare Workers:

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

O CMP_ENDPOINT já está configurado no wrangler.jsonc.

2. Implantar no Cloudflare Workers

# Install dependencies
npm install

# Deploy to Cloudflare Workers
npm run deploy

3. Desenvolvimento Local

# Copy environment template
cp .env.example .env

# Edit .env with your actual credentials
# Then start development server
npm run dev

Configuração

Variáveis de Ambiente

VariávelDescriçãoObrigatório
CMP_APP_KEYSua chave de aplicação da API CMP
CMP_APP_SECRETSeu segredo de aplicação da API CMP
CMP_ENDPOINTURL do endpoint da API CMP❌ (padrão é produção)

Definindo Segredos no Cloudflare

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

Ferramentas Disponíveis

query_sim_list

Consultar cartões SIM com opções de filtro.

Parâmetros:

  • pageNum (opcional): Número da página (padrão: 1)
  • pageSize (opcional): Registros por página (padrão: 10, máx: 1000)
  • enterpriseDataPlan (opcional): Nome do plano de dados empresarial
  • expirationTimeStart (opcional): Data de expiração inicial (yyyy-MM-dd)
  • expirationTimeEnd (opcional): Data de expiração final (yyyy-MM-dd)
  • iccidStart (opcional): Intervalo inicial de ICCID
  • iccidEnd (opcional): Intervalo final de ICCID
  • label (opcional): Rótulo do cartão SIM
  • simState (opcional): Estado do SIM (2=Pré-ativação, 3=Teste, 4=Silencioso, 5=Espera, 6=Ativo, 7=Desligado, 8=Pausa, 10=Pré-logout, 11=Logout)
  • simType (opcional): Tipo de cartão SIM

query_sim_detail

Obter informações detalhadas para um cartão SIM específico.

Parâmetros:

  • iccid (obrigatório): Número ICCID do cartão SIM

Conectar ao Claude Desktop

Para conectar seu servidor MCP ao Claude Desktop, siga o Guia de Início Rápido da Anthropic e atualize sua configuração do Claude Desktop:

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

Conectar ao Cloudflare AI Playground

  1. Vá para https://playground.ai.cloudflare.com/
  2. Insira a URL do seu servidor MCP implantado (your-cmp-server.workers.dev/sse)
  3. Comece a usar suas ferramentas CMP diretamente!

Desenvolvimento

Estrutura do Projeto

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

Segurança

  • ✅ Credenciais da API armazenadas como segredos do Cloudflare Workers
  • ✅ Autenticação de assinatura HMAC-SHA256
  • ✅ Validação de variáveis de ambiente
  • ✅ Nenhum dado confidencial no código-fonte
  • .gitignore configurado para segurança

Licença

Licença MIT - consulte o arquivo LICENSE para obter detalhes.