Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Descripción del creador (original en inglés)
Bulgarian accounting platform nula.bg: invoices, bills, OCR, customers, inventory and banking.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
NULA_API_KEY, NULA_READ_ONLY, NULA_PROFILESLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Descargar el archivo .mcpb del creador
El enlace lleva al archivo del propio creador; no lo alojamos ni lo reempaquetamos. Abre el archivo y Claude Desktop lo instalará.
Ejecuta esto en tu terminal
claude mcp add nulabg --env NULA_API_KEY=your-value --env NULA_READ_ONLY=your-value --env NULA_PROFILES=your-value -- npx -y nulabg-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"nulabg": {
"command": "npx",
"args": [
"-y",
"nulabg-mcp"
],
"env": {
"NULA_API_KEY": "your-value",
"NULA_READ_ONLY": "your-value",
"NULA_PROFILES": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"nulabg": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"nulabg-mcp"
],
"env": {
"NULA_API_KEY": "your-value",
"NULA_READ_ONLY": "your-value",
"NULA_PROFILES": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
NULA_READ_ONLY envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 10 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub encorp-io, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: NULA_API_KEY, NULA_PROFILES
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.1.0) llegó al registro hace 44 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js, MCPB en tu computadora.
En la misma categoría: Finance Toolkit, SolidInvoice, Korea Tax Calculator
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 97 tools with statutory citations.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
MCP сървър за счетоводната платформа nula.bg. Дава на Claude и на други AI асистенти (Claude Desktop, Claude Code, Cursor, VS Code…) достъп до вашите фактури, покупки, OCR, клиенти, склад и банки чрез nula.bg API ключ.
Неофициален клиент. Проектът не е свързан с nula.bg. Работи върху публичното им REST API.
🇬🇧 In English: an MCP server for nula.bg, a Bulgarian cloud accounting platform — invoices, bills with OCR, customers, inventory, bank feeds and derived reports, over an API key. Read-only by default. Install the
.mcpbbundle in Claude Desktop, or runnpx -y nulabg-mcpwithNULA_API_KEYset. The rest of this README is in Bulgarian, because the platform, its documents and its users are; the tool descriptions the model sees are in English. Issues and pull requests in either language are welcome.
| Модул (toolset) | Tools | Какво прави |
|---|---|---|
core | nula_lookup_company | Справка за фирма по ЕИК или ДДС номер (Търговски регистър / VIES) |
invoices | nula_search_invoices, nula_create_invoice, nula_update_invoice, nula_update_invoice_metadata, nula_get_invoice_pdf, nula_email_invoice, nula_delete_last_invoice | Търсене, издаване (с preview), редакция, платена/изпратена, категории, прикачени файлове, PDF, изпращане по имейл, изтриване на последната фактура |
bills | nula_search_bills, nula_create_bill, nula_update_bill_categories | Покупки, вкл. протоколи по чл.117 ЗДДС |
ocr | nula_ocr_upload, nula_ocr_status | Качване на до 10 документа от диска, изчакване на разпознаването, квота |
customers | nula_search_customers | Клиенти и контрагенти |
inventory | nula_search_items, nula_list_item_categories | Артикули, цени, сметки, наличности |
banking | nula_list_bank_accounts, nula_list_bank_transactions | Банкови сметки и движения |
insights | nula_receivables_report, nula_period_summary, nula_match_bank_transactions | Вземания с aging, обобщение за месец, предложения за равнение банка ↔ фактура |
nra (изкл.) | nula_nra_declarations, nula_nra_refresh_result | Статус на декларациите към НАП (без подаване) |
noi (изкл.) | nula_noi_documents, nula_noi_get_document | Документи към НОИ (Прил. 9/10/11) |
21 tools при разрешени промени, 13 в режим само за четене (по подразбиране), 25 с включени nra и noi. При няколко фирми се появява и nula_list_companies.
Освен това има:
issue-invoice, process-receipts, month-end-review, collect-overdue.Примерни заявки:
Нужен е API ключ от nula.bg, генериран от вашия акаунт в nula.bg. Ключът дава достъп до данните на фирмата, затова го пазете като парола.
🔒 По подразбиране сървърът е само за четене. Claude може да търси и чете, но не може да създава, редактира, изпраща или трие нищо в nula.bg. Така тестването и оценката са безопасни. За да разрешите промени, задайте
NULA_READ_ONLY=false(в Claude Desktop: махнете отметката „Само четене“ в настройките на разширението).
nulabg-mcp-<версия>.mcpb от Releases.Node.js не е нужен, защото Claude Desktop го съдържа.
claude mcp add nulabg --scope user --env NULA_API_KEY=<вашият-ключ> -- npx -y nulabg-mcp
С право на промени (след като сте тествали):
claude mcp add nulabg --scope user --env NULA_API_KEY=<вашият-ключ> --env NULA_READ_ONLY=false -- npx -y nulabg-mcp
~/.cursor/mcp.json или claude_desktop_config.json:
{
"mcpServers": { "nulabg": { "command": "npx", "args": ["-y", "nulabg-mcp"], "env": { "NULA_API_KEY": "<вашият-ключ>" } } } }
.vscode/mcp.json. Ключът се иска при стартиране и не се записва във файла:
{
"inputs": [{ "type": "promptString", "id": "nula-key", "description": "nula.bg API key", "password": true }], "servers": { "nulabg": { "command": "npx", "args": ["-y", "nulabg-mcp"], "env": { "NULA_API_KEY": "${input:nula-key}" } } } }
Проверка на ключа от терминала:
NULA_API_KEY=<вашият-ключ> npx -y nulabg-mcp --check
| Променлива | По подразбиране | Описание |
|---|---|---|
NULA_API_KEY | — | API ключ (задължителен, освен ако не ползвате NULA_PROFILES) |
NULA_READ_ONLY | `true` | Само четене. Промени в nula.bg се разрешават само с изрично false (0, no, off). Всяка друга стойност, вкл. грешно изписана, оставя режима само за четене |
NULA_TOOLSETS | core,invoices,bills,ocr,customers,inventory,banking,insights | Кои модули да са активни; all включва и nra, noi |
NULA_CONFIRM_WRITES | elicit | Потвърждение в клиента преди създаване, изпращане и изтриване (ако клиентът поддържа elicitation); never го изключва |
NULA_DEFAULT_CURRENCY | EUR | Валута за нови документи |
NULA_DEFAULT_LANGUAGE | bg | Език на PDF и имейл (bg / en) |
NULA_DEFAULT_INVOICE_CATEGORY | — | Категория за нови фактури (nula.bg изисква поне една) |
NULA_DOWNLOAD_DIR | ~/Downloads/nula | Къде се записват PDF и XML |
NULA_FILE_ROOTS | ~ | Папки, от които може да се качват файлове (разделени с :, на Windows с ;) |
NULA_PROFILES | — | Няколко фирми: {"firma-a":"ключ1","firma-b":"ключ2"} или път до JSON файл |
NULA_DEFAULT_PROFILE | default или първият | Фирма по подразбиране при NULA_PROFILES |
NULA_BILL_CALLBACK_URL | https://nula.bg/ | Адрес, който nula.bg уведомява след създаване на покупка (вижте „Ограничения“) |
NULA_BASE_URL | https://nula.bg | |
NULA_TIMEOUT_MS / NULA_MAX_CONCURRENCY / NULA_LOG_LEVEL | 30000 / 4 / info |
NULA_PROFILES='{"alfa":"ключ-1","beta":"ключ-2"}' NULA_DEFAULT_PROFILE=alfa npx -y nulabg-mcp
Всеки tool получава параметър company, а nula_list_companies показва наличните фирми без ключовете.
nula_create_invoice и nula_create_bill имат preview_only. Асистентът е инструктиран първо да покаже номер, редове и суми и да изчака потвърждение.destructive, така че клиентите искат одобрение.expected_number), отказва, ако последната е друга, и отказва предварително, ако фактурата е осчетоводена (виж „Ограничения“).NULA_FILE_ROOTS, без скрити папки, до 10 MB. URL-и се приемат само https, без локални и вътрешни адреси.NULA_READ_ONLY=false, tools, които създават, променят, изпращат или трият, изобщо не се регистрират, така че Claude не може да ги извика. При грешно изписана стойност сървърът остава само за четене./open-cart/products/{sku} и getItemDetails връщат 404 дори за съществуващи артикули, а филтърът search не търси по SKU./ocr/bill/{id} работи само за документи, минали през OCR; за останалите сървърът намира покупката в списъка.nula_update_invoice_metadata иска и двата флага (is_paid и is_sent) или номера на фактурата.DELETE /api/v1/deleteInvoice се вика без параметри и трие последната издадена фактура, но връща HTTP 403 (с празно съобщение) за осчетоводен документ. Във фирма със счетоводен модул всички фактури излизат с has_accounting: true, тоест изтриването не минава и документът се маха ръчно от уеб приложението или с кредитно известие. Tool-ът проверява това предварително, вместо да праща обречена заявка.createBill изисква callback_url. По подразбиране се подава адресът на самия nula.bg, така че данни не излизат към трети страни. Ако имате собствен webhook, задайте NULA_BILL_CALLBACK_URL.npm install
npm run build # TypeScript → dist/ npm test # unit + протоколни тестове (Vitest, фалшив nula.bg API) npm run lint # Biome npm run inspect # MCP Inspector срещу dist/cli.js npm run pack:mcpb # Claude Desktop bundle → nulabg-mcp-<версия>.mcpb node dist/cli.js --list-tools
Стек:
@modelcontextprotocol/server 2.x (MCP spec 2026-07-28, съвместим и с клиенти от 2025 г.);Архитектура и решения: docs/SPEC.md. Проучване: docs/research/.
Release: стъпките и предварителните проверки са в docs/RELEASING.md. Накратко: вдигате версията в package.json, обновявате CHANGELOG.md и пускате tag vX.Y.Z; GitHub Actions публикува в npm с provenance, прикачва .mcpb към GitHub Release и обновява MCP Registry.
Issues и pull requests са добре дошли — на български или на английски. Най-полезни са докладите за несъответствия с истинското API (имена и типове на полета, без реални данни), защото официалната документация описва почти само заявките.
Solo se muestra el principio; lee el resto en el repo