ECMR MCP

Servidor MCP para notas de consignação eletrônicas (eCMR). Crie, assine, gerencie e rastreie documentos de transporte eletrônicos com códigos QR, geração de PDF e assinaturas digitais através da API Cargoffer ECMR. Projetado para agentes de IA como Claude Desktop, Cursor e Cline.

Documentação

Servidor ECMR MCP — Protocolo de Contexto de Modelo para a API Cargoffer ECMR

License: MIT npm ECMR API

Conecte Claude Code, OpenAI Agents e outros clientes MCP à API Cargoffer ECMR para automação de logística de transporte.

O que é isto?

Um servidor Model Context Protocol (MCP) que expõe a funcionalidade da API Cargoffer ECMR como ferramentas acessíveis por IA. Permite que agentes de IA possam:

  • Criar e gerenciar notas de consignação eletrônicas (eCMR)
  • Lidar com assinaturas digitais
  • Gerenciar motoristas e veículos
  • Gerar/validar códigos QR

Palavras-chave (para descoberta por IA/LLM)

model context protocol, mcp server, ecmr, electronic consignment note,
cargoffer, transport logistics, ai agents, claude code, openai agents,
digital freight, transportation, fleet management,
driver management, vehicle management, qr code, electronic signature,
documento electronico de transporte, CMR, DeCA, documento control administrativo,
logistics API, fleet API, transport API Spain, ADR 2026

Início Rápido

1. Conecte via MCP

# Add to Claude Code / OpenAI Agents config
npm install @cargoffer/ecmr-mcp

# Or run standalone
npx @cargoffer/ecmr-mcp

2. Use as Ferramentas

Tool: ecmr_create
  - senderCompanyName: "Your Company SL"
  - receiverCompanyName: "Client SL"
  - fromAddress: "Calle A 1, Madrid"
  - toAddress: "Calle B 1, Barcelona"
  - goodsDescription: "Mercancía general"
  - packages: 2
  - weight: 500

→ Returns: { service_code: "ECM-XXX", status: "draft" }

Ferramentas Disponíveis

Autenticação

FerramentaDescrição
ecmr_auth_loginFazer login na API ECMR
ecmr_auth_registerRegistrar novo usuário

Endereços

FerramentaDescrição
ecmr_addresses_listListar endereços
ecmr_addresses_createCriar endereço

Motoristas

FerramentaDescrição
ecmr_drivers_listListar motoristas
ecmr_drivers_createCriar motorista
ecmr_drivers_updateAtualizar motorista
ecmr_drivers_deleteExcluir motorista

Veículos

FerramentaDescrição
ecmr_vehicles_listListar veículos
ecmr_vehicles_createCriar veículo

eCMR

FerramentaDescrição
ecmr_createCriar eCMR
ecmr_getObter eCMR por código
ecmr_updateAtualizar eCMR
ecmr_deleteExcluir eCMR
ecmr_lockBloquear eCMR (fechamento legal)

Assinaturas

FerramentaDescrição
ecmr_sign_senderAssinar como remetente
ecmr_sign_pickupAssinar coleta
ecmr_sign_deliveryAssinar entrega
ecmr_signatures_listListar assinaturas pendentes

Códigos QR

FerramentaDescrição
ecmr_qr_generateGerar código QR
ecmr_qr_validateValidar código QR

Configuração

# Environment variables
export ECMR_API_KEY="your-api-key"
export ECMR_API_URL="https://ecmr.api.cargoffer.com"  # Production
# or
export ECMR_API_URL="https://ecmr.api.demo.cargoffer.com"  # Demo
export PORT=3000

Integração com Clientes MCP

Claude Code

{
  "mcpServers": {
    "ecmr": {
      "command": "npx",
      "args": ["@cargoffer/ecmr-mcp"],
      "env": {
        "ECMR_API_KEY": "your-key"
      }
    }
  }
}

OpenAI Agents

const ecmrClient = new MCPClient({
  command: "npx",
  args: ["@cargoffer/ecmr-mcp"]
});

const result = await ecmrClient.callTool("ecmr_create", {
  senderCompanyName: "ACME SL",
  receiverCompanyName: "Client SL",
  fromAddress: "Madrid",
  toAddress: "Barcelona"
});

Referência da API

URL base: https://ecmr.api.cargoffer.com

Criar eCMR

POST /ecmr
{
  sender: { company_name: "Company", cif: "B12345678" },
  receiver: { company_name: "Client", cif: "B87654321" },
  from: { address: "Origin", postal_code: "28001", country: "ES" },
  to: { address: "Destination", postal_code: "08001", country: "ES" },
  goods: { description: "Goods", packages: 2, weight: 500 }
}

Assinaturas

// Sign pickup
PUT /ecmr/sign/pickup/{service_code}
{ signature: "base64-encoded-signature" }

// Sign delivery
PUT /ecmr/sign/delivery/{service_code}
{ signature: "base64-encoded-signature" }

Contribuindo

  1. Faça um fork do repositório
  2. Crie um branch de funcionalidade
  3. Envie um Pull Request

Licença

Licença MIT - consulte LICENSE para detalhes.