@fidacy/mcp 0.1.22 → 0.1.24
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 +7 -0
- package/README.md +23 -0
- package/dist/core.js +1 -1
- package/dist/index.js +24 -10
- package/dist/lib.js +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.23
|
|
4
|
+
|
|
5
|
+
Founder note in the README for the week-one install base: how to find your
|
|
6
|
+
anonymous id locally (grep anon_id ~/.fidacy/config.json) and claim your
|
|
7
|
+
install's block history at fidacy.com/claim, plus the founding partner offer.
|
|
8
|
+
No code changes.
|
|
9
|
+
|
|
3
10
|
## 0.1.22
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -16,6 +16,29 @@ Hermes, OpenClaw, and anything else that speaks MCP.
|
|
|
16
16
|
> evidence. Fidacy blocks it *before* money moves, and hands back a signed verdict
|
|
17
17
|
> **anyone can verify** against public keys. You don't trust us — you check the signature.
|
|
18
18
|
|
|
19
|
+
## To everyone who installed Fidacy this week
|
|
20
|
+
|
|
21
|
+
You are one of ~135 installs that made 1,784 real firewall decisions in week one,
|
|
22
|
+
76% of them blocks. Thank you. Two things worth a minute of your time:
|
|
23
|
+
|
|
24
|
+
1. **See and claim what YOUR install blocked.** Your install carries a private,
|
|
25
|
+
anonymous id on your machine (we never learn who you are unless you choose to).
|
|
26
|
+
Run:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
grep anon_id ~/.fidacy/config.json
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
then open `https://fidacy.com/claim?ref=<that id>`. One click turns your local
|
|
33
|
+
history into a free account: server-signed verdicts, Bitcoin-anchored audit,
|
|
34
|
+
nothing about your machine leaves it.
|
|
35
|
+
|
|
36
|
+
2. **Founding partner, 5 seats.** A full year of the evidence layer at $10,800
|
|
37
|
+
instead of $18,000, wired into your stack by the founder, 30-day full refund:
|
|
38
|
+
[fidacy.com/partners](https://fidacy.com/partners)
|
|
39
|
+
|
|
40
|
+
Lucas de Lima, founder
|
|
41
|
+
|
|
19
42
|
## Quick start (free, local-first, no account)
|
|
20
43
|
|
|
21
44
|
```json
|
package/dist/core.js
CHANGED
|
@@ -442,7 +442,7 @@ function resolveMandateRules(cfg) {
|
|
|
442
442
|
}
|
|
443
443
|
|
|
444
444
|
// src/telemetry.ts
|
|
445
|
-
var CLIENT_VERSION = true ? "0.1.
|
|
445
|
+
var CLIENT_VERSION = true ? "0.1.24" : "dev";
|
|
446
446
|
function bandOf(amount) {
|
|
447
447
|
if (typeof amount !== "number" || !Number.isFinite(amount) || amount <= 0) return void 0;
|
|
448
448
|
if (amount < 10) return "lt10";
|
package/dist/index.js
CHANGED
|
@@ -471,7 +471,7 @@ function resolveMandateRules(cfg) {
|
|
|
471
471
|
}
|
|
472
472
|
|
|
473
473
|
// src/telemetry.ts
|
|
474
|
-
var CLIENT_VERSION = true ? "0.1.
|
|
474
|
+
var CLIENT_VERSION = true ? "0.1.24" : "dev";
|
|
475
475
|
function bandOf(amount) {
|
|
476
476
|
if (typeof amount !== "number" || !Number.isFinite(amount) || amount <= 0) return void 0;
|
|
477
477
|
if (amount < 10) return "lt10";
|
|
@@ -814,7 +814,7 @@ async function findArtifacts(sha2562, cfg) {
|
|
|
814
814
|
}
|
|
815
815
|
|
|
816
816
|
// src/provision.ts
|
|
817
|
-
var CLIENT_VERSION2 = true ? "0.1.
|
|
817
|
+
var CLIENT_VERSION2 = true ? "0.1.24" : "dev";
|
|
818
818
|
function provisionEnabled() {
|
|
819
819
|
const v = (process.env.FIDACY_DISABLE_PROVISION ?? "").trim().toLowerCase();
|
|
820
820
|
return !(v === "1" || v === "true" || v === "yes");
|
|
@@ -912,6 +912,19 @@ function decisionNudge(status, violatedRule, upgradeToolName) {
|
|
|
912
912
|
}
|
|
913
913
|
return null;
|
|
914
914
|
}
|
|
915
|
+
function hostedWallCta(feature) {
|
|
916
|
+
const url = claimUrl();
|
|
917
|
+
const cta = url ? `open ${url} \u2014 free account, this install's history migrates` : `call the upgrade tool \u2014 free account, your history migrates`;
|
|
918
|
+
const noun = feature === "anchor" ? "Bitcoin-anchored proofs" : "server-signed verdicts";
|
|
919
|
+
if (nudgeOnce("hosted_wall")) {
|
|
920
|
+
return `You've used this install's free allowance for ${noun} \u2014 the proofs anyone can re-verify at fidacy.com/verify, court-grade, not a local-only check. Keep them flowing: for your operator, ${cta}.`;
|
|
921
|
+
}
|
|
922
|
+
return `Free allowance for ${noun} reached. For your operator: ${cta}.`;
|
|
923
|
+
}
|
|
924
|
+
function noKeyCta() {
|
|
925
|
+
const url = claimUrl();
|
|
926
|
+
return url ? `free in ~1 min for your operator: open ${url} (this install's history migrates), or set FIDACY_ENGINE_API_KEY if you already have one` : `free in ~1 min: call the upgrade tool (your history migrates), or set FIDACY_ENGINE_API_KEY if you already have one`;
|
|
927
|
+
}
|
|
915
928
|
function weekOneBootNudge(upgradeToolName) {
|
|
916
929
|
if (installAgeDays() >= 7 && nudgeOnce("week_1")) {
|
|
917
930
|
const url = claimUrl();
|
|
@@ -924,7 +937,7 @@ function weekOneBootNudge(upgradeToolName) {
|
|
|
924
937
|
var state = ensureState();
|
|
925
938
|
var core = makeCore();
|
|
926
939
|
var subject = process.env.FIDACY_SUBJECT ?? "agent:demo";
|
|
927
|
-
var SERVER_VERSION = true ? "0.1.
|
|
940
|
+
var SERVER_VERSION = true ? "0.1.24" : "dev";
|
|
928
941
|
var server = new McpServer({ name: "fidacy", version: SERVER_VERSION });
|
|
929
942
|
server.registerTool(
|
|
930
943
|
"request_payment",
|
|
@@ -1013,12 +1026,7 @@ server.registerTool(
|
|
|
1013
1026
|
const apiKey = (process.env.FIDACY_ENGINE_API_KEY ?? "").trim();
|
|
1014
1027
|
if (!apiKey) {
|
|
1015
1028
|
return {
|
|
1016
|
-
content: [
|
|
1017
|
-
{
|
|
1018
|
-
type: "text",
|
|
1019
|
-
text: "assess_action needs an engine key \u2014 free in about a minute: call the upgrade tool (your usage history migrates), or set FIDACY_ENGINE_API_KEY if you already have one."
|
|
1020
|
-
}
|
|
1021
|
-
],
|
|
1029
|
+
content: [{ type: "text", text: `assess_action needs an engine key \u2014 ${noKeyCta()}.` }],
|
|
1022
1030
|
isError: true
|
|
1023
1031
|
};
|
|
1024
1032
|
}
|
|
@@ -1033,6 +1041,9 @@ server.registerTool(
|
|
|
1033
1041
|
};
|
|
1034
1042
|
} catch (e) {
|
|
1035
1043
|
if (e instanceof AssessError) {
|
|
1044
|
+
if (e.status === 402) {
|
|
1045
|
+
return { content: [{ type: "text", text: hostedWallCta("verdict") }], isError: true };
|
|
1046
|
+
}
|
|
1036
1047
|
const reasons = e.rejection_reasons?.length ? " (" + e.rejection_reasons.map((x) => x.key).join(",") + ")" : "";
|
|
1037
1048
|
return {
|
|
1038
1049
|
content: [{ type: "text", text: `ASSESS ${e.status}: ${e.type}${reasons}` }],
|
|
@@ -1065,7 +1076,7 @@ server.registerTool(
|
|
|
1065
1076
|
const apiKey = (process.env.FIDACY_ENGINE_API_KEY ?? "").trim();
|
|
1066
1077
|
if (!apiKey) {
|
|
1067
1078
|
return {
|
|
1068
|
-
content: [{ type: "text", text:
|
|
1079
|
+
content: [{ type: "text", text: `anchor_artifact needs an engine key \u2014 ${noKeyCta()}.` }],
|
|
1069
1080
|
isError: true
|
|
1070
1081
|
};
|
|
1071
1082
|
}
|
|
@@ -1094,6 +1105,9 @@ server.registerTool(
|
|
|
1094
1105
|
};
|
|
1095
1106
|
} catch (e) {
|
|
1096
1107
|
if (e instanceof AssessError) {
|
|
1108
|
+
if (e.status === 402) {
|
|
1109
|
+
return { content: [{ type: "text", text: hostedWallCta("anchor") }], isError: true };
|
|
1110
|
+
}
|
|
1097
1111
|
return { content: [{ type: "text", text: `ANCHOR ${e.status}: ${e.type}` }], isError: true };
|
|
1098
1112
|
}
|
|
1099
1113
|
return { content: [{ type: "text", text: "ANCHOR failed: unexpected error" }], isError: true };
|
package/dist/lib.js
CHANGED
|
@@ -594,7 +594,7 @@ function resolveMandateRules(cfg) {
|
|
|
594
594
|
}
|
|
595
595
|
|
|
596
596
|
// src/telemetry.ts
|
|
597
|
-
var CLIENT_VERSION = true ? "0.1.
|
|
597
|
+
var CLIENT_VERSION = true ? "0.1.24" : "dev";
|
|
598
598
|
function bandOf(amount) {
|
|
599
599
|
if (typeof amount !== "number" || !Number.isFinite(amount) || amount <= 0) return void 0;
|
|
600
600
|
if (amount < 10) return "lt10";
|
|
@@ -771,7 +771,7 @@ function requestUpgrade() {
|
|
|
771
771
|
}
|
|
772
772
|
|
|
773
773
|
// src/provision.ts
|
|
774
|
-
var CLIENT_VERSION2 = true ? "0.1.
|
|
774
|
+
var CLIENT_VERSION2 = true ? "0.1.24" : "dev";
|
|
775
775
|
function provisionEnabled() {
|
|
776
776
|
const v = (process.env.FIDACY_DISABLE_PROVISION ?? "").trim().toLowerCase();
|
|
777
777
|
return !(v === "1" || v === "true" || v === "yes");
|
package/package.json
CHANGED