dominican-republic-invoice-mcp
Let AI agents issue Dominican Republic e-CF invoices on the official DGII rail — get a seed, sign it with your DGII certificate, exchange for a token, submit…
Что умеет
- Get Seed: Step 1 of DGII authentication: fetch a fresh "semilla" (seed) XML from the DGII Autenticacion service — GET /Autenticacion/api/Autenticacion/Semilla. No credentials, no fiscal effect. Return
- Get Token: Step 2 of DGII authentication: exchange your SIGNED semilla for a session token — POST /Autenticacion/api/Autenticacion/ValidarSemilla (multipart field "xml"). You take the seed from get_se
- Submit Invoice: Step 3: submit an ALREADY-SIGNED e-CF (comprobante fiscal electronico) to DGII for validation — POST /Recepcion/api/FacturasElectronicas (multipart field "xml", Bearer token). Your bil
Какие данные видит
Нужен ли аккаунт
Не нужен: сервер работает без входа
Let AI agents issue Dominican Republic e-CF invoices on the official DGII rail — get a seed, sign it with your DGII certificate, exchange for a token, submit your signed e-CF and poll the TrackId. Stateless: signing stays merchant-side, nothing stored. Free TesteCF sandbox.
Как подключить
Как подключить dominican-republic-invoice-mcp к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://dominican-republic-invoice-mcp--wishpool.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить dominican-republic-invoice-mcp к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://dominican-republic-invoice-mcp--wishpool.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить dominican-republic-invoice-mcp к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://dominican-republic-invoice-mcp--wishpool.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (4)
Технические названия из tools/list. Нужны только разработчикам.
| get_seed | Step 1 of DGII authentication: fetch a fresh "semilla" (seed) XML from the DGII Autenticacion service — GET /Autenticacion/api/Autenticacion/Semilla. No credentials, no fiscal effect. Returns { seed_xml, valor, fecha }: a short-lived XML document you must SIGN with your DGII-recognized digital certificate (Digifirma or another approved CA), then pass to get_token. This server only fetches the seed — the signing happens on YOUR side. Environment header (set once in your MCP client, per-request): x-dgii-env: test (default = TesteCF certificacion, open, NO fiscal effect) | prod (eCF produccion, real fiscal effect). There is NO static API key — DGII authentication is certificate-based: you sign the semilla and each e-CF with your own DGII-recognized digital certificate (Digifirma or another approved CA). This server never signs and never stores a token or certificate. Optional owner-policy headers x-agentpay-max-amount / x-agentpay-approval-above / x-agentpay-allowed-tools. |
| get_token | Step 2 of DGII authentication: exchange your SIGNED semilla for a session token — POST /Autenticacion/api/Autenticacion/ValidarSemilla (multipart field "xml"). You take the seed from get_seed, sign it with your DGII-recognized digital certificate merchant-side, and pass it here as base64 (signed_seed_xml). Returns { token, expira, expedido } — a Bearer token valid ~1 hour; use it for submit_invoice and query_status. If the seed is not correctly signed DGII returns HTTP 400 (e.g. "Archivo no valido." when the file is missing/not XML). This server forwards the signed bytes untouched and never stores the token. Environment header (set once in your MCP client, per-request): x-dgii-env: test (default = TesteCF certificacion, open, NO fiscal effect) | prod (eCF produccion, real fiscal effect). There is NO static API key — DGII authentication is certificate-based: you sign the semilla and each e-CF with your own DGII-recognized digital certificate (Digifirma or another approved CA). This server never signs and never stores a token or certificate. Optional owner-policy headers x-agentpay-max-amount / x-agentpay-approval-above / x-agentpay-allowed-tools. |
| submit_invoice | Step 3: submit an ALREADY-SIGNED e-CF (comprobante fiscal electronico) to DGII for validation — POST /Recepcion/api/FacturasElectronicas (multipart field "xml", Bearer token). Your billing software BUILDS the e-CF XML (e-NCF, RNC emisor/comprador, Totales, ITBIS) and SIGNS it with your DGII-recognized certificate; this server does NOT generate or sign the XML — it forwards the signed bytes with your token. DGII replies { trackId, mensaje, error }: a trackId is your acuse de recibo (receipt) — the document was RECEIVED for asynchronous validation, NOT yet accepted. Poll query_status with the trackId until estado is "Aceptado" (fiscally valid) / "Aceptado Condicional" / "Rechazado" (rejected — read mensajes, fix, resubmit with a new e-NCF). An "error" with no trackId means DGII rejected the submission outright. Environment header (set once in your MCP client, per-request): x-dgii-env: test (default = TesteCF certificacion, open, NO fiscal effect) | prod (eCF produccion, real fiscal effect). There is NO static API key — DGII authentication is certificate-based: you sign the semilla and each e-CF with your own DGII-recognized digital certificate (Digifirma or another approved CA). This server never signs and never stores a token or certificate. Optional owner-policy headers x-agentpay-max-amount / x-agentpay-approval-above / x-agentpay-allowed-tools. |
| query_status | Step 4: query the validation status of a submitted e-CF by its trackId — GET /ConsultaResultado/api/Consultas/Estado?TrackId={id} (Bearer token). Returns { trackId, estado, codigo, rnc, encf, secuenciaUtilizada, fechaRecepcion, mensajes[] }. estado enum: "En Proceso" (still validating — poll again) / "Aceptado" (ACCEPTED, fiscally valid) / "Aceptado Condicional" (accepted with observations in mensajes) / "Rechazado" (REJECTED — read mensajes for the reason, fix and resubmit with a new e-NCF). Poll this after submit_invoice until estado is no longer "En Proceso". Environment header (set once in your MCP client, per-request): x-dgii-env: test (default = TesteCF certificacion, open, NO fiscal effect) | prod (eCF produccion, real fiscal effect). There is NO static API key — DGII authentication is certificate-based: you sign the semilla and each e-CF with your own DGII-recognized digital certificate (Digifirma or another approved CA). This server never signs and never stores a token or certificate. Optional owner-policy headers x-agentpay-max-amount / x-agentpay-approval-above / x-agentpay-allowed-tools. |