Tally MCP
Tally MCP
Сервер MCP (Model Context Protocol), который подключает Claude напрямую к TallyPrime через встроенный XML-HTTP-шлюз Tally. Укажите Claude Desktop или Claude Code на ваш экземпляр Tally и попросите его прочитать счета, выгрузить пробный баланс, свести дневник операций или подготовить (и после вашего одобрения провести) ваучеры — всё без ручного экспорта/импорта.
Создано и опубликовано в открытом доступе индийской фирмой дипломированных бухгалтеров, которая использует его для собственных клиентских бухгалтерских рабочих процессов. Официально не связано с Tally Solutions или Anthropic.
Что с этим можно делать
После подключения вы можете просить Claude, например:
"Покажи пробный баланс на 31-03-2026"
"Выгрузи карточку счёта ABC Traders и обобщи последние 10 операций"
"Перечисли все товарные позиции со ставкой GST 18%"
"Создай ваучер продажи от сегодняшней даты: Debtor XYZ ₹1,18,000, Sales ₹1,00,000, Output CGST ₹9,000, Output SGST ₹9,000" — сначала Claude показывает предпросмотр; ничего не записывается в Tally, пока вы не одобрите.
Related MCP server: Tally MCP Server
⚠️ Модель безопасности — прочтите перед использованием
Этот коннектор может иметь полный доступ на чтение и запись к любой компании, открытой в Tally. Встроены три уровня защиты:
По умолчанию выполняется пробный запуск (dry-run). Каждый инструмент записи (
tally_create_voucher,tally_create_ledger,tally_create_stock_item) возвращает предпросмотр точного XML, который был бы отправлен, и ничего не делает с Tally, если не вызван с"confirm": true. Описания инструментов предписывают Claude всегда сначала показывать вам предпросмотр и получать ваше одобрение — но читайте то, что он показывает, перед одобрением; не полагайтесь на Claude как на единственную контрольную точку.Блокировка компании. В
.envтребуетсяTALLY_COMPANY_NAME. Перед любой записью сервер повторно проверяет, что в Tally открыта именно эта компания. Если с момента запуска сервера была открыта другая компания, запись блокируется, а не молча перенаправляется.Журнал аудита. Каждый вызов инструмента — чтение или запись, пробный или реальный — добавляется в
audit/tally-mcp-audit.logв виде JSON Lines: временная метка, инструмент, входные данные, отправленный XML, ответ Tally и статус.
Также есть глобальный аварийный выключатель: установите DRY_RUN_ONLY=true в .env, чтобы принудительно перевести каждый инструмент записи в режим только предпросмотра независимо от confirm — полезно при первом тестировании на реальных данных.
Это шаблон безопасной интеграции, а не гарантия. Изучите код, особенно src/tallyClient.ts и src/tools/writeTools.ts, прежде чем использовать его с производственными бухгалтерскими данными.
Предварительные требования
Node.js 18+
TallyPrime с включённым подключением ODBC/HTTP (Gateway of Tally → F1 (Help) → Settings → Connectivity → включите HTTP, порт по умолчанию 9000)
Компания, к которой вы хотите подключиться, должна быть открыта в Tally до запуска MCP-сервера
Настройка
git clone https://github.com/<your-username>/tally-mcp.git
cd tally-mcp
npm install
cp .env.example .envОтредактируйте .env:
TALLY_URL=http://localhost:9000
TALLY_COMPANY_NAME=<exact company name as shown in Tally>
DRY_RUN_ONLY=falseСоберите:
npm run buildВыполните смоук-тест — убедитесь, что сервер запускается без ошибок:
npm start
# Expect: [tally-mcp] Connected. Tally URL: ..., Company lock: "...", DRY_RUN_ONLY: false
# Ctrl+C to stop.Подключение к Claude Desktop
Добавьте в конфигурацию MCP Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"tally": {
"command": "node",
"args": ["/absolute/path/to/tally-mcp/dist/index.js"],
"env": {
"TALLY_URL": "http://localhost:9000",
"TALLY_COMPANY_NAME": "Your Company Name",
"DRY_RUN_ONLY": "false"
}
}
}
}Перезапустите Claude Desktop. Вы должны увидеть «tally» в списке подключённых инструментов/MCP-серверов.
Подключение к Claude Code
claude mcp add tally -- node /absolute/path/to/tally-mcp/dist/index.jsЗадайте переменные окружения через ваш shell, скрипт-обёртку или .env в рабочем каталоге (загружается автоматически через dotenv).
Справка по инструментам
Чтение (подтверждение не требуется)
Инструмент | Назначение |
| Перечисляет компании, открытые в Tally — используйте для проверки подключения |
| Полный план счетов с исходящими остатками |
| Детализация отдельного счёта + история ваучеров |
| Все ваучеры за диапазон дат |
| Пробный баланс на дату |
| Список товарных позиций с количеством/ценой/HSN/GST |
Запись (по умолчанию пробный запуск, требуется "confirm": true)
Инструмент | Назначение |
| Продажа / Закупка / Оплата / Поступление / Журнал / Контра / Кредит-нота / Дебет-нота |
| Новый мастер-счёт в родительской группе |
| Новая товарная позиция с HSN и ставкой GST |
Архитектура
Claude (Desktop/Code)
│ MCP protocol (stdio)
▼
tally-mcp server (Node.js/TypeScript)
│ XML over HTTP
▼
TallyPrime (XML-HTTP gateway, default port 9000)src/
├── index.ts # MCP server entry point, tool registry
├── config.ts # .env loading + validation
├── types.ts # Shared TypeScript types
├── tallyClient.ts # HTTP transport to Tally + company-lock check
├── zodToJsonSchema.ts # Zod → MCP tool schema converter
├── xml/
│ ├── builder.ts # Builds Tally XML requests
│ └── parser.ts # Parses Tally XML responses
├── tools/
│ ├── readTools.ts # Read-only tool handlers
│ └── writeTools.ts # Write tool handlers (dry-run/confirm gate)
└── audit/
└── auditLogger.ts # Append-only JSONL audit trailИзвестные ограничения / дорожная карта
Типы
tally_alter_voucherсуществуют, но инструмент ещё не подключён — изменение существующего ваучера требует дополнительного шага поиска по номеру ваучера в XML-схеме Tally. PR приветствуются.Отсутствует отдельный инструмент для отчётов по GST (сводка GSTR-1/3B) —
tally_get_daybook+tally_get_ledgerсейчас покрывают большинство потребностей в сверке, но специализированный инструмент для сводки по GST был бы хорошим дополнением.Учётные данные хранятся в обычном
.env. Это нормально для локального/однопользовательского использования; если вы разворачиваете это для команды или нескольких клиентских инстансов, рассмотрите вместо этого подключение полноценного менеджера секретов.Одна компания на работающий экземпляр сервера — блокировка
TALLY_COMPANY_NAMEв.envпредполагает один серверный процесс на компанию Tally. Поддержка нескольких компаний (название компании как параметр каждого вызова вместо блокировки.env) — разумный этап 2, если будет интерес.
Вклад по любому из перечисленных пунктов приветствуется — см. CONTRIBUTING.md.
Лицензия
MIT — см. LICENSE. Это программное обеспечение подключается к работающей бухгалтерской системе; вы несёте ответственность за проверку предпросмотров в режиме dry-run и за защиту собственного подключения к Tally. Операционные рекомендации см. в SECURITY.md.
This server cannot be deployed
Maintenance
Related MCP Connectors
AI for Tally Prime and Tally ERP 9. Hosted MCP server to ask your accounts in any language.
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
The Ramp MCP server enables users to securely connect Ramp with AI assistants like ChatGPT and Claude to query financial data and take actions using natural language. It transforms Ramp's developer API into a SQL interface that LLMs can query, allowing admins to analyze spend trends, identify cost savings, and run complex SQL analyses on comprehensive datasets (transactions, purchase orders, vendors, users), while all users can manage cards, view transactions, request reimbursements, and get expense policy answers.
Fortnox MCP server: read, analyse and post to your Fortnox books from ChatGPT, Claude or Codex.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server for TallyPrime ERP that fixes common gaps such as hardcoded localhost, lack of connection diagnostics and dry-run safety, missing GST tools, and session state loss, providing a smoother integration with Claude Desktop.6MIT
- AlicenseAqualityBmaintenanceAn MCP server that lets Claude read from and write to TallyPrime via its built-in XML/HTTP gateway.233ISC
- AlicenseAqualityAmaintenanceA read-only MCP server that connects Claude Desktop to TallyPrime, enabling natural-language auditing and analysis of accounting data directly from the local Tally installation.3919 npmMIT
- FlicenseAqualityAmaintenanceThis MCP server enables users to read from and write to TallyPrime via its XML/HTTP gateway, supporting operations like ledger management, voucher creation, and financial report retrieval through natural language.872-