MewCP Razorpay MCP
Servidor MCP Razorpay hospedado, sem estado e multilocatário permite que assistentes de IA gerenciem pagamentos, clientes, assinaturas, faturas e operações financeiras através do Razorpay.
Documentação
Automatize pagamentos, reembolsos e liquidações do Razorpay por meio de IA.
Um servidor Model Context Protocol (MCP) que expõe a API do Razorpay para gerenciar pedidos, pagamentos, reembolsos e liquidações.
Visão geral
O servidor MCP do Razorpay oferece gerenciamento completo do ciclo de vida de pagamentos por meio de IA:
- Crie e acompanhe pedidos, capture e atualize pagamentos
- Emita reembolsos totais ou parciais com controle de velocidade
- Consulte liquidações e reconcilie o histórico de transações
Perfeito para:
- Automatizar fluxos de reembolso e consultas de pagamento no suporte ao cliente
- Criar painéis com tecnologia de IA que extraem dados de pagamento e liquidação em tempo real
- Disparar criação de pedidos e captura de pagamentos a partir de interfaces conversacionais
Ferramentas
health_check — Verifica a prontidão do servidor
Retorna um objeto de status confirmando que o servidor está em execução e acessível.
Entradas: (nenhuma)
Saída:
{
"status": "ok",
"server": "CL Razorpay MCP Server"
}
create_order — Cria um novo pedido no Razorpay
Cria um novo objeto de pedido. O ID do pedido retornado é passado para o SDK de checkout do Razorpay no frontend para iniciar o pagamento.
Entradas:
- `amount` (integer, required) — Amount in smallest currency unit (e.g. paise for INR)
- `currency` (string, required) — ISO 4217 currency code, e.g. 'INR'
- `receipt` (string, optional) — Merchant receipt number (max 40 chars)
- `notes` (object, optional) — Key-value notes to attach to the order
- `partial_payment` (boolean, optional) — Whether partial payments are allowed (default: false)
Saída:
{
"id": "order_XXXXXXXXXX",
"entity": "order",
"amount": 50000,
"currency": "INR",
"status": "created"
}
fetch_order — Busca um pedido específico
Recupera todos os detalhes de um único pedido do Razorpay pelo seu ID.
Entradas:
- `order_id` (string, required) — Razorpay order ID (e.g. 'order_XXXXXXXXXX')
Saída:
{
"id": "order_XXXXXXXXXX",
"entity": "order",
"amount": 50000,
"amount_paid": 0,
"status": "created"
}
fetch_all_orders — Busca lista paginada de pedidos
Retorna uma lista filtrada e paginada de todos os pedidos do Razorpay. Suporta filtragem por intervalo de timestamp Unix.
Entradas:
- `count` (integer, optional) — Number of orders to fetch, max 100 (default: 10)
- `skip` (integer, optional) — Number of orders to skip for pagination (default: 0)
- `from_timestamp` (integer, optional) — Unix timestamp — fetch orders created after this time
- `to_timestamp` (integer, optional) — Unix timestamp — fetch orders created before this time
Saída:
{
"entity": "collection",
"count": 10,
"items": [...]
}
fetch_payments_for_order — Busca pagamentos de um pedido específico
Retorna todos os pagamentos feitos para um determinado ID de pedido.
Entradas:
- `order_id` (string, required) — Razorpay order ID (e.g. 'order_XXXXXXXXXX')
Saída:
{
"entity": "collection",
"count": 1,
"items": [...]
}
update_order — Atualiza notas em um pedido
Altera o campo de notas em um pedido existente. Somente o campo de notas pode ser atualizado após a criação.
Entradas:
- `order_id` (string, required) — Razorpay order ID (e.g. 'order_XXXXXXXXXX')
- `notes` (object, required) — Key-value notes to update on the order
Saída:
{
"id": "order_XXXXXXXXXX",
"notes": { "key": "value" }
}
fetch_payment — Busca um pagamento específico
Recupera todos os detalhes de um único pagamento do Razorpay pelo seu ID.
Entradas:
- `payment_id` (string, required) — Razorpay payment ID (e.g. 'pay_XXXXXXXXXX')
Saída:
{
"id": "pay_XXXXXXXXXX",
"entity": "payment",
"amount": 50000,
"currency": "INR",
"status": "captured"
}
fetch_all_payments — Busca lista paginada de pagamentos
Retorna uma lista filtrada e paginada de todos os pagamentos do Razorpay. Suporta filtragem por intervalo de timestamp Unix.
Entradas:
- `count` (integer, optional) — Number of payments to fetch, max 100 (default: 10)
- `skip` (integer, optional) — Number of payments to skip for pagination (default: 0)
- `from_timestamp` (integer, optional) — Unix timestamp — fetch payments created after this time
- `to_timestamp` (integer, optional) — Unix timestamp — fetch payments created before this time
Saída:
{
"entity": "collection",
"count": 10,
"items": [...]
}
capture_payment — Captura um pagamento autorizado
Captura um pagamento que está no estado authorized. O valor deve corresponder exatamente ao valor autorizado.
Entradas:
- `payment_id` (string, required) — Razorpay payment ID (e.g. 'pay_XXXXXXXXXX')
- `amount` (integer, required) — Amount to capture in smallest currency unit (must match authorized amount)
- `currency` (string, required) — ISO 4217 currency code, e.g. 'INR'
Saída:
{
"id": "pay_XXXXXXXXXX",
"status": "captured",
"amount": 50000
}
update_payment — Atualiza notas em um pagamento
Altera o campo de notas em um pagamento existente.
Entradas:
- `payment_id` (string, required) — Razorpay payment ID (e.g. 'pay_XXXXXXXXXX')
- `notes` (object, required) — Key-value notes to update on the payment
Saída:
{
"id": "pay_XXXXXXXXXX",
"notes": { "key": "value" }
}
create_refund — Cria um reembolso para um pagamento
Emite um reembolso total ou parcial para um pagamento capturado. Omita o valor para um reembolso total. A velocidade optimum usa reembolso instantâneo quando disponível.
Entradas:
- `payment_id` (string, required) — Razorpay payment ID to refund (e.g. 'pay_XXXXXXXXXX')
- `amount` (integer, optional) — Refund amount in smallest currency unit; omit for full refund
- `speed` (string, optional) — Refund speed: 'normal' (default) or 'optimum'
- `notes` (object, optional) — Key-value notes to attach to the refund
- `receipt` (string, optional) — Unique merchant receipt number for the refund
Saída:
{
"id": "rfnd_XXXXXXXXXX",
"entity": "refund",
"amount": 50000,
"speed_processed": "normal",
"status": "processed"
}
fetch_refund — Busca um reembolso específico
Recupera todos os detalhes de um único reembolso do Razorpay pelo seu ID.
Entradas:
- `refund_id` (string, required) — Razorpay refund ID (e.g. 'rfnd_XXXXXXXXXX')
Saída:
{
"id": "rfnd_XXXXXXXXXX",
"entity": "refund",
"amount": 50000,
"status": "processed"
}
fetch_all_refunds — Busca lista paginada de reembolsos
Retorna uma lista filtrada e paginada de todos os reembolsos do Razorpay. Suporta filtragem por intervalo de timestamp Unix.
Entradas:
- `count` (integer, optional) — Number of refunds to fetch, max 100 (default: 10)
- `skip` (integer, optional) — Number of refunds to skip for pagination (default: 0)
- `from_timestamp` (integer, optional) — Unix timestamp — fetch refunds created after this time
- `to_timestamp` (integer, optional) — Unix timestamp — fetch refunds created before this time
Saída:
{
"entity": "collection",
"count": 10,
"items": [...]
}
fetch_refunds_for_payment — Busca todos os reembolsos de um pagamento
Retorna todos os reembolsos emitidos contra um ID de pagamento específico, com suporte a paginação.
Entradas:
- `payment_id` (string, required) — Razorpay payment ID (e.g. 'pay_XXXXXXXXXX')
- `count` (integer, optional) — Number of refunds to fetch, max 100 (default: 10)
- `skip` (integer, optional) — Number of refunds to skip for pagination (default: 0)
Saída:
{
"entity": "collection",
"count": 2,
"items": [...]
}
update_refund — Atualiza notas em um reembolso
Altera o campo de notas em um reembolso existente.
Entradas:
- `refund_id` (string, required) — Razorpay refund ID (e.g. 'rfnd_XXXXXXXXXX')
- `notes` (object, required) — Key-value notes to update on the refund
Saída:
{
"id": "rfnd_XXXXXXXXXX",
"notes": { "key": "value" }
}
fetch_all_settlements — Busca lista paginada de liquidações
Retorna uma lista filtrada e paginada de todas as liquidações do Razorpay. Suporta filtragem por intervalo de timestamp Unix.
Entradas:
- `count` (integer, optional) — Number of settlements to fetch, max 100 (default: 10)
- `skip` (integer, optional) — Number of settlements to skip for pagination (default: 0)
- `from_timestamp` (integer, optional) — Unix timestamp — fetch settlements created after this time
- `to_timestamp` (integer, optional) — Unix timestamp — fetch settlements created before this time
Saída:
{
"entity": "collection",
"count": 10,
"items": [...]
}
fetch_settlement — Busca uma liquidação específica
Recupera todos os detalhes de uma única liquidação do Razorpay pelo seu ID.
Entradas:
- `settlement_id` (string, required) — Razorpay settlement ID (e.g. 'setl_XXXXXXXXXX')
Saída:
{
"id": "setl_XXXXXXXXXX",
"entity": "settlement",
"amount": 1000000,
"status": "processed"
}
Referência de Parâmetros da API
Parâmetros Comuns
count— Número de registros a retornar por solicitação (máx. 100, padrão 10)skip— Número de registros a pular; use comcountpara paginaçãofrom_timestamp— Timestamp Unix epoch (segundos); filtra registros criados neste horário ou depoisto_timestamp— Timestamp Unix epoch (segundos); filtra registros criados neste horário ou antes
Formatos de ID de Recursos
Pedidos:
order_{alphanumeric}
Example: order_OGN1lSF2fk1JNW
Pagamentos:
pay_{alphanumeric}
Example: pay_OGN1lSF2fk1JNW
Reembolsos:
rfnd_{alphanumeric}
Example: rfnd_OGN1lSF2fk1JNW
Liquidações:
setl_{alphanumeric}
Example: setl_OGN1lSF2fk1JNW
Formatação de Valores
Todos os valores estão na menor unidade monetária:
- INR → paise (₹500,00 =
50000) - USD → centavos ($10,00 =
1000) - EUR → centavos (€10,00 =
1000)
Como Obter Suas Chaves de API do Razorpay
Etapas
- Acesse o Painel do Razorpay
- Navegue até Configurações → Chaves de API
- Clique em Gerar Chave de Teste (para modo de teste) ou Gerar Chave ao Vivo (para produção)
- Copie o ID da Chave e o Segredo da Chave — o segredo é exibido apenas uma vez; armazene-o com segurança
Use chaves de modo de teste (prefixadas com
rzp_test_) durante o desenvolvimento e chaves ao vivo (rzp_live_) em produção.
Solução de Problemas
Cabeçalhos Ausentes ou Inválidos
- Causa: Chave de API não fornecida nos cabeçalhos da solicitação ou formato incorreto
- Solução:
- Verifique se os cabeçalhos
Authorization: Bearer YOUR_API_KEYeX-Mewcp-Credential-Id: CREDENTIAL-IDestão presentes - Verifique se a chave de API está ativa na sua conta MewCP
- Verifique se os cabeçalhos
Créditos Insuficientes
- Causa: As chamadas de API excederam seus limites de solicitação
- Solução:
- Verifique o uso de créditos no seu painel do Curious Layer
- Atualize para um plano pago ou adicione créditos para limites maiores
- Entre em contato com o suporte para ajustes de crédito
Credencial Não Conectada
- Causa: Nenhuma credencial do Razorpay vinculada à sua conta
- Solução:
- Acesse Credenciais no seu painel MewCP
- Adicione seu ID de Chave e Segredo da Chave do Razorpay
- Tente novamente a solicitação com o cabeçalho
X-Mewcp-Credential-Idcorreto
Payload de Solicitação Malformado
- Causa: O payload JSON é inválido ou está faltando campos obrigatórios
- Solução:
- Valide a sintaxe JSON antes de enviar
- Garanta que todos os parâmetros obrigatórios da ferramenta estejam incluídos
- Verifique se
amounté um inteiro na menor unidade monetária, não um decimal
Servidor Não Encontrado
- Causa: Nome incorreto do servidor no endpoint da API
- Solução:
- Verifique o formato do endpoint:
{server-name}/mcp/{tool-name} - Use o nome correto do servidor conforme a documentação
- Verifique os servidores disponíveis na sua conta do Curious Layer
- Verifique o formato do endpoint:
Erro de API do Razorpay
- Causa: A API upstream do Razorpay retornou um erro
- Solução:
- Verifique o status do serviço do Razorpay na Página de Status do Razorpay
- Verifique se suas chaves de API têm as permissões necessárias para a operação
- Revise a mensagem de erro para obter detalhes específicos (por exemplo, pagamento não está no estado
authorizedpara captura)
Recursos
- Documentação da API do Razorpay — Referência oficial da API
- Painel do Razorpay — Gerencie chaves, pedidos e liquidações
- Documentação do FastMCP — Especificação do FastMCP
- Credenciais do FastMCP — Pacote de Credenciais do FastMCP para gerenciamento de credenciais