@kirjapro/mcp-server 0.14.0 → 0.14.1

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/CHANGELOG.md CHANGED
@@ -2,15 +2,27 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.14.1] - 2026-10-05
6
+
7
+ Uses the database migration `20261005210000` (AI-työtila 2.0 round 4, batch 7).
8
+ Against a database without it the refusal keeps the 0.14.0 text. 0.14.0 keeps
9
+ working against the new database and reports such a key as "Permission denied."
10
+ Tool definitions are unchanged.
11
+
12
+ - A revoked or expired API key, or one whose creator has since left (or been removed
13
+ from and re-invited to) the company, now fails with `CREDENTIAL_INVALID: the API
14
+ key is no longer valid ...` instead of "MFA step-up required"; `kirjapro_create_invoice`
15
+ returns the code `CREDENTIAL_INVALID` instead of `MFA_REQUIRED`. Needs the
16
+ `20261005210000` migration; against an older database the old text stays.
17
+
5
18
  ## [0.14.0] - 2026-10-05
6
19
 
7
- Prepared, not yet published. Publish only after (1) `db:deploy` of the round-3
8
- migrations `20261005170000`–`20261005200000` (AI-työtila 2.0 batches 10–13;
9
- `kirjapro_send_invoice` needs `20261005180100`, the delivery intents), (2)
10
- `npm run functions:deploy -- dispatch-invoice` from the same main, which resumes a
11
- delivery under its intent, and (3) a commit of `src/database.types.ts` regenerated
12
- from production with `--schema public`, so `check:types-drift` passes. Until then
13
- 0.13.0 keeps working unchanged against the current database.
20
+ Published after (1) `db:deploy` of the round-3 migrations
21
+ `20261005170000`–`20261005200000` (AI-työtila 2.0 batches 10–13;
22
+ `kirjapro_send_invoice` needs `20261005180100`, the delivery intents), (2) the
23
+ `dispatch-invoice` deploy from the same main, which resumes a delivery under its
24
+ intent, and (3) the production-generated `src/database.types.ts`. 0.13.0 keeps
25
+ working unchanged against the same database.
14
26
 
15
27
  - `kirjapro_get_ar_aging` shares its result shaping with Kirjapro; an unexpected
16
28
  report payload now returns a sanitized error instead of an internal exception.
package/dist/index.js CHANGED
@@ -35679,7 +35679,7 @@ var StdioServerTransport = class {
35679
35679
  import { createClient } from "@supabase/supabase-js";
35680
35680
 
35681
35681
  // src/version.ts
35682
- var VERSION = "0.14.0";
35682
+ var VERSION = "0.14.1";
35683
35683
 
35684
35684
  // src/auth.ts
35685
35685
  var SUPABASE_PROJECT_URL = "https://tifewzsimmyoiepblhld.supabase.co";
@@ -36325,6 +36325,9 @@ function sanitizeDbError(context, error61) {
36325
36325
  details: error61.details,
36326
36326
  hint: error61.hint
36327
36327
  });
36328
+ if (error61.message?.startsWith("CREDENTIAL_INVALID")) {
36329
+ return `${context}: CREDENTIAL_INVALID: the API key is no longer valid (revoked, expired or its creator left the company). Create a new key in Kirjapro.`;
36330
+ }
36328
36331
  if (error61.message?.startsWith("AAL2_REQUIRED")) {
36329
36332
  return `${context}: MFA step-up required. Verify your 2FA code in Kirjapro and retry.`;
36330
36333
  }
@@ -37345,6 +37348,7 @@ var ERROR_MESSAGES = {
37345
37348
  INVOICE_NUMBER_CONFLICT: () => "Laskunumero on jo k\xE4yt\xF6ss\xE4 (samanaikainen luonti). Yrit\xE4 uudelleen.",
37346
37349
  INVALID_LINE: () => "Laskurivi ei kelpaa. Tarkista m\xE4\xE4r\xE4, hinta ja ALV-k\xE4sittely.",
37347
37350
  PERMISSION_DENIED: () => "Ei oikeutta luoda laskua t\xE4lle yritykselle.",
37351
+ CREDENTIAL_INVALID: () => "Tunniste ei en\xE4\xE4 kelpaa: API-avain on peruttu tai vanhentunut. Luo uusi avain Kirjaprossa.",
37348
37352
  MFA_REQUIRED: () => "Vahvista kaksivaiheinen tunnistautuminen Kirjaprossa ja yrit\xE4 sitten uudelleen.",
37349
37353
  WRITE_REJECTED: () => "Laskun luonti hyl\xE4ttiin. Mit\xE4\xE4n ei tallennettu.",
37350
37354
  OUTCOME_UNKNOWN: () => "Laskun luonnin lopputulosta ei voitu varmistaa. Tarkista laskulista ennen uutta yrityst\xE4."
@@ -37609,6 +37613,8 @@ function invoiceDraftWriteOutcome(response) {
37609
37613
  const code = error61.code ?? "";
37610
37614
  if (!CONFIRMED_ERROR_CODE.test(code))
37611
37615
  return { ok: false, error: invoiceDraftError("OUTCOME_UNKNOWN") };
37616
+ if ((error61.message ?? "").startsWith("CREDENTIAL_INVALID"))
37617
+ return { ok: false, error: invoiceDraftError("CREDENTIAL_INVALID") };
37612
37618
  if ((error61.message ?? "").startsWith("AAL2_REQUIRED"))
37613
37619
  return { ok: false, error: invoiceDraftError("MFA_REQUIRED") };
37614
37620
  const mapped = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kirjapro/mcp-server",
3
- "version": "0.14.0",
3
+ "version": "0.14.1",
4
4
  "description": "MCP server for Finnish accounting — exposes Kirjapro bookkeeping, invoicing, and reporting tools to Claude, ChatGPT, Mistral, and other MCP clients.",
5
5
  "type": "module",
6
6
  "bin": {
package/server.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@kirjapro/mcp-server",
3
3
  "displayName": "Kirjapro - Finnish Accounting",
4
4
  "description": "Finnish double-entry bookkeeping, invoicing, and financial reporting for growing businesses. Create transactions, generate invoices with VAT calculation, produce income statements and balance sheets, and validate Finnish business identifiers.",
5
- "version": "0.14.0",
5
+ "version": "0.14.1",
6
6
  "homepage": "https://kirjapro.fi",
7
7
  "repository": "https://github.com/Jaollo/kirja-pro",
8
8
  "license": "MIT",