Skip to main content
Glama
indratjhai

xendit-mcp

by indratjhai

xendit-mcp (только для чтения)

Минималистичный MCP-сервер для Xendit с доступом только для чтения. Создан для агента CareNow Issue Resolver — выполняет поиск платежей, выплат, возвратов и транзакций по виртуальным счетам (VA). Никогда не переводит деньги.

Неофициальный проект. Не связан с Xendit и не поддерживается компанией Xendit.

Почему только для чтения?

Агенты не должны иметь возможность вызывать create_disbursement, create_refund или expire_invoice — даже через инъекцию промпта из поля на стороне Xendit. Этот сервер предоставляет только GET-эндпоинты. Для обеспечения эшелонированной защиты также используйте API-ключ Xendit с правами доступа *_READ.

Установка и запуск

Клонирование не требуется. Установите напрямую из GitHub через npx:

{
  "mcpServers": {
    "xendit": {
      "command": "npx",
      "args": ["-y", "github:indratjhai/xendit-mcp"],
      "env": {
        "XENDIT_API_KEY": "xnd_development_..."
      }
    }
  }
}

При первом запуске npm клонирует репозиторий, устанавливает зависимости и выполняет npm run build через скрипт prepare. После этого запуск происходит из кэшированной установки.

Зафиксируйте конкретный коммит для воспроизводимости:

"args": ["-y", "github:indratjhai/xendit-mcp#<commit-sha>"]

Локальная разработка

git clone https://github.com/indratjhai/xendit-mcp.git
cd xendit-mcp
npm install
cp .env.example .env  # fill in XENDIT_API_KEY
npm run dev

API-ключ

  1. Перейдите на https://dashboard.xendit.co/settings/developers#api-keys

  2. Создайте ключ с правами только для чтения (READ-only):

    • BALANCE_READ

    • INVOICE_READ

    • TRANSACTION_READ

    • DISBURSEMENT_READ

    • REFUND_READ

    • PAYMENT_REQUEST_READ

  3. Используйте тестовый ключ xnd_development_... во время разработки.

Инструменты

Инструмент

Назначение

xendit_get_balance

Баланс счета по типу (CASH / HOLDING / TAX)

xendit_list_invoices

Фильтрация по external_id, статусу, диапазону дат

xendit_get_invoice

Счет по ID

xendit_list_transactions

Основной инструмент — фильтрация по reference_id, типу, каналу, дате

xendit_get_transaction

Транзакция по ID

xendit_get_disbursement

Выплата по ID

xendit_get_disbursement_by_external_id

Выплата по вашему идентификатору ссылки

xendit_list_refunds

Фильтрация по payment_request_id / invoice_id / reference_id

xendit_get_refund

Возврат по ID

xendit_list_payment_requests

Новый API платежей — фильтрация по reference_id

xendit_get_payment_request

Запрос на оплату по ID

xendit_get_fixed_va

Виртуальный счет — для расследований по ошибочным VA

xendit_get_va_payment

Платеж по VA по payment_id

Чего здесь нет (преднамеренно)

  • create_invoice, expire_invoice

  • create_disbursement

  • create_refund

  • create_payment_request

  • Любые POST / PATCH / DELETE

Если для рабочего процесса требуется изменение данных, это должно выполняться вручную в панели управления Xendit или через отдельный процесс утверждения, который проверяет человек, а не через сессию агента.

Примечания по безопасности

  • API-ключ считывается из переменной окружения XENDIT_API_KEY. Никогда не логируется, никогда не отправляется в вывод инструмента.

  • Исходящий сетевой трафик жестко закодирован на https://api.xendit.co — другие хосты запрещены.

  • Идентификаторы в компонентах пути проверяются по регулярному выражению ^[a-zA-Z0-9_-]+$ и кодируются в URL.

  • Все входные данные инструментов проверяются с помощью zod.

  • Только зависимости времени выполнения: @modelcontextprotocol/sdk, zod.

Лицензия

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/indratjhai/xendit-mcp'

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