Easy&EASY MCP Server

Easy&EASY MCP Server

Remote, stateless MCP server that exposes Easy&EASY operations via Streamable HTTP, authenticated with Bearer token and persisted in Supabase. Provides tools for chat control, metrics, user info, mode setting, licensing, and notifications.

Category
Visit Server

README

Easy&EASY MCP Server

Servidor MCP remoto, stateless e protegido por Bearer Token. Expõe as operações do Easy&EASY por Streamable HTTP e persiste dados no Supabase.

Tools

Tool Operação
block_chat Bloqueia/desbloqueia o chat
get_metrics Retorna ganhos, corridas, avaliação e tempo online
get_user_info Retorna usuário, plano, validade e status
set_mode Define modo 1 (padrão) ou 2 (avançado)
set_enabled Ativa/desativa a extensão
toggle_validity_display Mostra/oculta o countdown
get_license_info Retorna licença e uso de dispositivos
get_notifications Lista as notificações recentes

Identidade e segurança

Authorization: Bearer <MCP_API_TOKEN> autentica o cliente MCP. Como um token compartilhado não identifica um usuário, envie também X-User-Id: <uuid> ou configure DEFAULT_USER_ID para uma instalação de usuário único. A tool block_chat aceita user_id explicitamente, conforme o contrato pedido.

A SUPABASE_SERVICE_ROLE_KEY fica somente no servidor. Nunca a inclua na extensão, no Cursor ou em outro cliente. A comparação do token é feita em tempo constante e todas as rotas /mcp são protegidas. /health é público e não retorna segredos.

Instalação local

Requer Node.js 20 ou superior.

npm install
cp .env.example .env
npm run build
npm start

O servidor carrega .env automaticamente com dotenv. Também é possível sobrescrever as variáveis pelo ambiente do processo. Exemplo no PowerShell:

$env:MCP_API_TOKEN = 'um-token-longo-e-aleatorio'
$env:SUPABASE_URL = 'https://seu-projeto.supabase.co'
$env:SUPABASE_SERVICE_ROLE_KEY = 'sua-service-role-key'
$env:DEFAULT_USER_ID = 'uuid-do-usuario'
npm start

Prepare o banco executando schema.sql no SQL Editor do Supabase. O arquivo cria licenses, activations, user_preferences, metrics e notifications, habilita RLS e concede à service_role somente os privilégios usados pela Data API. Isso é necessário em projetos novos que não expõem tabelas automaticamente.

Testes HTTP

Health check:

curl http://localhost:3000/health

O MCP usa JSON-RPC 2.0. Primeiro inicialize o protocolo:

curl -X POST http://localhost:3000/mcp \
  -H "Authorization: Bearer seu-token" \
  -H "X-User-Id: uuid-do-usuario" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"curl","version":"1.0.0"}}}'

Como o transporte é stateless, uma chamada tools/list pode ser enviada em outra requisição após o cliente negociar a versão suportada:

curl -X POST http://localhost:3000/mcp \
  -H "Authorization: Bearer seu-token" \
  -H "X-User-Id: uuid-do-usuario" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'

Deploy no Render

O render.yaml contém o Blueprint. No Render:

  1. Publique este repositório no GitHub/GitLab e crie um Blueprint a partir dele, ou crie um Web Service Node manualmente.
  2. Use npm ci && npm run build como Build Command e npm start como Start Command.
  3. Configure SUPABASE_URL e SUPABASE_SERVICE_ROLE_KEY.
  4. O Blueprint gera MCP_API_TOKEN. Em configuração manual, crie essa variável como um segredo aleatório; o Render não a cria automaticamente fora do Blueprint.
  5. Opcionalmente configure DEFAULT_USER_ID.
  6. Confirme https://seu-servico.onrender.com/health e use https://seu-servico.onrender.com/mcp no cliente.

O plano gratuito pode suspender o serviço por inatividade; isso aumenta a latência da primeira chamada.

Publicação automatizada

Em Git Bash, execute ./deploy.sh. O script verifica a autenticação do GitHub, impede publicação acidental do .env, cria um repositório privado quando não há remoto e envia a branch main. Para verificar um serviço Render já criado, defina RENDER_URL e MCP_TOKEN no ambiente antes de executá-lo.

Para um serviço novo, use o fluxo de Blueprint no Dashboard. A CLI oficial atual usa render services create para criação e render deploys create <SERVICE_ID> para disparar deploys; o comando antigo render deploy --service não é válido.

Cursor / clientes HTTP MCP

{
  "mcpServers": {
    "easy-easy": {
      "url": "https://easy-easy-mcp.onrender.com/mcp",
      "headers": {
        "Authorization": "Bearer SEU_TOKEN",
        "X-User-Id": "UUID_DO_USUARIO"
      }
    }
  }
}

Claude Desktop

Claude Desktop normalmente inicia servidores locais por stdio; uma URL HTTP remota requer um conector/bridge que suporte Streamable HTTP. Quando a versão instalada aceitar servidores MCP remotos, use a mesma URL e os mesmos headers do exemplo acima. Não use npx @modelcontextprotocol/sdk connect: o SDK oficial é uma biblioteca e não fornece esse comando genérico.

Extensão

Crie um novo módulo tool-nome.ts, implemente um handler assíncrono que retorna CallToolResult e registre-o em mcp-server.ts. Cada requisição cria servidor e transporte novos; nenhum estado de usuário é mantido em memória.

Nota de estrutura: este checkout OneDrive recusou a criação de subdiretórios pelo sistema operacional. Por isso os módulos estão na raiz, com prefixos claros. Em um checkout normal, eles podem ser movidos sem mudança de lógica para src/tools, src/auth, src/supabase e src/types, ajustando os imports e rootDir.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured