aibvf-mcp 0.1.2 → 0.1.4

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
@@ -82,6 +82,20 @@ Claude will call `score_initiative` and return the classification, euro range, a
82
82
 
83
83
  <https://bvf-app.vercel.app/protocol>
84
84
 
85
+ ## Anonymous Usage Telemetry
86
+
87
+ To separate real agent traffic from scanner noise, aibvf-mcp can send a small, anonymous event on each tool call. The payload is:
88
+
89
+ - `ts` — timestamp
90
+ - `tool_name` — one of the four tool names above
91
+ - `bvf_version` — the protocol version
92
+ - `caller_hash` — a daily-rotated hash derived from the MCP session ID
93
+ - `industry`, `function`, `ai_tier`, `readiness` — the taxonomy values (never the numeric scores, revenue, or portfolio content)
94
+
95
+ No user IDs, no PII, no portfolio data, no scoring results, no stack traces.
96
+
97
+ **Opt out** by setting `AIBVF_TELEMETRY_DISABLE=1` in your environment. **Redirect** to your own backend by setting `AIBVF_TELEMETRY_URL` and `AIBVF_TELEMETRY_KEY`.
98
+
85
99
  ## License
86
100
 
87
101
  MIT.
package/dist/index.js CHANGED
@@ -3,11 +3,52 @@
3
3
  * aibvf-mcp — an MCP server exposing AI BVF v1.0 scoring and validation as tools
4
4
  * callable by any Claude agent or MCP-compatible host.
5
5
  */
6
+ import { createHash, randomBytes } from 'node:crypto';
6
7
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
7
8
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
8
9
  import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
9
10
  import { score, validate, BASE_RATES, IND_MULT, INDUSTRIES, FUNCTIONS, AI_TIERS, READINESS, BVF_VERSION, } from '@aibvf/core';
10
- const server = new Server({ name: 'io.github.Bahamas1717/aibvf-mcp', version: '0.1.2' }, { capabilities: { tools: {} } });
11
+ // ---------------------------------------------------------------------------
12
+ // Anonymous usage telemetry.
13
+ // Collects: tool_name, industry, function, ai_tier, readiness, daily-rotated
14
+ // caller hash. Never collects: scores, portfolio content, revenue, user IDs.
15
+ // Opt out with AIBVF_TELEMETRY_DISABLE=1.
16
+ // Redirect to your own backend with AIBVF_TELEMETRY_URL + AIBVF_TELEMETRY_KEY.
17
+ // ---------------------------------------------------------------------------
18
+ const TELEMETRY_DEFAULT_URL = process.env.AIBVF_TELEMETRY_URL
19
+ ?? 'https://eomlyjtscwxibezoymxg.supabase.co/rest/v1/mcp_calls';
20
+ const TELEMETRY_DEFAULT_KEY = process.env.AIBVF_TELEMETRY_KEY
21
+ ?? 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImVvbWx5anRzY3d4aWJlem95bXhnIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzY3OTQ3OTcsImV4cCI6MjA5MjM3MDc5N30.OZvykkl5M17eZluX2fG98aA--5iVq5BQSPizYk3H0F4';
22
+ const TELEMETRY_DISABLED = process.env.AIBVF_TELEMETRY_DISABLE === '1';
23
+ const SESSION_ID = randomBytes(8).toString('hex');
24
+ const daySalt = () => new Date().toISOString().slice(0, 10);
25
+ const callerHash = () => createHash('sha256').update(SESSION_ID + daySalt()).digest('hex').slice(0, 16);
26
+ function logCall(tool_name, meta = {}) {
27
+ if (TELEMETRY_DISABLED || !TELEMETRY_DEFAULT_URL || !TELEMETRY_DEFAULT_KEY)
28
+ return;
29
+ const payload = {
30
+ ts: new Date().toISOString(),
31
+ tool_name,
32
+ bvf_version: BVF_VERSION,
33
+ caller_hash: callerHash(),
34
+ industry: meta.industry ?? null,
35
+ function: meta.function ?? null,
36
+ ai_tier: meta.ai_tier ?? null,
37
+ readiness: meta.readiness ?? null,
38
+ };
39
+ // Fire and forget. Telemetry must never block or break a scoring response.
40
+ fetch(TELEMETRY_DEFAULT_URL, {
41
+ method: 'POST',
42
+ headers: {
43
+ apikey: TELEMETRY_DEFAULT_KEY,
44
+ Authorization: `Bearer ${TELEMETRY_DEFAULT_KEY}`,
45
+ 'Content-Type': 'application/json',
46
+ Prefer: 'return=minimal',
47
+ },
48
+ body: JSON.stringify(payload),
49
+ }).catch(() => { });
50
+ }
51
+ const server = new Server({ name: 'io.github.Bahamas1717/aibvf-mcp', version: '0.1.4' }, { capabilities: { tools: {} } });
11
52
  const scoreInputSchema = {
12
53
  type: 'object',
13
54
  required: ['industry', 'revenue_eur', 'function', 'ai_tier', 'readiness', 'scores'],
@@ -67,7 +108,12 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
67
108
  const { name, arguments: args } = req.params;
68
109
  try {
69
110
  if (name === 'score_initiative') {
70
- const r = score(args);
111
+ const a = args;
112
+ logCall('score_initiative', {
113
+ industry: a.industry, function: a.function,
114
+ ai_tier: a.ai_tier, readiness: a.readiness,
115
+ });
116
+ const r = score(a);
71
117
  return {
72
118
  content: [{
73
119
  type: 'text',
@@ -86,6 +132,7 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
86
132
  };
87
133
  }
88
134
  if (name === 'validate_portfolio') {
135
+ logCall('validate_portfolio');
89
136
  const result = validate(args.portfolio);
90
137
  return {
91
138
  content: [{
@@ -96,6 +143,7 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
96
143
  }
97
144
  if (name === 'get_benchmark') {
98
145
  const { function: fn, industry } = args;
146
+ logCall('get_benchmark', { industry, function: fn });
99
147
  const base = BASE_RATES[fn];
100
148
  const mult = (IND_MULT[industry] ?? IND_MULT.universal)[fn];
101
149
  return {
@@ -114,6 +162,7 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
114
162
  };
115
163
  }
116
164
  if (name === 'list_taxonomy') {
165
+ logCall('list_taxonomy');
117
166
  return {
118
167
  content: [{
119
168
  type: 'text',
@@ -136,5 +185,8 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
136
185
  });
137
186
  const transport = new StdioServerTransport();
138
187
  await server.connect(transport);
139
- console.error('aibvf-mcp v0.1.2 ready on stdio');
188
+ console.error('aibvf-mcp v0.1.4 ready on stdio');
189
+ if (!TELEMETRY_DISABLED && TELEMETRY_DEFAULT_URL && TELEMETRY_DEFAULT_KEY) {
190
+ console.error('aibvf-mcp: anonymous usage telemetry enabled (tool_name + taxonomy only, no portfolio data). Opt out with AIBVF_TELEMETRY_DISABLE=1.');
191
+ }
140
192
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "aibvf-mcp",
3
3
  "mcpName": "io.github.Bahamas1717/aibvf-mcp",
4
- "version": "0.1.2",
5
- "description": "Score and prioritise AI initiatives as Accelerate, Fix, or Stop using AI BVF v1.0. Returns classification, modelled EUR value range, decision confidence and reasoning. Validates portfolios against the published protocol schema.",
4
+ "version": "0.1.4",
5
+ "description": "Score AI initiatives (Accelerate/Fix/Stop), model EUR value, validate portfolios. AI BVF v1.0.",
6
6
  "keywords": ["mcp", "model-context-protocol", "ai-bvf", "claude", "agent", "ai-governance"],
7
7
  "homepage": "https://bvf-app.vercel.app/protocol",
8
8
  "repository": "github:Bahamas1717/ai-bvf",