omitly-mcp 5.3.0 → 5.5.0
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 +34 -2
- package/THIRD-PARTY-NOTICES.md +175 -10
- package/dist/annotations.js +8 -0
- package/dist/annotations.js.map +1 -0
- package/dist/edit-tools.js +993 -0
- package/dist/edit-tools.js.map +1 -0
- package/dist/index.js +58 -11
- package/dist/index.js.map +1 -1
- package/dist/paths.js +102 -1
- package/dist/paths.js.map +1 -1
- package/dist/pdf-edit/compose.js +175 -0
- package/dist/pdf-edit/compose.js.map +1 -0
- package/dist/pdf-edit/docFacts.js +587 -0
- package/dist/pdf-edit/docFacts.js.map +1 -0
- package/dist/pdf-edit/info.js +50 -0
- package/dist/pdf-edit/info.js.map +1 -0
- package/dist/pdf-edit/merge.js +78 -0
- package/dist/pdf-edit/merge.js.map +1 -0
- package/dist/pdf-edit/pageOps.js +1245 -0
- package/dist/pdf-edit/pageOps.js.map +1 -0
- package/dist/pdf-edit/pageSpec.js +85 -0
- package/dist/pdf-edit/pageSpec.js.map +1 -0
- package/dist/pdf-edit/refusals.js +108 -0
- package/dist/pdf-edit/refusals.js.map +1 -0
- package/dist/pdf-edit/worker.js +364 -0
- package/dist/pdf-edit/worker.js.map +1 -0
- package/dist/seal.js +15 -0
- package/dist/seal.js.map +1 -1
- package/dist/skill-prompt.js +108 -0
- package/dist/skill-prompt.js.map +1 -0
- package/dist/usage.js +3 -1
- package/dist/usage.js.map +1 -1
- package/package.json +4 -2
- package/skill/SKILL.md +2 -2
- package/wasm/leakcheck_wasm.d.ts +2 -1
- package/wasm/leakcheck_wasm.js +2 -1
- package/wasm/leakcheck_wasm_bg.wasm +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit-tools.js","sourceRoot":"","sources":["../src/edit-tools.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -30,9 +30,12 @@ import * as path from "node:path";
|
|
|
30
30
|
import { pathToFileURL } from "node:url";
|
|
31
31
|
import { z } from "zod";
|
|
32
32
|
import { ENGINE_OUTPUT_CAP_BYTES, resolveEngineTimeoutMs } from "./engine-config.js";
|
|
33
|
-
import { allowedRoot, confineInput, confineOutput } from "./paths.js";
|
|
34
|
-
import {
|
|
35
|
-
import {
|
|
33
|
+
import { allowedRoot, assertSidecarUnchanged, confineInput, confineOutput, confineSidecar } from "./paths.js";
|
|
34
|
+
import { annotations } from "./annotations.js";
|
|
35
|
+
import { registerEditTools } from "./edit-tools.js";
|
|
36
|
+
import { registerSkillPrompt } from "./skill-prompt.js";
|
|
37
|
+
import { isSealError, userVerdictLabel, v2Verdict, AUDIT_V2_OVERALLS, USER_VERDICTS, DECISION_CHANNELS, normalizeSealResult, SEAL_REMOVED_SUMMARY, sealEraLine, sealKeyLine, SEAL_KEY_KINDS, SEAL_VERDICTS, } from "./seal.js";
|
|
38
|
+
import { evaluationBanner, freeCapRefusal, recordFreeCheck, OMITLY_SITE_URL, } from "./usage.js";
|
|
36
39
|
import { acceptInApp, enqueueProposal, readDesktopPresence, readProposal, startClientHeartbeat, } from "./desktop.js";
|
|
37
40
|
/**
|
|
38
41
|
* WASM fallback for five detection/verify/extract tools — bundled in the npm
|
|
@@ -631,6 +634,10 @@ export const verifySealOutputSchema = z
|
|
|
631
634
|
/** omitly#1593: the file carries a sealed report but no seal at all. A
|
|
632
635
|
* reason beside a failure verdict, never a verdict itself. */
|
|
633
636
|
sealRemoved: z.boolean(),
|
|
637
|
+
/** omitly#1792: "one_time" = the verified seal key was made for this one
|
|
638
|
+
* output (no known fingerprint to compare it with); "install" = no
|
|
639
|
+
* one-time marker; null = v1 / not verified. A label, not a verdict. */
|
|
640
|
+
sealKeyKind: z.enum(SEAL_KEY_KINDS).nullable(),
|
|
634
641
|
})
|
|
635
642
|
.strict();
|
|
636
643
|
/** Copy only the known-safe fields off a `normalizeSealResult()` result —
|
|
@@ -659,6 +666,7 @@ function toOutputSeal(res) {
|
|
|
659
666
|
userVerdict: res.userVerdict,
|
|
660
667
|
blocking: res.blocking,
|
|
661
668
|
sealRemoved: res.sealRemoved,
|
|
669
|
+
sealKeyKind: res.sealKeyKind,
|
|
662
670
|
};
|
|
663
671
|
}
|
|
664
672
|
/** omitly#1104: the summary line for a v2 report — its verdict label, then
|
|
@@ -1087,7 +1095,8 @@ function extractTextViaEngineOrWasm(confinedPath, regions, masked) {
|
|
|
1087
1095
|
return res;
|
|
1088
1096
|
}
|
|
1089
1097
|
/**
|
|
1090
|
-
* Registers
|
|
1098
|
+
* Registers every tool (the redaction/check tools here, and the five free
|
|
1099
|
+
* page tools from `edit-tools.ts`, omitly#1841) on a given `McpServer` instance. Extracted from
|
|
1091
1100
|
* module-level top code (#540) so tests can build an in-memory server +
|
|
1092
1101
|
* client pair and drive the tools directly, without a child-process stdio
|
|
1093
1102
|
* client. `index.ts`'s own module body stays a thin bin entry — see the
|
|
@@ -1168,6 +1177,7 @@ export function registerTools(server) {
|
|
|
1168
1177
|
"to scan everything — the safe default"),
|
|
1169
1178
|
},
|
|
1170
1179
|
outputSchema: findSensitiveRegionsOutputSchema,
|
|
1180
|
+
annotations: annotations("Find sensitive regions", true),
|
|
1171
1181
|
}, async ({ pdfPath, regions }) => {
|
|
1172
1182
|
try {
|
|
1173
1183
|
const confined = confineInput(pdfPath, ROOT);
|
|
@@ -1220,6 +1230,7 @@ export function registerTools(server) {
|
|
|
1220
1230
|
texts: z.array(z.string()).min(1).describe("literal strings to locate"),
|
|
1221
1231
|
},
|
|
1222
1232
|
outputSchema: locateTextOutputSchema,
|
|
1233
|
+
annotations: annotations("Locate text", true, true),
|
|
1223
1234
|
}, async ({ pdfPath, texts }) => {
|
|
1224
1235
|
try {
|
|
1225
1236
|
const confined = confineInput(pdfPath, ROOT);
|
|
@@ -1283,6 +1294,7 @@ export function registerTools(server) {
|
|
|
1283
1294
|
drawBox: z.boolean().optional().describe("also paint a black bar (default: opaque fill only)"),
|
|
1284
1295
|
},
|
|
1285
1296
|
outputSchema: redactByEntityOutputSchema,
|
|
1297
|
+
annotations: annotations("Redact PII by type", false),
|
|
1286
1298
|
}, async ({ pdfPath, outputPath, kinds, regions, drawBox }) => {
|
|
1287
1299
|
try {
|
|
1288
1300
|
const queuedByEntity = maybeQueue("redact_by_entity", {
|
|
@@ -1369,6 +1381,7 @@ export function registerTools(server) {
|
|
|
1369
1381
|
regions: z.array(regionSchema).min(1).describe("regions to remove"),
|
|
1370
1382
|
},
|
|
1371
1383
|
outputSchema: redactPdfOutputSchema,
|
|
1384
|
+
annotations: annotations("Redact PDF regions", false),
|
|
1372
1385
|
}, async ({ pdfPath, outputPath, regions }) => {
|
|
1373
1386
|
try {
|
|
1374
1387
|
const queuedPdf = maybeQueue("redact_pdf", {
|
|
@@ -1439,13 +1452,32 @@ export function registerTools(server) {
|
|
|
1439
1452
|
pdfPath: z.string().describe("absolute path to the redacted PDF to verify"),
|
|
1440
1453
|
},
|
|
1441
1454
|
outputSchema: verifyRedactionOutputSchema,
|
|
1455
|
+
annotations: annotations("Verify redaction", true, true),
|
|
1442
1456
|
}, async ({ pdfPath }) => {
|
|
1443
1457
|
try {
|
|
1444
1458
|
const confined = confineInput(pdfPath, ROOT);
|
|
1445
1459
|
if (ENGINE_BIN) {
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1460
|
+
// #1563: the engine derives `<pdf>.audit.json` itself and follows
|
|
1461
|
+
// symlinks, so vet the sidecar here, before it runs. A link (or any
|
|
1462
|
+
// non-regular entry) is refused with no content; no entry at all falls
|
|
1463
|
+
// through to the re-scan below, as before.
|
|
1464
|
+
const sidecar = confineSidecar(confined, ROOT);
|
|
1465
|
+
if (sidecar) {
|
|
1466
|
+
let res;
|
|
1467
|
+
try {
|
|
1468
|
+
res = await runEngine({ command: "verify", pdfPath: confined });
|
|
1469
|
+
}
|
|
1470
|
+
catch (engineError) {
|
|
1471
|
+
// A rejection carries the engine's stderr or non-JSON stdout, which
|
|
1472
|
+
// can hold bytes it read through a swapped-in link. If the sidecar
|
|
1473
|
+
// changed, the refusal replaces the engine's text; if not, the
|
|
1474
|
+
// engine's own error propagates as before.
|
|
1475
|
+
assertSidecarUnchanged(sidecar);
|
|
1476
|
+
throw engineError;
|
|
1477
|
+
}
|
|
1478
|
+
// Withhold everything the engine returned if the sidecar was swapped
|
|
1479
|
+
// for something else while it ran.
|
|
1480
|
+
assertSidecarUnchanged(sidecar);
|
|
1449
1481
|
if (!res?.ok) {
|
|
1450
1482
|
return {
|
|
1451
1483
|
content: [
|
|
@@ -1557,6 +1589,7 @@ export function registerTools(server) {
|
|
|
1557
1589
|
"without one.",
|
|
1558
1590
|
inputSchema: {},
|
|
1559
1591
|
outputSchema: checkLicenseOutputSchema,
|
|
1592
|
+
annotations: annotations("Check licence state", false, true),
|
|
1560
1593
|
}, async () => {
|
|
1561
1594
|
try {
|
|
1562
1595
|
const raw = await runEngine({ command: "check_license" });
|
|
@@ -1633,6 +1666,7 @@ export function registerTools(server) {
|
|
|
1633
1666
|
pdfPath: z.string().describe("absolute path to the PDF to check for an Omitly audit report and seal"),
|
|
1634
1667
|
},
|
|
1635
1668
|
outputSchema: verifySealOutputSchema,
|
|
1669
|
+
annotations: annotations("Verify seal", true, true),
|
|
1636
1670
|
}, async ({ pdfPath }) => {
|
|
1637
1671
|
try {
|
|
1638
1672
|
const result = await runSealVerification(pdfPath);
|
|
@@ -1677,7 +1711,7 @@ export function registerTools(server) {
|
|
|
1677
1711
|
`out-of-band against what the sender published if you need to know who sealed it.`
|
|
1678
1712
|
: `⚠️ Seal verdict: ${res.verdict} — do not treat this file's audit trail as trustworthy.`;
|
|
1679
1713
|
return {
|
|
1680
|
-
content: [{ type: "text", text: `${summary}${sealEraLine(res)}\n\n${JSON.stringify(res, null, 2)}` }],
|
|
1714
|
+
content: [{ type: "text", text: `${summary}${sealEraLine(res)}${sealKeyLine(res)}\n\n${JSON.stringify(res, null, 2)}` }],
|
|
1681
1715
|
structuredContent,
|
|
1682
1716
|
isError: isSealError(res),
|
|
1683
1717
|
};
|
|
@@ -1692,7 +1726,7 @@ export function registerTools(server) {
|
|
|
1692
1726
|
server.registerTool("verify_document", {
|
|
1693
1727
|
description: "Recipient trust-verification: for someone who RECEIVED a PDF from " +
|
|
1694
1728
|
"someone else and wants to confirm it's an authentic, unaltered Omitly " +
|
|
1695
|
-
"output —
|
|
1729
|
+
"output — needs the native engine; no licence required. Confirms the embedded audit " +
|
|
1696
1730
|
"report and whole-file tamper-evidence seal (v1: Ed25519; v2: ML-DSA-87 " +
|
|
1697
1731
|
"with ECDSA P-384) are valid and unaltered since " +
|
|
1698
1732
|
"sealing, and reports the seal's own attested verdict — this does not " +
|
|
@@ -1715,6 +1749,7 @@ export function registerTools(server) {
|
|
|
1715
1749
|
pdfPath: z.string().describe("absolute path to the PDF to check for an Omitly audit report and seal"),
|
|
1716
1750
|
},
|
|
1717
1751
|
outputSchema: verifySealOutputSchema,
|
|
1752
|
+
annotations: annotations("Verify document", true, true),
|
|
1718
1753
|
}, async ({ pdfPath }) => {
|
|
1719
1754
|
try {
|
|
1720
1755
|
const result = await runSealVerification(pdfPath);
|
|
@@ -1760,7 +1795,7 @@ export function registerTools(server) {
|
|
|
1760
1795
|
`by (or the report was stripped from) this pipeline.`
|
|
1761
1796
|
: `⚠️ Seal verdict: ${res.verdict} — do not treat this file's audit trail as trustworthy.`;
|
|
1762
1797
|
return {
|
|
1763
|
-
content: [{ type: "text", text: `${summary}${sealEraLine(res)}\n\n${JSON.stringify(res, null, 2)}` }],
|
|
1798
|
+
content: [{ type: "text", text: `${summary}${sealEraLine(res)}${sealKeyLine(res)}\n\n${JSON.stringify(res, null, 2)}` }],
|
|
1764
1799
|
structuredContent,
|
|
1765
1800
|
isError: isSealError(res),
|
|
1766
1801
|
};
|
|
@@ -1787,6 +1822,7 @@ export function registerTools(server) {
|
|
|
1787
1822
|
css: z.string().optional().describe("extra CSS appended after the default print styles"),
|
|
1788
1823
|
},
|
|
1789
1824
|
outputSchema: createPdfOutputSchema,
|
|
1825
|
+
annotations: annotations("Create PDF", false),
|
|
1790
1826
|
}, async ({ outputPath, source, sourcePath, format, title, css }) => {
|
|
1791
1827
|
try {
|
|
1792
1828
|
const res = await runPdfEngine({
|
|
@@ -1852,6 +1888,7 @@ export function registerTools(server) {
|
|
|
1852
1888
|
pdfPath: z.string().describe("absolute path to the supposedly-redacted PDF to audit"),
|
|
1853
1889
|
},
|
|
1854
1890
|
outputSchema: checkRedactionOutputSchema,
|
|
1891
|
+
annotations: annotations("Check redaction for leaks", true),
|
|
1855
1892
|
}, async ({ pdfPath }) => {
|
|
1856
1893
|
try {
|
|
1857
1894
|
const confined = confineInput(pdfPath, ROOT);
|
|
@@ -1967,7 +2004,7 @@ export function registerTools(server) {
|
|
|
1967
2004
|
`${scope}\n\n` +
|
|
1968
2005
|
`Previews are masked; the raw values stayed on-device. To actually remove this data ` +
|
|
1969
2006
|
`(not just cover it) and get an independent verification + signed audit log, redact it ` +
|
|
1970
|
-
`with Omitly —
|
|
2007
|
+
`with Omitly — ${OMITLY_SITE_URL}`,
|
|
1971
2008
|
},
|
|
1972
2009
|
],
|
|
1973
2010
|
structuredContent,
|
|
@@ -2019,6 +2056,7 @@ export function registerTools(server) {
|
|
|
2019
2056
|
"masked behaviour."),
|
|
2020
2057
|
},
|
|
2021
2058
|
outputSchema: extractPdfTextOutputSchema,
|
|
2059
|
+
annotations: annotations("Extract PDF text", true, true),
|
|
2022
2060
|
}, async ({ pdfPath, regions, masked }) => {
|
|
2023
2061
|
try {
|
|
2024
2062
|
const confined = confineInput(pdfPath, ROOT);
|
|
@@ -2069,6 +2107,7 @@ export function registerTools(server) {
|
|
|
2069
2107
|
regions: z.array(regionSchema).min(1).describe("regions proposed for removal"),
|
|
2070
2108
|
},
|
|
2071
2109
|
outputSchema: queuedProposalOutputSchema,
|
|
2110
|
+
annotations: annotations("Propose redactions", false),
|
|
2072
2111
|
}, async ({ pdfPath, outputPath, regions }) => {
|
|
2073
2112
|
try {
|
|
2074
2113
|
const presence = readDesktopPresence();
|
|
@@ -2142,6 +2181,7 @@ export function registerTools(server) {
|
|
|
2142
2181
|
proposalId: z.string().describe("the proposalId returned when the proposal was queued"),
|
|
2143
2182
|
},
|
|
2144
2183
|
outputSchema: proposalStatusOutputSchema,
|
|
2184
|
+
annotations: annotations("Get proposal status", true, true),
|
|
2145
2185
|
}, async ({ proposalId }) => {
|
|
2146
2186
|
try {
|
|
2147
2187
|
const p = readProposal(proposalId);
|
|
@@ -2175,12 +2215,19 @@ export function registerTools(server) {
|
|
|
2175
2215
|
};
|
|
2176
2216
|
}
|
|
2177
2217
|
});
|
|
2218
|
+
// omitly#1841: five free page tools. Their own module: no desktop queue, no licence,
|
|
2219
|
+
// no usage meter (decisions 2C and 3B). The ROOT is passed so they share this
|
|
2220
|
+
// server's confinement exactly.
|
|
2221
|
+
registerEditTools(server, { root: ROOT });
|
|
2178
2222
|
} // end registerTools
|
|
2179
2223
|
/** Create a fresh `McpServer` with every tool registered — used by both the
|
|
2180
2224
|
* bin entry below and tests. */
|
|
2181
2225
|
export function createServer() {
|
|
2182
2226
|
const server = new McpServer({ name: "omitly-mcp", version: VERSION });
|
|
2183
2227
|
registerTools(server);
|
|
2228
|
+
// omitly#1641: the shipped skill/SKILL.md, offered as a prompt so MCP
|
|
2229
|
+
// clients other than Claude Code (Desktop, Cursor, …) can find it.
|
|
2230
|
+
registerSkillPrompt(server);
|
|
2184
2231
|
// omitly#1642: tell the desktop app which client is connected (Connect your
|
|
2185
2232
|
// AI → "Connected clients"). Written on initialize and refreshed on a timer;
|
|
2186
2233
|
// cleared on close. Best effort — never affects a tool call.
|