storno-cli 1.0.25 → 1.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/TOOLS.md +40 -1
- package/dist/http-server.js +1 -1
- package/dist/server.js +1 -1
- package/dist/tools/agent.d.ts +6 -0
- package/dist/tools/agent.d.ts.map +1 -1
- package/dist/tools/agent.js +3 -1
- package/dist/tools/agent.js.map +1 -1
- package/dist/tools/public-tools.d.ts +72 -0
- package/dist/tools/public-tools.d.ts.map +1 -1
- package/dist/tools/public-tools.js +71 -2
- package/dist/tools/public-tools.js.map +1 -1
- package/package.json +1 -1
package/TOOLS.md
CHANGED
|
@@ -3277,13 +3277,52 @@ Local Storno Agent tools (the agent runs on the user's computer with the qualifi
|
|
|
3277
3277
|
|---|---|---|
|
|
3278
3278
|
| `agent_status` | none | agent version, update availability |
|
|
3279
3279
|
| `agent_certificates` | none | certificates the agent can use (id, subject, issuer, expiry) |
|
|
3280
|
-
| `agent_sign_pdf` | `files[]` (paths or directories), `certificateId`, `pin?`, `outDir?` | signs every PDF with the certificate (PAdES), writes `<name>.signed.pdf`; stops at the first PIN error |
|
|
3280
|
+
| `agent_sign_pdf` | `files[]` (paths or directories), `certificateId`, `pin?`, `outDir?`, `visible?`, `signerName?` | signs every PDF with the certificate (PAdES), writes `<name>.signed.pdf`; stops at the first PIN error |
|
|
3281
3281
|
| `agent_submit_declaration_pdf` | `file`, `certificateId`, `pin?`, `fileName?` | signs a DUKIntegrator PDF and uploads it to the e-guvernare declarations portal; returns ANAF's upload index |
|
|
3282
3282
|
|
|
3283
|
+
**Mass signing.** `agent_sign_pdf` takes any mix of files and directories; a directory means every `*.pdf` inside it (already signed `*.signed.pdf` copies are skipped, so re-running is safe). Files are signed one after another on the token, each gets its own `<name>.signed.pdf` next to the original or in `outDir`, and the result lists `signed`, `failed` and one row per file. A wrong PIN stops the batch immediately (`aborted: true`) so the token is never locked by a loop; other per-file errors (corrupt PDF, encrypted PDF) are reported and the batch continues. A batch of 50 contracts takes about two minutes on a USB token.
|
|
3284
|
+
|
|
3285
|
+
```json
|
|
3286
|
+
{ "files": ["~/Contracte/2026-09", "oferta.pdf"], "certificateId": "3746…", "outDir": "~/Contracte/semnate", "visible": true }
|
|
3287
|
+
```
|
|
3288
|
+
|
|
3289
|
+
```json
|
|
3290
|
+
{ "signed": 12, "failed": 1, "aborted": false,
|
|
3291
|
+
"files": [ { "file": "…/contract-01.pdf", "signed": "…/semnate/contract-01.signed.pdf", "bytes": 168210 }, …,
|
|
3292
|
+
{ "file": "…/scan.pdf", "error": "PDF is encrypted" } ] }
|
|
3293
|
+
```
|
|
3294
|
+
|
|
3295
|
+
The signature is a PAdES `adbe.pkcs7.detached` signature (SHA-256, the qualified certificate embedded), verifiable in Adobe Reader, `pdfsig`, ANAF's portal and any eIDAS validator; it is invisible unless `visible: true`, which draws a footer box on the last page. One signature per run: sign the same file again to add a second one. See the [agent guide](https://docs.storno.ro/agent#signing-pdfs) for the HTTP contract behind the tool.
|
|
3296
|
+
|
|
3283
3297
|
### `document_types` / `document_generate`
|
|
3284
3298
|
|
|
3285
3299
|
Standard Romanian legal documents generated from fields, as PDF + HTML (public, nothing stored): `conventie_incetare_inchiriere` (rental termination agreement) and `declaratie_incetare_contract` (locator's sworn statement, the C168 attachment). `document_generate` takes `type`, `fields` and an optional `outFile` to write the PDF locally, ready for hand signing or `agent_sign_pdf`.
|
|
3286
3300
|
|
|
3301
|
+
### `declaration_forms` / `declaration_form_spec` / `declaration_build` / `declaration_pdf`
|
|
3302
|
+
|
|
3303
|
+
Build an ANAF declaration from plain JSON, the way an assistant works: it reads the user's documents locally, asks Storno for the form specification, fills the input, builds and validates until clean, produces the PDF, then files it through the local agent or hands it to the user for SPV. Public: no account, nothing stored, 60 requests/hour per IP. Forms today: **C168** (registration, amendment, termination of rental contracts; scanned contract as attachment).
|
|
3304
|
+
|
|
3305
|
+
| Tool | Parameters | Returns |
|
|
3306
|
+
|---|---|---|
|
|
3307
|
+
| `declaration_forms` | none | the forms Storno can build (type, title, description) |
|
|
3308
|
+
| `declaration_form_spec` | `type`, `xsd?` | input schema with hints and codes, XML mapping (every XSD attribute with type/constraints), ANAF rules (DUK + web-form BR-C168-…), filing steps, complete example; `xsd: true` returns the ANAF XSD |
|
|
3309
|
+
| `declaration_build` | `type`, `input`, `validate?`, `online?` | `valid`, `xml`, `issues[{level, code, field, message}]`, `validation.duk` (ANAF DUKIntegrator), `validation.anafOnline` (ANAF's online validator behind the web form) |
|
|
3310
|
+
| `declaration_pdf` | `type`, `xml`, `attachmentPaths?`, `attachments?`, `outFile?` | the DUK PDF with the XML and the attachment zip embedded; written to `outFile` or returned base64 |
|
|
3311
|
+
|
|
3312
|
+
```json
|
|
3313
|
+
{ "type": "C168", "input": {
|
|
3314
|
+
"an": 2026,
|
|
3315
|
+
"declarant": { "nume": "POPESCU", "prenume": "ION", "calitate": "Locator" },
|
|
3316
|
+
"locator": { "tip": 1, "denumire": "POPESCU ION", "cif": "<CNP>", "adresa": { "judet": "40", "localitate": "6", "localitateNume": "6 Sector - Mun. Bucuresti", "strada": "412", "stradaNume": "Bld. Iuliu Maniu", "numar": "7", "detalii": "bl. 1, ap. 16", "codPostal": "061072" } },
|
|
3317
|
+
"contracte": [{ "actiune": "inregistrare", "numar": "1", "data": "2026-09-01", "deLa": "2026-09-01", "panaLa": "2027-08-31",
|
|
3318
|
+
"bun": { "tip": "imobil", "adresa": { "…same shape…": "" } }, "chirie": { "suma": 450, "moneda": "EUR" },
|
|
3319
|
+
"locatari": [{ "denumire": "IONESCU MARIA", "cif": "<CNP>", "adresa": { "…": "" } }] }] } }
|
|
3320
|
+
```
|
|
3321
|
+
|
|
3322
|
+
Rules the builder applies before ANAF sees the file (all are also in the spec): required fields and date formats; Romanian addresses need county, locality and street **codes** from `anaf_nomenclator_*`; the rented property needs a postal code (BR-C168-0041); `cotaVenit` must equal the sum of the co-owners' shares (BR-C168-00991); a tenant with a Romanian address needs a CNP (BR-C168-005911, warning: the portal upload accepts a termination without it); CNP control digits are checked; the fiscal office is written only for a NIF; fraction and share of the good exclude each other. Never invent CNPs or CUIs: ANAF rejects them and a false identifier is a false declaration.
|
|
3323
|
+
|
|
3324
|
+
Flow: `declaration_form_spec` → `declaration_build` (loop until `valid`) → `declaration_pdf` with the contract scan (or `document_generate` for the sworn statement on termination) → `agent_submit_declaration_pdf` (certificate) or manual SPV upload → `anaf_declaration_status`.
|
|
3325
|
+
|
|
3287
3326
|
### `anaf_declaration_status`
|
|
3288
3327
|
|
|
3289
3328
|
Status of a portal filing from ANAF's public StareD112: `index` + `cui`/CNP → `state` (ok, nok, processing, unknown), ANAF wording, recipisa URL.
|
package/dist/http-server.js
CHANGED
|
@@ -297,7 +297,7 @@ export function startHttpServer(port, host) {
|
|
|
297
297
|
if (url.pathname === '/api/status' && req.method === 'GET') {
|
|
298
298
|
const status = {
|
|
299
299
|
server: 'storno-mcp',
|
|
300
|
-
version: '1.0.
|
|
300
|
+
version: '1.0.27',
|
|
301
301
|
activeSessions: sessions.size,
|
|
302
302
|
uptime: process.uptime(),
|
|
303
303
|
};
|
package/dist/server.js
CHANGED
|
@@ -115,7 +115,7 @@ const allTools = [
|
|
|
115
115
|
export function createMcpServer() {
|
|
116
116
|
const server = new McpServer({
|
|
117
117
|
name: 'storno',
|
|
118
|
-
version: '1.0.
|
|
118
|
+
version: '1.0.27',
|
|
119
119
|
});
|
|
120
120
|
for (const tool of allTools) {
|
|
121
121
|
server.tool(tool.name, tool.description, tool.inputSchema.shape, async (params, extra) => {
|
package/dist/tools/agent.d.ts
CHANGED
|
@@ -12,16 +12,22 @@ export declare const tools: ({
|
|
|
12
12
|
certificateId: z.ZodString;
|
|
13
13
|
pin: z.ZodOptional<z.ZodString>;
|
|
14
14
|
outDir: z.ZodOptional<z.ZodString>;
|
|
15
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
+
signerName: z.ZodOptional<z.ZodString>;
|
|
15
17
|
}, "strip", z.ZodTypeAny, {
|
|
16
18
|
files: string[];
|
|
17
19
|
certificateId: string;
|
|
18
20
|
pin?: string | undefined;
|
|
19
21
|
outDir?: string | undefined;
|
|
22
|
+
visible?: boolean | undefined;
|
|
23
|
+
signerName?: string | undefined;
|
|
20
24
|
}, {
|
|
21
25
|
files: string[];
|
|
22
26
|
certificateId: string;
|
|
23
27
|
pin?: string | undefined;
|
|
24
28
|
outDir?: string | undefined;
|
|
29
|
+
visible?: boolean | undefined;
|
|
30
|
+
signerName?: string | undefined;
|
|
25
31
|
}>;
|
|
26
32
|
handler: (params: Record<string, unknown>) => Promise<string>;
|
|
27
33
|
} | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/tools/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgExB,eAAO,MAAM,KAAK;;;;mBAKK,OAAO,CAAC,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/tools/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgExB,eAAO,MAAM,KAAK;;;;mBAKK,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0BV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;sBA2BzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;IAsBpE,CAAC"}
|
package/dist/tools/agent.js
CHANGED
|
@@ -86,6 +86,8 @@ export const tools = [
|
|
|
86
86
|
certificateId: z.string().describe('Certificate id from agent_certificates'),
|
|
87
87
|
pin: z.string().optional().describe('Token PIN; defaults to STORNO_AGENT_PIN'),
|
|
88
88
|
outDir: z.string().optional().describe('Directory for the signed copies (default: next to each file)'),
|
|
89
|
+
visible: z.boolean().optional().describe('Draw a visible signature box in the footer of the last page ("Semnat digital de …", date, issuer). Default: invisible signature (still verifiable in Adobe Reader / ANAF)'),
|
|
90
|
+
signerName: z.string().optional().describe('Name shown in the visible box (default: the certificate subject)'),
|
|
89
91
|
}),
|
|
90
92
|
handler: async (params) => {
|
|
91
93
|
const pin = pinFrom(params);
|
|
@@ -95,7 +97,7 @@ export const tools = [
|
|
|
95
97
|
if (files.length === 0)
|
|
96
98
|
return fail('No PDF files found');
|
|
97
99
|
const items = files.map((f) => ({ name: basename(f), pdf: readFileSync(f).toString('base64') }));
|
|
98
|
-
const res = await agent('/sign', { certificateId: params.certificateId, pin, items }, 120_000 * items.length);
|
|
100
|
+
const res = await agent('/sign', { certificateId: params.certificateId, pin, items, visible: params.visible === true, signerName: params.signerName }, 120_000 * items.length);
|
|
99
101
|
if (res.error && !res.results)
|
|
100
102
|
return fail(String(res.error));
|
|
101
103
|
const report = res.results.map((r) => {
|
package/dist/tools/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/tools/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/tools/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,6 +35,78 @@ export declare const tools: ({
|
|
|
35
35
|
outFile?: string | undefined;
|
|
36
36
|
}>;
|
|
37
37
|
handler: (params: Record<string, unknown>) => Promise<string>;
|
|
38
|
+
} | {
|
|
39
|
+
name: string;
|
|
40
|
+
description: string;
|
|
41
|
+
inputSchema: z.ZodObject<{
|
|
42
|
+
type: z.ZodString;
|
|
43
|
+
xsd: z.ZodOptional<z.ZodBoolean>;
|
|
44
|
+
}, "strip", z.ZodTypeAny, {
|
|
45
|
+
type: string;
|
|
46
|
+
xsd?: boolean | undefined;
|
|
47
|
+
}, {
|
|
48
|
+
type: string;
|
|
49
|
+
xsd?: boolean | undefined;
|
|
50
|
+
}>;
|
|
51
|
+
handler: (params: Record<string, unknown>) => Promise<string>;
|
|
52
|
+
} | {
|
|
53
|
+
name: string;
|
|
54
|
+
description: string;
|
|
55
|
+
inputSchema: z.ZodObject<{
|
|
56
|
+
type: z.ZodString;
|
|
57
|
+
input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
58
|
+
validate: z.ZodOptional<z.ZodBoolean>;
|
|
59
|
+
online: z.ZodOptional<z.ZodBoolean>;
|
|
60
|
+
}, "strip", z.ZodTypeAny, {
|
|
61
|
+
type: string;
|
|
62
|
+
input: Record<string, unknown>;
|
|
63
|
+
validate?: boolean | undefined;
|
|
64
|
+
online?: boolean | undefined;
|
|
65
|
+
}, {
|
|
66
|
+
type: string;
|
|
67
|
+
input: Record<string, unknown>;
|
|
68
|
+
validate?: boolean | undefined;
|
|
69
|
+
online?: boolean | undefined;
|
|
70
|
+
}>;
|
|
71
|
+
handler: (params: Record<string, unknown>) => Promise<string>;
|
|
72
|
+
} | {
|
|
73
|
+
name: string;
|
|
74
|
+
description: string;
|
|
75
|
+
inputSchema: z.ZodObject<{
|
|
76
|
+
type: z.ZodString;
|
|
77
|
+
xml: z.ZodString;
|
|
78
|
+
attachmentPaths: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
79
|
+
attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
80
|
+
name: z.ZodString;
|
|
81
|
+
contentBase64: z.ZodString;
|
|
82
|
+
}, "strip", z.ZodTypeAny, {
|
|
83
|
+
name: string;
|
|
84
|
+
contentBase64: string;
|
|
85
|
+
}, {
|
|
86
|
+
name: string;
|
|
87
|
+
contentBase64: string;
|
|
88
|
+
}>, "many">>;
|
|
89
|
+
outFile: z.ZodOptional<z.ZodString>;
|
|
90
|
+
}, "strip", z.ZodTypeAny, {
|
|
91
|
+
type: string;
|
|
92
|
+
xml: string;
|
|
93
|
+
outFile?: string | undefined;
|
|
94
|
+
attachmentPaths?: string[] | undefined;
|
|
95
|
+
attachments?: {
|
|
96
|
+
name: string;
|
|
97
|
+
contentBase64: string;
|
|
98
|
+
}[] | undefined;
|
|
99
|
+
}, {
|
|
100
|
+
type: string;
|
|
101
|
+
xml: string;
|
|
102
|
+
outFile?: string | undefined;
|
|
103
|
+
attachmentPaths?: string[] | undefined;
|
|
104
|
+
attachments?: {
|
|
105
|
+
name: string;
|
|
106
|
+
contentBase64: string;
|
|
107
|
+
}[] | undefined;
|
|
108
|
+
}>;
|
|
109
|
+
handler: (params: Record<string, unknown>) => Promise<string>;
|
|
38
110
|
} | {
|
|
39
111
|
name: string;
|
|
40
112
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-tools.d.ts","sourceRoot":"","sources":["../../src/tools/public-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyBxB,eAAO,MAAM,KAAK;;;;mBAKK,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;sBAMV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;sBAuBzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"public-tools.d.ts","sourceRoot":"","sources":["../../src/tools/public-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyBxB,eAAO,MAAM,KAAK;;;;mBAKK,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;sBAMV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;sBAuBzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;sBAwBzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;sBAqBzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAkBzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;sBAsBzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;sBAUzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0CzC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;IASpE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { writeFileSync } from 'node:fs';
|
|
3
|
-
import { resolve } from 'node:path';
|
|
2
|
+
import { readFileSync, writeFileSync } from 'node:fs';
|
|
3
|
+
import { basename, resolve } from 'node:path';
|
|
4
4
|
import { apiRequest } from '../client.js';
|
|
5
5
|
import { formatResponse } from '../utils/errors.js';
|
|
6
6
|
const partySchema = z.object({
|
|
@@ -63,6 +63,75 @@ export const tools = [
|
|
|
63
63
|
return formatResponse({ ok: true, status: 200, data: { title: data.title, file: out, bytes: Buffer.byteLength(data.pdfBase64, 'base64') } });
|
|
64
64
|
},
|
|
65
65
|
},
|
|
66
|
+
{
|
|
67
|
+
name: 'declaration_forms',
|
|
68
|
+
description: 'ANAF declaration forms Storno can build from plain JSON for you (today: C168 rent contract registration/amendment/termination). Returns type, title and description of each form. Public, no account.',
|
|
69
|
+
inputSchema: z.object({}),
|
|
70
|
+
handler: async () => formatResponse(await apiRequest('/api/v1/public/declarations/forms', { noAuth: true })),
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: 'declaration_form_spec',
|
|
74
|
+
description: "Everything needed to fill an ANAF declaration form correctly: the JSON input schema Storno expects (fields, required/optional, codes and their meaning, hints), how it maps to the ANAF XML (namespace, every XSD attribute with type and constraints), the business rules ANAF enforces (including the web-form rules the DUK validator misses, e.g. BR-C168-00991/0041/005911), the filing steps and a complete example. Read it before declaration_build. C168 addresses need the codes from anaf_nomenclator_*; never invent CNPs or CUIs.",
|
|
75
|
+
inputSchema: z.object({
|
|
76
|
+
type: z.string().describe('Form code, e.g. C168'),
|
|
77
|
+
xsd: z.boolean().optional().describe('true → return the raw ANAF XSD instead of the spec'),
|
|
78
|
+
}),
|
|
79
|
+
handler: async (params) => {
|
|
80
|
+
const type = encodeURIComponent(String(params.type).toUpperCase());
|
|
81
|
+
if (params.xsd) {
|
|
82
|
+
const res = await apiRequest(`/api/v1/public/declarations/forms/${type}?xsd=1`, { noAuth: true, binary: true });
|
|
83
|
+
if (!res.ok)
|
|
84
|
+
return formatResponse(res);
|
|
85
|
+
const xsd = Buffer.isBuffer(res.data) ? res.data.toString('utf8') : String(res.data);
|
|
86
|
+
return formatResponse({ ok: true, status: 200, data: { type: String(params.type).toUpperCase(), xsd } });
|
|
87
|
+
}
|
|
88
|
+
return formatResponse(await apiRequest(`/api/v1/public/declarations/forms/${type}`, { noAuth: true }));
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: 'declaration_build',
|
|
93
|
+
description: "Build an ANAF declaration from plain JSON (schema from declaration_form_spec): Storno writes the XML, applies its own rules (required fields, address codes, quotas, postal code, tenant CNP …), validates it with ANAF's DUKIntegrator and, for C168, with ANAF's online validator behind the web form (the authoritative BR-C168 rules). Returns valid, xml, issues[{level, code, field, message}] and validation{duk, anafOnline}. Loop: fix issues → build again until valid=true, then declaration_pdf. Public, nothing stored, 60 requests/hour per IP.",
|
|
94
|
+
inputSchema: z.object({
|
|
95
|
+
type: z.string().describe('Form code, e.g. C168'),
|
|
96
|
+
input: z.record(z.string(), z.unknown()).describe('The form input (see declaration_form_spec → input / example)'),
|
|
97
|
+
validate: z.boolean().optional().describe('Run the DUK validator (default true)'),
|
|
98
|
+
online: z.boolean().optional().describe("Also run ANAF's online validator when available (default true)"),
|
|
99
|
+
}),
|
|
100
|
+
handler: async (params) => formatResponse(await apiRequest(`/api/v1/public/declarations/forms/${encodeURIComponent(String(params.type).toUpperCase())}/build`, {
|
|
101
|
+
method: 'POST',
|
|
102
|
+
body: { input: params.input, validate: params.validate, online: params.online },
|
|
103
|
+
noAuth: true,
|
|
104
|
+
})),
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: 'declaration_pdf',
|
|
108
|
+
description: "Produce the PDF ANAF accepts for upload: DUKIntegrator renders the validated XML into ANAF's PDF form with the XML embedded and, where required (C168), a zip of attachments embedded (the scanned contract for a registration, the addendum for an amendment, the termination document or the landlord's sworn statement — document_generate — for a termination). Pass local file paths in attachmentPaths and/or base64 attachments (PDF, JPG, PNG, TIFF; 10 MB total). With outFile the PDF is written locally, ready for agent_submit_declaration_pdf (qualified certificate) or manual upload in SPV. Public, nothing stored.",
|
|
109
|
+
inputSchema: z.object({
|
|
110
|
+
type: z.string().describe('Form code, e.g. C168'),
|
|
111
|
+
xml: z.string().describe('The validated declaration XML from declaration_build'),
|
|
112
|
+
attachmentPaths: z.array(z.string()).optional().describe('Local files to put in the zip'),
|
|
113
|
+
attachments: z.array(z.object({ name: z.string(), contentBase64: z.string() })).optional(),
|
|
114
|
+
outFile: z.string().optional().describe('Path where the PDF is written; when omitted the response carries pdfBase64'),
|
|
115
|
+
}),
|
|
116
|
+
handler: async (params) => {
|
|
117
|
+
const attachments = [...(params.attachments ?? [])];
|
|
118
|
+
for (const p of params.attachmentPaths ?? []) {
|
|
119
|
+
const abs = resolve(p);
|
|
120
|
+
attachments.push({ name: basename(abs), contentBase64: readFileSync(abs).toString('base64') });
|
|
121
|
+
}
|
|
122
|
+
const res = await apiRequest('/api/v1/public/declarations/pdf', {
|
|
123
|
+
method: 'POST',
|
|
124
|
+
body: { type: String(params.type).toUpperCase(), xml: params.xml, attachments },
|
|
125
|
+
noAuth: true,
|
|
126
|
+
});
|
|
127
|
+
if (!res.ok || !params.outFile)
|
|
128
|
+
return formatResponse(res);
|
|
129
|
+
const data = res.data;
|
|
130
|
+
const out = resolve(params.outFile);
|
|
131
|
+
writeFileSync(out, Buffer.from(data.pdfBase64, 'base64'));
|
|
132
|
+
return formatResponse({ ok: true, status: 200, data: { file: out, bytes: data.bytes, next: data.next } });
|
|
133
|
+
},
|
|
134
|
+
},
|
|
66
135
|
{
|
|
67
136
|
name: 'anaf_declaration_status',
|
|
68
137
|
description: "Processing status of a declaration filed on the ANAF e-guvernare portal (after agent_submit_declaration_pdf or any upload that returned an index): ANAF's public StareD112 by upload index and the taxpayer's CUI/CNP. States: ok (accepted), nok (validation errors, see recipisa), processing, unknown (not indexed yet). Returns the recipisa PDF URL when available. Public, no account.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-tools.js","sourceRoot":"","sources":["../../src/tools/public-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"public-tools.js","sourceRoot":"","sources":["../../src/tools/public-tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "storno-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.27",
|
|
4
4
|
"description": "MCP server for the Storno.ro e-invoicing API — enables AI tools (Claude, Cursor, Windsurf) to manage invoices, clients, companies, and the full e-Factura workflow",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|