@bighub/bighub-mcp 0.1.5 → 0.2.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/README.md CHANGED
@@ -1,21 +1,42 @@
1
1
  # @bighub/bighub-mcp
2
2
 
3
- > MCP server for decision intelligence and self-improving rules with BIGHUB.
3
+ **BIGHUB's decision layer as an MCP server. Evaluate agent actions, receive structured recommendations, report outcomes, and improve future decisions — from any MCP-compatible client.**
4
4
 
5
- Use BIGHUB from any [Model Context Protocol](https://modelcontextprotocol.io) client. This server exposes MCP tools that simulate, score, enforce, and learn from AI agent execution by calling the BIGHUB API — actions, rules, approvals, kill switch, events, API keys, webhooks, auth, and Future Memory.
5
+ > MCP server for decision learning on agent actions.
6
6
 
7
7
  ```text
8
- MCP Client (Claude, Cursor, etc.)
9
-
10
- @bighub/bighub-mcp (stdio)
11
-
12
- BIGHUB Decision Intelligence API (api.bighub.io)
13
-
14
- simulatescoreexecute / block / approve
8
+ MCP client
9
+
10
+ @bighub/bighub-mcp
11
+
12
+ BIGHUB API
13
+
14
+ evaluaterecommendagent acts report outcome → learn
15
15
  ```
16
16
 
17
17
  ---
18
18
 
19
+ ## Table of contents
20
+
21
+ **Start here**
22
+
23
+ - [Install](#install)
24
+ - [Quickstart](#quickstart)
25
+ - [When to use bighub-mcp](#when-to-use-bighub-mcp)
26
+ - [Typical MCP Loop](#typical-mcp-loop)
27
+ - [Structured recommendation](#structured-recommendation)
28
+ - [Trajectory-aware evaluation](#trajectory-aware-evaluation)
29
+
30
+ **Tool reference**
31
+
32
+ - [Core loop](#core-loop) · [Actions](#actions) · [Outcomes](#outcomes) · [Decision cases](#decision-cases) · [Precedents](#precedents) · [Calibration](#calibration) · [Multi-signal retrieval](#multi-signal-retrieval) · [Insights](#insights) · [Simulations](#simulations) · [Learning](#learning) · [Features](#features) · [Runtime ingestion](#runtime-ingestion) · [Operating constraints](#operating-constraints) · [Approvals & kill switch](#approvals--kill-switch) · [Events](#events) · [Webhooks](#webhooks) · [API keys](#api-keys) · [Auth](#auth) · [Utility](#utility)
33
+
34
+ **Reference**
35
+
36
+ - [Environment Variables](#environment-variables) · [Free BETA](#free-beta) · [Local Development](#local-development) · [Links](#links)
37
+
38
+ ---
39
+
19
40
  ## Install
20
41
 
21
42
  ```bash
@@ -28,19 +49,19 @@ Requires Node.js 18+.
28
49
 
29
50
  ## Quickstart
30
51
 
31
- 1. Set your API key:
52
+ Set your API key:
32
53
 
33
54
  ```bash
34
55
  export BIGHUB_API_KEY=your_api_key
35
56
  ```
36
57
 
37
- 2. Run the server in stdio mode:
58
+ Run the server in stdio mode:
38
59
 
39
60
  ```bash
40
61
  npx @bighub/bighub-mcp
41
62
  ```
42
63
 
43
- The server exposes MCP tools over stdio. Connect it to any MCP-compatible client (Claude Desktop, Cursor, etc.) by adding it to your MCP configuration:
64
+ Add it to your MCP client configuration:
44
65
 
45
66
  ```json
46
67
  {
@@ -56,75 +77,373 @@ The server exposes MCP tools over stdio. Connect it to any MCP-compatible client
56
77
  }
57
78
  ```
58
79
 
80
+ Works with MCP-compatible clients such as Claude Desktop and Cursor.
81
+
82
+ ---
83
+
84
+ ## When to use bighub-mcp
85
+
86
+ Use this server when your MCP-connected agent performs actions that:
87
+
88
+ - **Have real consequences** — financial, operational, or reputational impact
89
+ - **Are ambiguous or multi-step** — the right call depends on context and trajectory
90
+ - **Produce observable outcomes** — you can report what actually happened
91
+ - **Need to improve over time** — static instructions aren't enough
92
+
93
+ If your agent only answers questions or performs read-only lookups, you don't need this. It's designed for agents that make decisions with real-world consequences.
94
+
95
+ ---
96
+
97
+ ## Typical MCP Loop
98
+
99
+ 1. Submit a decision for evaluation
100
+ 2. Receive a recommendation and decision signals
101
+ 3. Let the agent or runtime act
102
+ 4. Report the real outcome
103
+ 5. Inspect similar past cases and calibration
104
+ 6. Use what was learned on the next decision
105
+
106
+ ```text
107
+ bighub_actions_evaluate
108
+ → agent runtime acts based on recommendation
109
+ → bighub_outcomes_report
110
+ → bighub_precedents_query
111
+ → bighub_calibration_report
112
+ → bighub_insights_advise
113
+ ```
114
+
59
115
  ---
60
116
 
61
- ## What BIGHUB does
117
+ ## Structured recommendation
62
118
 
63
- BIGHUB simulates every agent action, learns from every decision, and makes your rules smarter over time. Every action is stress-tested across 100+ scenarios and scored for risk, fragility, and blast radius — before execution.
119
+ Every evaluation returns a structured recommendation not just allow / block:
64
120
 
65
- | Guardrails | BIGHUB |
121
+ | Field | Description |
66
122
  |---|---|
67
- | Block or allow | Simulate, score, enforce, and learn |
68
- | Static rules | Rules that improve from every decision |
69
- | No visibility into risk | Fragility, blast radius, and impact scored before execution |
70
- | Same policy forever | Future Memory detects patterns and recommends smarter policies |
123
+ | `recommendation` | `proceed`, `proceed_with_caution`, `review_recommended`, `do_not_proceed` |
124
+ | `recommendation_confidence` | `high`, `medium`, `low` |
125
+ | `risk_score` | Aggregated risk (0–1) |
126
+ | `enforcement_mode` | `advisory`, `review`, `enforced` |
127
+ | `decision_intelligence` | Rationale, evidence status, trajectory health, alternatives |
128
+
129
+ Legacy fields (`allowed`, `result`, `reason`) may still appear for backward compatibility but are not the primary surface.
71
130
 
72
131
  ---
73
132
 
74
- ## Environment variables
133
+ ## Trajectory-aware evaluation
75
134
 
76
- | Variable | Required | Default | Description |
77
- |----------|----------|---------|-------------|
78
- | `BIGHUB_API_KEY` | Yes* | — | API key authentication (`X-API-Key` header) |
79
- | `BIGHUB_BEARER_TOKEN` | No | — | Alternative auth (`Authorization: Bearer`) |
80
- | `BIGHUB_BASE_URL` | No | `https://api.bighub.io` | API base URL |
81
- | `BIGHUB_TIMEOUT_MS` | No | `15000` | HTTP request timeout in milliseconds |
82
- | `BIGHUB_MAX_RETRIES` | No | `2` | Retry count on transient failures (429/5xx) |
83
- | `BIGHUB_ALLOW_INSECURE_HTTP` | No | — | Allow HTTP for localhost/private host testing |
135
+ BIGHUB evaluates actions not only in isolation, but also in the context of what happened before. As outcomes accumulate, similar sequences and prior decisions improve future recommendations.
136
+
137
+ ---
138
+
139
+ # Complete Tool Reference
140
+
141
+ 125 tools organized by domain. The core loop tools are listed first.
142
+
143
+ ---
144
+
145
+ ## Core loop
146
+
147
+ | Tool | Description |
148
+ |---|---|
149
+ | `bighub_actions_evaluate` | Submit an action for evaluation — returns recommendation, confidence, risk score |
150
+ | `bighub_outcomes_report` | Report what actually happened after execution |
151
+ | `bighub_precedents_query` | Query similar past cases |
152
+ | `bighub_calibration_report` | Calibration report (prediction vs reality) |
153
+ | `bighub_insights_advise` | Learned advisories for an action |
154
+
155
+ ---
156
+
157
+ ## Actions
158
+
159
+ | Tool | Description |
160
+ |---|---|
161
+ | `bighub_actions_evaluate` | Evaluate an action (primary entry point) |
162
+ | `bighub_actions_evaluate_payload` | Evaluate with a free-form payload |
163
+ | `bighub_actions_evaluate_batch` | Evaluate multiple actions in one request |
164
+ | `bighub_actions_dry_run` | Non-persistent evaluation (preview) |
165
+ | `bighub_actions_live_connect` | Open a live connection slot |
166
+ | `bighub_actions_live_heartbeat` | Heartbeat a live connection |
167
+ | `bighub_actions_live_disconnect` | Close a live connection |
168
+ | `bighub_actions_verify_validation` | Verify a validation hash |
169
+ | `bighub_actions_observer_stats` | Observer statistics |
170
+ | `bighub_actions_dashboard_summary` | Dashboard summary metrics |
171
+ | `bighub_actions_status` | Service status |
172
+ | `bighub_actions_memory_ingest` | Ingest decision memory events |
173
+ | `bighub_actions_memory_context` | Retrieve memory context |
174
+ | `bighub_actions_memory_refresh_aggregates` | Refresh memory aggregates |
175
+ | `bighub_actions_memory_recommendations` | Pattern-based recommendations from memory |
176
+
177
+ ---
178
+
179
+ ## Outcomes
180
+
181
+ | Tool | Description |
182
+ |---|---|
183
+ | `bighub_outcomes_report` | Report a real-world outcome |
184
+ | `bighub_outcomes_report_batch` | Batch report outcomes |
185
+ | `bighub_outcomes_get` | Get outcome by request_id |
186
+ | `bighub_outcomes_get_by_validation` | Get outcome by validation_id |
187
+ | `bighub_outcomes_get_by_case` | Get outcome by case_id |
188
+ | `bighub_outcomes_timeline` | Full outcome timeline |
189
+ | `bighub_outcomes_pending` | Decisions awaiting outcomes |
190
+ | `bighub_outcomes_analytics` | Outcome analytics summary |
191
+ | `bighub_outcomes_taxonomy` | Supported outcome statuses |
192
+ | `bighub_outcomes_recommendation_quality` | Follow rate, quadrants, trend, by domain/actor |
193
+ | `bighub_outcomes_partner_view` | Self-contained domain view with KPIs and examples |
194
+
195
+ ---
196
+
197
+ ## Decision cases
198
+
199
+ | Tool | Description |
200
+ |---|---|
201
+ | `bighub_cases_create` | Create a decision case |
202
+ | `bighub_cases_get` | Get a case by ID |
203
+ | `bighub_cases_list` | List and filter cases |
204
+ | `bighub_cases_report_outcome` | Report outcome for a case |
205
+ | `bighub_cases_precedents` | Precedent intelligence for a proposed action |
206
+ | `bighub_cases_calibration` | Calibration metrics for cases |
207
+
208
+ ---
209
+
210
+ ## Precedents
211
+
212
+ | Tool | Description |
213
+ |---|---|
214
+ | `bighub_precedents_query` | Query similar past cases |
215
+ | `bighub_precedents_signals` | Aggregated precedent signals |
216
+ | `bighub_precedents_stats` | Precedent index statistics |
217
+
218
+ ---
219
+
220
+ ## Calibration
221
+
222
+ | Tool | Description |
223
+ |---|---|
224
+ | `bighub_calibration_report` | Calibration report |
225
+ | `bighub_calibration_reliability` | Reliability diagram data |
226
+ | `bighub_calibration_drift` | Calibration drift over time |
227
+ | `bighub_calibration_breakdown` | Breakdown by domain or tool |
228
+ | `bighub_calibration_feedback` | Calibration feedback signals |
229
+ | `bighub_calibration_observe` | Submit a calibration observation |
230
+ | `bighub_calibration_quality_history` | Daily quality score over time |
231
+
232
+ ---
233
+
234
+ ## Multi-signal retrieval
235
+
236
+ | Tool | Description |
237
+ |---|---|
238
+ | `bighub_retrieval_query` | Multi-signal precedent retrieval |
239
+ | `bighub_retrieval_query_explained` | Retrieval with explanation trace |
240
+ | `bighub_retrieval_strategies` | List available strategies |
241
+ | `bighub_retrieval_strategy` | Get one strategy's details |
242
+ | `bighub_retrieval_index_case` | Manually index a case |
243
+ | `bighub_retrieval_compare` | Compare two strategies |
244
+ | `bighub_retrieval_stats` | Retrieval index statistics |
245
+
246
+ ---
247
+
248
+ ## Insights
249
+
250
+ | Tool | Description |
251
+ |---|---|
252
+ | `bighub_insights_advise` | Learned advisories for an action |
253
+ | `bighub_insights_patterns` | Discovered risk patterns |
254
+ | `bighub_insights_learn` | Learning refresh |
255
+ | `bighub_insights_profile` | Action/tool profile |
256
+
257
+ ---
258
+
259
+ ## Simulations
260
+
261
+ | Tool | Description |
262
+ |---|---|
263
+ | `bighub_simulations_list` | List simulation snapshots |
264
+ | `bighub_simulations_get` | Get a snapshot |
265
+ | `bighub_simulations_by_request` | Get snapshot by request |
266
+ | `bighub_simulations_compare` | Compare predicted vs actual |
267
+ | `bighub_simulations_accuracy` | Domain-level accuracy |
268
+ | `bighub_simulations_stats` | Simulation statistics |
269
+
270
+ ---
271
+
272
+ ## Learning
273
+
274
+ | Tool | Description |
275
+ |---|---|
276
+ | `bighub_learning_strategy` | Current learning strategy |
277
+ | `bighub_learning_runs` | Recent learning runs |
278
+ | `bighub_learning_recompute` | Trigger learning recomputation |
279
+ | `bighub_learning_backfill` | Backfill learning artifacts |
280
+
281
+ ---
282
+
283
+ ## Features
284
+
285
+ | Tool | Description |
286
+ |---|---|
287
+ | `bighub_features_compute` | Compute features for an action |
288
+ | `bighub_features_compute_batch` | Batch feature computation |
289
+ | `bighub_features_snapshot` | Create a feature snapshot |
290
+ | `bighub_features_get_snapshot` | Get a snapshot |
291
+ | `bighub_features_list_snapshots` | List snapshots |
292
+ | `bighub_features_explain` | Explain features for a case |
293
+ | `bighub_features_export` | Export features for a case |
294
+ | `bighub_features_export_batch` | Batch export |
295
+ | `bighub_features_compare` | Compare feature sets |
296
+ | `bighub_features_schema` | Feature schema |
297
+ | `bighub_features_stats` | Feature statistics |
298
+
299
+ ---
300
+
301
+ ## Runtime ingestion
302
+
303
+ | Tool | Description |
304
+ |---|---|
305
+ | `bighub_ingest_event` | Ingest a single event |
306
+ | `bighub_ingest_batch` | Ingest events in batch |
307
+ | `bighub_ingest_reconcile` | Reconcile outcome with event |
308
+ | `bighub_ingest_lifecycles` | List event lifecycles |
309
+ | `bighub_ingest_lifecycle` | Get lifecycle for one event |
310
+ | `bighub_ingest_pending` | Events pending reconciliation |
311
+ | `bighub_ingest_stale` | Stale unreconciled events |
312
+ | `bighub_ingest_stats` | Ingestion statistics |
313
+ | `bighub_ingest_adapters` | List available adapters |
314
+
315
+ ---
316
+
317
+ ## Operating constraints
318
+
319
+ | Tool | Description |
320
+ |---|---|
321
+ | `bighub_constraints_create` | Create a constraint |
322
+ | `bighub_constraints_list` | List constraints |
323
+ | `bighub_constraints_get` | Get a constraint |
324
+ | `bighub_constraints_update` | Update a constraint |
325
+ | `bighub_constraints_delete` | Delete a constraint |
326
+ | `bighub_constraints_pause` | Pause a constraint |
327
+ | `bighub_constraints_resume` | Resume a constraint |
328
+ | `bighub_constraints_dry_run` | Preview without persisting |
329
+ | `bighub_constraints_validate` | Validate an action against constraints |
330
+ | `bighub_constraints_validate_dry_run` | Validate (dry run) |
331
+ | `bighub_constraints_domains` | List domains with constraints |
332
+ | `bighub_constraints_versions` | Constraint version history |
333
+ | `bighub_constraints_apply_patch` | Apply a JSON Patch |
334
+ | `bighub_constraints_purge_idempotency` | Admin: purge idempotency keys |
335
+
336
+ ---
337
+
338
+ ## Approvals & kill switch
339
+
340
+ | Tool | Description |
341
+ |---|---|
342
+ | `bighub_approvals_list` | List approval requests |
343
+ | `bighub_approvals_resolve` | Resolve an approval |
344
+ | `bighub_kill_switch_status` | Kill switch status |
345
+ | `bighub_kill_switch_activate` | Activate kill switch |
346
+ | `bighub_kill_switch_deactivate` | Deactivate kill switch |
347
+
348
+ ---
349
+
350
+ ## Events
351
+
352
+ | Tool | Description |
353
+ |---|---|
354
+ | `bighub_events_list` | Query event stream |
355
+ | `bighub_events_stats` | Event statistics |
356
+
357
+ ---
358
+
359
+ ## Webhooks
360
+
361
+ | Tool | Description |
362
+ |---|---|
363
+ | `bighub_webhooks_create` | Create a webhook |
364
+ | `bighub_webhooks_list` | List webhooks |
365
+ | `bighub_webhooks_get` | Get a webhook |
366
+ | `bighub_webhooks_update` | Update a webhook |
367
+ | `bighub_webhooks_delete` | Delete a webhook |
368
+ | `bighub_webhooks_deliveries` | List deliveries |
369
+ | `bighub_webhooks_test` | Send a test delivery |
370
+ | `bighub_webhooks_list_events` | List subscribable event types |
371
+ | `bighub_webhooks_verify_signature` | Verify webhook signature |
372
+ | `bighub_webhooks_replay_failed_delivery` | Replay a failed delivery |
373
+
374
+ ---
84
375
 
85
- *One of `BIGHUB_API_KEY` or `BIGHUB_BEARER_TOKEN` is required.
376
+ ## API keys
377
+
378
+ | Tool | Description |
379
+ |---|---|
380
+ | `bighub_api_keys_create` | Create an API key |
381
+ | `bighub_api_keys_list` | List API keys |
382
+ | `bighub_api_keys_delete` | Delete an API key |
383
+ | `bighub_api_keys_rotate` | Rotate an API key |
384
+ | `bighub_api_keys_validate` | Validate an API key |
385
+ | `bighub_api_keys_scopes` | List available scopes |
386
+
387
+ ---
388
+
389
+ ## Auth
390
+
391
+ | Tool | Description |
392
+ |---|---|
393
+ | `bighub_auth_signup` | Create an account |
394
+ | `bighub_auth_login` | Log in |
395
+ | `bighub_auth_refresh` | Refresh token |
396
+ | `bighub_auth_logout` | Log out |
397
+
398
+ ---
399
+
400
+ ## Utility
401
+
402
+ | Tool | Description |
403
+ |---|---|
404
+ | `bighub_http_request` | Generic HTTP passthrough |
86
405
 
87
406
  ---
88
407
 
89
- ## Tool coverage
408
+ ## Environment Variables
90
409
 
91
- 35+ MCP tools mapping one-to-one to BIGHUB API endpoints:
410
+ | Variable | Required | Default | Description |
411
+ |---|---|---|---|
412
+ | `BIGHUB_API_KEY` | Yes* | - | API key auth |
413
+ | `BIGHUB_BEARER_TOKEN` | No | - | Alternative bearer auth |
414
+ | `BIGHUB_BASE_URL` | No | `https://api.bighub.io` | API base URL |
415
+ | `BIGHUB_TIMEOUT_MS` | No | `15000` | Request timeout |
416
+ | `BIGHUB_MAX_RETRIES` | No | `2` | Retries on transient failures |
417
+ | `BIGHUB_ALLOW_INSECURE_HTTP` | No | - | Allow HTTP for local/private testing |
92
418
 
93
- | Domain | Tools | Description |
94
- |--------|-------|-------------|
95
- | **Actions** | submit, submit_v2, dry_run, status, verify, stats, dashboard_summary | Simulate, score, and enforce agent actions before execution. |
96
- | **Future Memory** | ingest, context, refresh_aggregates, recommendations | Ingest decisions, query learned patterns, surface self-improving policy recommendations. |
97
- | **Rules** | create, list, get, update, delete, pause, resume, validate, dry_run, versions, domains, apply_patch, purge_idempotency | Define and manage execution policies that improve over time. |
98
- | **Approvals** | list, resolve | Human-in-the-loop approval workflows. |
99
- | **Kill switch** | status, activate, deactivate | Emergency stop for all agent execution. |
100
- | **Events** | list, stats | Audit trail for scored decisions. |
101
- | **API keys** | create, list, delete, rotate, validate, scopes | Manage authentication credentials. |
102
- | **Webhooks** | create, list, get, update, delete, deliveries, test, list_events, verify_signature, replay | Export decision events to external systems. |
103
- | **Auth** | signup, login, refresh, logout | Account and session management. |
104
- | **Fallback** | `bighub_http_request` | Generic tool for any BIGHUB endpoint not yet wrapped. |
419
+ \* One of `BIGHUB_API_KEY` or `BIGHUB_BEARER_TOKEN` is required.
420
+
421
+ Management tools (API keys, webhooks, auth) require user JWT auth via `BIGHUB_BEARER_TOKEN`.
105
422
 
106
423
  ---
107
424
 
108
- ## Reliability
425
+ ## Free BETA
426
+
427
+ Current Free BETA limits:
109
428
 
110
- - Retries with exponential backoff and jitter for transient errors (429, 5xx, network)
111
- - Configurable timeout per request
112
- - Structured error metadata preserved from API responses
113
- - HTTPS enforced by default (override for local testing only)
429
+ - 3 agents
430
+ - 2,500 actions / month
431
+ - 30 days history
432
+ - 1 environment
114
433
 
115
434
  ---
116
435
 
117
- ## Local development
436
+ ## Local Development
118
437
 
119
438
  ```bash
120
439
  git clone https://github.com/bighub-io/bighub.git
121
440
  cd bighub/servers/mcp
122
441
  npm install
123
- npm run test # run tests with vitest
124
- npm run check # typecheck with tsc --noEmit
125
- npm run build # compile to dist/
126
- npm run start # run compiled server
127
- npm run dev # run with tsx (auto-reload)
442
+ npm run test
443
+ npm run check
444
+ npm run build
445
+ npm run start
446
+ npm run dev
128
447
  ```
129
448
 
130
449
  ---
@@ -132,10 +451,10 @@ npm run dev # run with tsx (auto-reload)
132
451
  ## Links
133
452
 
134
453
  - [bighub.io](https://bighub.io)
135
- - [GitHub bighub-io/bighub](https://github.com/bighub-io/bighub)
136
- - [npm @bighub/bighub-mcp](https://www.npmjs.com/package/@bighub/bighub-mcp)
137
- - [PyPI bighub (Python SDK)](https://pypi.org/project/bighub/)
138
- - [PyPI bighub-openai](https://pypi.org/project/bighub-openai/)
454
+ - [GitHub - bighub-io/bighub](https://github.com/bighub-io/bighub)
455
+ - [npm - @bighub/bighub-mcp](https://www.npmjs.com/package/@bighub/bighub-mcp)
456
+ - [PyPI - bighub (Python SDK)](https://pypi.org/project/bighub/)
457
+ - [PyPI - bighub-openai](https://pypi.org/project/bighub-openai/)
139
458
 
140
459
  ---
141
460
 
package/dist/index.js CHANGED
@@ -25,11 +25,11 @@ async function main() {
25
25
  bearerToken,
26
26
  timeoutMs: parseNumberEnv("BIGHUB_TIMEOUT_MS", 15000),
27
27
  maxRetries: parseNumberEnv("BIGHUB_MAX_RETRIES", 2),
28
- userAgent: "bighub-mcp/0.1.0",
28
+ userAgent: "bighub-mcp/0.2.1",
29
29
  });
30
30
  const server = new McpServer({
31
31
  name: "bighub-mcp",
32
- version: "0.1.0",
32
+ version: "0.2.1",
33
33
  });
34
34
  registerBighubTools(server, client);
35
35
  const transport = new StdioServerTransport();