PNPC-MCP-Tally-Prime
PNPC-MCP-Tally-Prime
Ein Model Context Protocol (MCP)-Server, der es Claude ermöglicht, über sein integriertes XML/HTTP-Gateway von TallyPrime zu lesen und darauf zu schreiben.
Abgezweigt von vaijaaaaa/Tally-MCP-Server (ISC-lizenziert) für die interne Nutzung von PNPC. Siehe LICENSE für den Hinweis des ursprünglichen Autors.
Wie es funktioniert
Claude Desktop <--stdio--> ┐
├─ this MCP server <--HTTP/XML--> TallyPrime (localhost:9000)
Remote MCP client <--HTTP--> ┘Lokal startet Claude Desktop diesen Server als stdio-Prozess. Remote kann er auch als HTTP-Server laufen. In beiden Fällen werden Tool-Aufrufe in Tallys XML-Anfrageformat übersetzt, an Tallys HTTP-Gateway gesendet und als bereinigtes JSON zurückgegeben. Es gibt auch einen optionalen lokalen SQL-Cache (PGLite) für Ad-hoc-Abfragen, die über die festen Berichtstools hinausgehen.
Voraussetzungen
Node.js 18+
TallyPrime installiert, läuft, mit einem geöffneten Unternehmen
Tallys HTTP-Gateway aktiviert:
F1 (Help) > Settings > Connectivity > Client/Server configurationund setzen Sie TallyPrime acts as aufBothoderServer, Port9000(Standard).
Einrichtung
npm install
npm run buildClaude Desktop konfigurieren
Option A — Erweiterung (empfohlen): als .dxt paketieren und mit einem Klick installieren. Siehe docs/EXTENSION_PACKAGING.md.
Option B — manuelle Konfiguration: bearbeiten Sie Ihre Claude Desktop-Konfigurationsdatei:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Fügen Sie hinzu:
{
"mcpServers": {
"pnpc-tally": {
"command": "C:\\Users\\Lokesh\\node20\\node.exe",
"args": ["C:\\Users\\Lokesh\\PNPC-MCP-Tally-Prime\\dist\\index.js"],
"env": {
"TALLY_URL": "http://localhost:9000"
}
}
}
}Starten Sie Claude Desktop neu. Sie sollten ein Hammer/Werkzeug-Symbol sehen, das anzeigt, dass der pnpc-tally-Server verbunden ist.
Verfügbare Tools
Insgesamt 17 Tools — lesen (Konten, Bestand, Gruppen, Belegarten, Kostenstellen, Tagebuch, Kontobelege, Unternehmensinfo, GuV, Bilanz, Summen- und Saldenliste, Bestandszusammenfassung, Forderungen/Verbindlichkeiten), schreiben (Konto erstellen, Gruppe erstellen, Lagerartikel erstellen, Beleg erstellen) und SQL-Cache (sync_to_sql, query_sql). Vollständige Referenz mit Argumenten: docs/TOOLS.md.
Daten verwenden das Format DD-MM-YYYY, entsprechend Tallys Konvention.
Remote ausführen (HTTP)
TALLY_MCP_TOKEN=<secret> npm run start:httpSiehe docs/HTTP_DEPLOYMENT.md.
Dokumentation
docs/ARCHITECTURE.md — Anfragefluss, Dateiverantwortlichkeiten
docs/TALLY_XML_GUIDE.md — wie Tallys XML-Gateway funktioniert, Stolperfallen
docs/TOOLS.md — vollständige Tool-Referenz + wie man ein neues Tool hinzufügt
docs/HTTP_DEPLOYMENT.md — als Remote-HTTP-Server ausführen
docs/EXTENSION_PACKAGING.md — als
.dxtClaude Desktop Extension paketieren
Projektstruktur
src/
tally.ts Tally HTTP client: sends XML, handles connection/timeout errors
clean.ts Normalizes Tally's raw XML->JSON into predictable JSON
templates.ts Renders the Nunjucks XML templates in templates/
db.ts PGLite SQL cache: sync_to_sql / query_sql
tools.ts MCP tool definitions + XML request builders
server.ts Shared MCP Server construction (used by both entry points)
index.ts stdio entry point (local Claude Desktop)
http-server.ts HTTP entry point (remote clients)
templates/
*.xml.njk Nunjucks templates for each Tally XML request shape
manifest.json Claude Desktop Extension (.dxt) manifestUmgebungsvariablen
Variable | Standard | Zweck |
|
| Tallys HTTP-Gateway-Adresse |
|
| Port für |
| (nicht gesetzt) | Bearer-Token, das auf dem |
Fehlerbehebung
"TallyPrime konnte nicht erreicht werden" — Tally läuft nicht, oder das HTTP-Gateway ist nicht auf Port 9000 aktiviert.
"Tally hat eine leere Antwort zurückgegeben" — Tally läuft, aber es ist kein Unternehmen geöffnet.
create_ledger/create_voucherschlägt mit Fehlern fehl — überprüfen Sie, ob die übergeordnete Gruppe / Kontonamen genau mit dem übereinstimmen, was in Tally vorhanden ist (Namen sind Groß-/Kleinschreibung beachten und müssen exakt übereinstimmen).
Roadmap / noch nicht unterstützt
Bearbeiten oder Löschen vorhandener Belege/Konten/Master
Inventarbelege (Stock Journal, Manufacturing Journal, etc.)
GST-spezifische Berichte (GSTR-1, GSTR-3B)
Multi-Company-Unterstützung (aktuell wird immer das geöffnete Unternehmen angesprochen)
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for Gainium — manage trading bots, deals, and balances via AI assistants
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/lokesh-sparrow/PNPC-MCP-Tally-Prime'
If you have feedback or need assistance with the MCP directory API, please join our Discord server