document-mcp 4.8.26 → 4.8.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/README.md CHANGED
@@ -228,7 +228,7 @@ Every tool that takes or produces document bytes goes through the same two hybri
228
228
  | `odb_tables` | Lists every table an embedded `.odb` database declares — column names, types, and row data — across every storage tier `documents.js` supports (HSQLDB TEXT/CACHED/BINARY, Firebird gbak backups). |
229
229
  | `odb_forms` | Lists every form an `.odb` database declares, with each form's own data source and field-bound controls. |
230
230
  | `odb_reports` | Lists every report an `.odb` database declares, with each report's own data-source command, band/group structure, and `rpt:` formula expressions. |
231
- | `odb_query` | Runs a bounded `SELECT` (with optional JOINs of any kind and table aliases) over an embedded `.odb` database's extracted tables — given directly as SQL or by naming a saved query. No database engine involved; no subqueries or column aliases; an unsupported construct is reported as a tool error naming it, never silently ignored. |
231
+ | `odb_query` | Runs a bounded `SELECT` (with optional JOINs of any kind, table aliases, a derived table in `FROM`, and `IN`/`EXISTS` subqueries) over an embedded `.odb` database's extracted tables — given directly as SQL or by naming a saved query. No database engine involved; no column aliases; an unsupported construct is reported as a tool error naming it, never silently ignored. |
232
232
  | `odb_to_csv` | Extracts exactly one named table from an embedded `.odb` database as CSV bytes. The table name is required whenever the database declares more than one table. |
233
233
  | `odb_to_xlsx` | Extracts every table an embedded `.odb` database declares into one xlsx workbook, one sheet per table. |
234
234
  | `odb_render_report` | Resolves one of an `.odb` database's own reports — its data-bound command run through the bounded SQL engine, its `rpt:` formulas evaluated, its bands laid out — and renders the result to docx, odt, or pdf. |
package/dist/bin.js CHANGED
@@ -12,7 +12,7 @@ import { existsSync, readFileSync } from "node:fs";
12
12
  import { basename, join } from "node:path";
13
13
  import { buildOutline, isOutlineNode, outlineLeafText } from "document-outline.js";
14
14
  //#region package.json
15
- var version = "4.8.26";
15
+ var version = "4.8.27";
16
16
  //#endregion
17
17
  //#region src/io/document-input.ts
18
18
  const EXTENSION_TO_FORMAT = {
@@ -794,7 +794,7 @@ function registerOdbTools(server) {
794
794
  });
795
795
  server.registerTool("odb_query", {
796
796
  title: "Query an .odb database",
797
- description: "Runs a bounded SELECT (with optional JOINs and table aliases) over an embedded .odb database's own extracted tables, given directly as SQL or by naming one of the database's saved queries. No database engine is involved -- the query runs in memory over the same tables odb_tables would return, against a closed grammar (SELECT/FROM/JOIN [INNER|LEFT [OUTER]|RIGHT [OUTER]|FULL [OUTER]|CROSS|NATURAL] ... [ON|USING]/WHERE/GROUP BY/ORDER BY, with an optional [AS] alias on any table -- no subqueries or column aliases); an unsupported construct is reported as a tool error naming it, never silently ignored.",
797
+ description: "Runs a bounded SELECT (with optional JOINs of any kind, table aliases, a derived table in FROM, and IN/EXISTS subqueries) over an embedded .odb database's own extracted tables, given directly as SQL or by naming one of the database's saved queries. No database engine is involved -- the query runs in memory over the same tables odb_tables would return, against a closed grammar (SELECT/FROM/JOIN [INNER|LEFT [OUTER]|RIGHT [OUTER]|FULL [OUTER]|CROSS|NATURAL] ... [ON|USING]/WHERE/GROUP BY/ORDER BY, with an optional [AS] alias on any table, WHERE and ON also accepting [NOT] IN (SELECT ...) and [NOT] EXISTS (SELECT ...) -- no column aliases); an unsupported construct is reported as a tool error naming it, never silently ignored.",
798
798
  inputSchema: z.object({
799
799
  source: DocumentInputSchema.describe(ODB_SOURCE_DESCRIPTION),
800
800
  sql: z.string().describe("A literal SELECT statement to run. Mutually exclusive with \"query\".").optional(),
package/dist/index.cjs CHANGED
@@ -9,7 +9,7 @@ let node_fs = require("node:fs");
9
9
  let node_path = require("node:path");
10
10
  let document_outline_js = require("document-outline.js");
11
11
  //#region package.json
12
- var version = "4.8.26";
12
+ var version = "4.8.27";
13
13
  //#endregion
14
14
  //#region src/io/document-input.ts
15
15
  const EXTENSION_TO_FORMAT = {
@@ -791,7 +791,7 @@ function registerOdbTools(server) {
791
791
  });
792
792
  server.registerTool("odb_query", {
793
793
  title: "Query an .odb database",
794
- description: "Runs a bounded SELECT (with optional JOINs and table aliases) over an embedded .odb database's own extracted tables, given directly as SQL or by naming one of the database's saved queries. No database engine is involved -- the query runs in memory over the same tables odb_tables would return, against a closed grammar (SELECT/FROM/JOIN [INNER|LEFT [OUTER]|RIGHT [OUTER]|FULL [OUTER]|CROSS|NATURAL] ... [ON|USING]/WHERE/GROUP BY/ORDER BY, with an optional [AS] alias on any table -- no subqueries or column aliases); an unsupported construct is reported as a tool error naming it, never silently ignored.",
794
+ description: "Runs a bounded SELECT (with optional JOINs of any kind, table aliases, a derived table in FROM, and IN/EXISTS subqueries) over an embedded .odb database's own extracted tables, given directly as SQL or by naming one of the database's saved queries. No database engine is involved -- the query runs in memory over the same tables odb_tables would return, against a closed grammar (SELECT/FROM/JOIN [INNER|LEFT [OUTER]|RIGHT [OUTER]|FULL [OUTER]|CROSS|NATURAL] ... [ON|USING]/WHERE/GROUP BY/ORDER BY, with an optional [AS] alias on any table, WHERE and ON also accepting [NOT] IN (SELECT ...) and [NOT] EXISTS (SELECT ...) -- no column aliases); an unsupported construct is reported as a tool error naming it, never silently ignored.",
795
795
  inputSchema: zod.z.object({
796
796
  source: DocumentInputSchema.describe(ODB_SOURCE_DESCRIPTION),
797
797
  sql: zod.z.string().describe("A literal SELECT statement to run. Mutually exclusive with \"query\".").optional(),
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import { existsSync, readFileSync } from "node:fs";
8
8
  import { basename, join } from "node:path";
9
9
  import { buildOutline, isOutlineNode, outlineLeafText } from "document-outline.js";
10
10
  //#region package.json
11
- var version = "4.8.26";
11
+ var version = "4.8.27";
12
12
  //#endregion
13
13
  //#region src/io/document-input.ts
14
14
  const EXTENSION_TO_FORMAT = {
@@ -790,7 +790,7 @@ function registerOdbTools(server) {
790
790
  });
791
791
  server.registerTool("odb_query", {
792
792
  title: "Query an .odb database",
793
- description: "Runs a bounded SELECT (with optional JOINs and table aliases) over an embedded .odb database's own extracted tables, given directly as SQL or by naming one of the database's saved queries. No database engine is involved -- the query runs in memory over the same tables odb_tables would return, against a closed grammar (SELECT/FROM/JOIN [INNER|LEFT [OUTER]|RIGHT [OUTER]|FULL [OUTER]|CROSS|NATURAL] ... [ON|USING]/WHERE/GROUP BY/ORDER BY, with an optional [AS] alias on any table -- no subqueries or column aliases); an unsupported construct is reported as a tool error naming it, never silently ignored.",
793
+ description: "Runs a bounded SELECT (with optional JOINs of any kind, table aliases, a derived table in FROM, and IN/EXISTS subqueries) over an embedded .odb database's own extracted tables, given directly as SQL or by naming one of the database's saved queries. No database engine is involved -- the query runs in memory over the same tables odb_tables would return, against a closed grammar (SELECT/FROM/JOIN [INNER|LEFT [OUTER]|RIGHT [OUTER]|FULL [OUTER]|CROSS|NATURAL] ... [ON|USING]/WHERE/GROUP BY/ORDER BY, with an optional [AS] alias on any table, WHERE and ON also accepting [NOT] IN (SELECT ...) and [NOT] EXISTS (SELECT ...) -- no column aliases); an unsupported construct is reported as a tool error naming it, never silently ignored.",
794
794
  inputSchema: z.object({
795
795
  source: DocumentInputSchema.describe(ODB_SOURCE_DESCRIPTION),
796
796
  sql: z.string().describe("A literal SELECT statement to run. Mutually exclusive with \"query\".").optional(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "document-mcp",
3
- "version": "4.8.26",
3
+ "version": "4.8.27",
4
4
  "description": "MCP (Model Context Protocol) server exposing documents.js's document-conversion, .odb, metadata, and font tooling as MCP tools.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -90,10 +90,10 @@
90
90
  "dependencies": {
91
91
  "@modelcontextprotocol/node": "2.0.0",
92
92
  "@modelcontextprotocol/server": "2.0.0",
93
- "document-compute.js": "1.3.55",
93
+ "document-compute.js": "1.3.56",
94
94
  "document-outline.js": "3.6.2",
95
95
  "document-schema.js": "7.5.0",
96
- "documents.js": "7.9.1",
96
+ "documents.js": "7.10.0",
97
97
  "zod": "4.4.3"
98
98
  },
99
99
  "devDependencies": {