@vorionsys/mcp-server 0.1.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 ADDED
@@ -0,0 +1,161 @@
1
+ # @vorionsys/mcp-server
2
+
3
+ MCP (Model Context Protocol) server for Vorion AI governance. Puts trust scoring, proof logging, and tier lookup directly into AI agent workflows.
4
+
5
+ **Stage 2 of the Vorion GTM flywheel:** SDK (done) -> MCP server (this) -> hosted API -> standards.
6
+
7
+ ## Quick Start
8
+
9
+ ### Usage with Claude Desktop
10
+
11
+ Add to your `claude_desktop_config.json`:
12
+
13
+ ```json
14
+ {
15
+ "mcpServers": {
16
+ "vorion": {
17
+ "command": "npx",
18
+ "args": ["@vorionsys/mcp-server"]
19
+ }
20
+ }
21
+ }
22
+ ```
23
+
24
+ ### Usage with Cursor
25
+
26
+ Add to your Cursor MCP settings:
27
+
28
+ ```json
29
+ {
30
+ "mcpServers": {
31
+ "vorion": {
32
+ "command": "npx",
33
+ "args": ["@vorionsys/mcp-server"]
34
+ }
35
+ }
36
+ }
37
+ ```
38
+
39
+ ### Usage with any MCP-compatible client
40
+
41
+ ```bash
42
+ npx @vorionsys/mcp-server
43
+ ```
44
+
45
+ The server communicates over stdio using the MCP protocol.
46
+
47
+ ## Tools
48
+
49
+ ### `vorion_check_trust`
50
+
51
+ Look up an agent's current trust score and tier.
52
+
53
+ ```json
54
+ {
55
+ "agentId": "my-agent-123"
56
+ }
57
+ ```
58
+
59
+ Returns: `{ score, tier, tierName, observationTier, capabilities }`
60
+
61
+ ### `vorion_record_signal`
62
+
63
+ Record a behavioral signal (positive or negative) for an agent.
64
+
65
+ ```json
66
+ {
67
+ "agentId": "my-agent-123",
68
+ "type": "behavioral.success",
69
+ "value": 0.8
70
+ }
71
+ ```
72
+
73
+ Signal types:
74
+ - `behavioral.success` — Agent completed a task successfully
75
+ - `behavioral.failure` — Agent failed a task
76
+ - `compliance.pass` — Agent passed a compliance check
77
+ - `compliance.fail` — Agent failed a compliance check
78
+
79
+ Returns: `{ oldScore, newScore, scoreDelta, tierChange }`
80
+
81
+ ### `vorion_gate_action`
82
+
83
+ Pre-flight check: can this agent perform this action?
84
+
85
+ ```json
86
+ {
87
+ "agentId": "my-agent-123",
88
+ "action": "write:database",
89
+ "requiredTier": 4
90
+ }
91
+ ```
92
+
93
+ Returns: `{ allowed, agentTier, requiredTier, reason }`
94
+
95
+ ### `vorion_log_proof`
96
+
97
+ Log a governance decision to the immutable proof chain.
98
+
99
+ ```json
100
+ {
101
+ "agentId": "my-agent-123",
102
+ "action": "deploy:production",
103
+ "decision": "DENY",
104
+ "reason": "Agent trust score below deployment threshold"
105
+ }
106
+ ```
107
+
108
+ Returns: `{ proofHash, eventId, chainLength, timestamp }`
109
+
110
+ ## Resources
111
+
112
+ ### `vorion://tiers`
113
+
114
+ The complete BASIS 8-tier trust model:
115
+ - T0 Sandbox (0-199) through T7 Autonomous (951-1000)
116
+ - Score ranges, capabilities, penalty multipliers
117
+ - Penalty formula: P(T) = 3 + T
118
+
119
+ ### `vorion://agents/{agentId}/trust`
120
+
121
+ Current trust profile for a specific agent, including action history.
122
+
123
+ ## Architecture
124
+
125
+ The MCP server runs the Vorion SDK in **local mode** — fully self-contained, no external API or database required. Trust scores are maintained in-memory for the duration of the server process.
126
+
127
+ For persistent trust scoring backed by a database, configure the SDK in remote mode by setting:
128
+ - `VORION_API_ENDPOINT` — URL of the Cognigate API
129
+ - `VORION_API_KEY` — API key for authentication
130
+
131
+ ## Trust Model
132
+
133
+ The server implements the BASIS (Baseline Authority for Safe & Interoperable Systems) 8-tier trust model:
134
+
135
+ | Tier | Name | Score | Penalty |
136
+ |------|-------------|---------|---------|
137
+ | T0 | Sandbox | 0-199 | 3x |
138
+ | T1 | Observed | 200-349 | 4x |
139
+ | T2 | Provisional | 350-499 | 5x |
140
+ | T3 | Monitored | 500-649 | 6x |
141
+ | T4 | Standard | 650-799 | 7x |
142
+ | T5 | Trusted | 800-875 | 8x |
143
+ | T6 | Certified | 876-950 | 9x |
144
+ | T7 | Autonomous | 951-1000| 10x |
145
+
146
+ ## Development
147
+
148
+ ```bash
149
+ # Build
150
+ npm run build
151
+
152
+ # Run in dev mode
153
+ npm run dev
154
+
155
+ # Type check
156
+ npm run typecheck
157
+ ```
158
+
159
+ ## License
160
+
161
+ Apache-2.0 — Vorion LLC
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,282 @@
1
+ #!/usr/bin/env node
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ // Copyright 2024-2026 Vorion LLC
4
+ /**
5
+ * @vorionsys/mcp-server — Vorion Governance MCP Server
6
+ *
7
+ * Exposes Vorion trust scoring, proof logging, and tier lookup
8
+ * to AI agents via the Model Context Protocol (MCP).
9
+ *
10
+ * Stage 2 of the Vorion GTM flywheel:
11
+ * SDK (done) -> MCP server (this) -> hosted API -> standards
12
+ *
13
+ * Usage with Claude Desktop:
14
+ * Add to claude_desktop_config.json:
15
+ * {
16
+ * "mcpServers": {
17
+ * "vorion": {
18
+ * "command": "npx",
19
+ * "args": ["@vorionsys/mcp-server"]
20
+ * }
21
+ * }
22
+ * }
23
+ *
24
+ * @packageDocumentation
25
+ */
26
+ import * as crypto from 'node:crypto';
27
+ import { McpServer, ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js';
28
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
29
+ import { z } from 'zod';
30
+ import { Vorion } from '@vorionsys/sdk';
31
+ import { createProofPlane } from '@vorionsys/proof-plane';
32
+ import { TOOL_DEFINITIONS, TIER_TABLE } from './tools.js';
33
+ // ---------------------------------------------------------------------------
34
+ // Globals — single Vorion SDK instance in local mode + proof plane
35
+ // ---------------------------------------------------------------------------
36
+ const vorion = new Vorion({ localMode: true });
37
+ const proofPlane = createProofPlane({
38
+ signedBy: 'vorion-mcp-server',
39
+ enableSignatures: false, // Local mode — no key needed
40
+ environment: 'development',
41
+ });
42
+ // ---------------------------------------------------------------------------
43
+ // Helper: ensure agent exists (auto-register on first use)
44
+ // ---------------------------------------------------------------------------
45
+ async function ensureAgent(agentId) {
46
+ let agent = vorion.getAgent(agentId);
47
+ if (!agent) {
48
+ agent = await vorion.registerAgent({
49
+ agentId,
50
+ name: agentId,
51
+ capabilities: ['*'], // MCP agents get full capabilities in local mode
52
+ observationTier: 'GRAY_BOX',
53
+ });
54
+ }
55
+ return agent;
56
+ }
57
+ // ---------------------------------------------------------------------------
58
+ // Tier name helper (matches SDK's internal mapping)
59
+ // ---------------------------------------------------------------------------
60
+ function tierNumberToName(tier) {
61
+ const names = [
62
+ 'Sandbox', // T0
63
+ 'Observed', // T1
64
+ 'Provisional', // T2
65
+ 'Monitored', // T3
66
+ 'Standard', // T4
67
+ 'Trusted', // T5
68
+ 'Certified', // T6
69
+ 'Autonomous', // T7
70
+ ];
71
+ return names[tier] ?? 'Unknown';
72
+ }
73
+ // ---------------------------------------------------------------------------
74
+ // Create MCP Server
75
+ // ---------------------------------------------------------------------------
76
+ const server = new McpServer({
77
+ name: 'vorion',
78
+ version: '0.1.0',
79
+ });
80
+ // ---------------------------------------------------------------------------
81
+ // Tool: vorion_check_trust
82
+ // ---------------------------------------------------------------------------
83
+ server.tool(TOOL_DEFINITIONS.vorion_check_trust.name, TOOL_DEFINITIONS.vorion_check_trust.description, {
84
+ agentId: z.string().describe('Unique identifier of the agent to look up'),
85
+ }, async ({ agentId }) => {
86
+ const agent = await ensureAgent(agentId);
87
+ const info = await agent.getTrustInfo();
88
+ return {
89
+ content: [
90
+ {
91
+ type: 'text',
92
+ text: JSON.stringify({
93
+ agentId,
94
+ score: info.score,
95
+ tier: info.tierNumber,
96
+ tierName: info.tierName,
97
+ observationTier: info.observationTier,
98
+ capabilities: agent.getCapabilities(),
99
+ }, null, 2),
100
+ },
101
+ ],
102
+ };
103
+ });
104
+ // ---------------------------------------------------------------------------
105
+ // Tool: vorion_record_signal
106
+ // ---------------------------------------------------------------------------
107
+ server.tool(TOOL_DEFINITIONS.vorion_record_signal.name, TOOL_DEFINITIONS.vorion_record_signal.description, {
108
+ agentId: z.string().describe('Unique identifier of the agent'),
109
+ type: z.enum([
110
+ 'behavioral.success',
111
+ 'behavioral.failure',
112
+ 'compliance.pass',
113
+ 'compliance.fail',
114
+ ]).describe('Type of behavioral signal to record'),
115
+ value: z.number().describe('Signal strength from 0.0 to 1.0'),
116
+ }, async ({ agentId, type, value }) => {
117
+ const agent = await ensureAgent(agentId);
118
+ const beforeInfo = await agent.getTrustInfo();
119
+ const oldScore = beforeInfo.score;
120
+ const oldTier = beforeInfo.tierNumber;
121
+ // Map signal type to SDK methods
122
+ const isPositive = type === 'behavioral.success' || type === 'compliance.pass';
123
+ if (isPositive) {
124
+ await agent.reportSuccess(type);
125
+ }
126
+ else {
127
+ await agent.reportFailure(type, `Signal value: ${value}`);
128
+ }
129
+ const afterInfo = await agent.getTrustInfo();
130
+ return {
131
+ content: [
132
+ {
133
+ type: 'text',
134
+ text: JSON.stringify({
135
+ agentId,
136
+ signalType: type,
137
+ signalValue: value,
138
+ oldScore,
139
+ newScore: afterInfo.score,
140
+ scoreDelta: afterInfo.score - oldScore,
141
+ oldTier: oldTier,
142
+ newTier: afterInfo.tierNumber,
143
+ tierChange: afterInfo.tierNumber !== oldTier
144
+ ? `${tierNumberToName(oldTier)} -> ${tierNumberToName(afterInfo.tierNumber)}`
145
+ : null,
146
+ }, null, 2),
147
+ },
148
+ ],
149
+ };
150
+ });
151
+ // ---------------------------------------------------------------------------
152
+ // Tool: vorion_gate_action
153
+ // ---------------------------------------------------------------------------
154
+ server.tool(TOOL_DEFINITIONS.vorion_gate_action.name, TOOL_DEFINITIONS.vorion_gate_action.description, {
155
+ agentId: z.string().describe('Unique identifier of the agent requesting the action'),
156
+ action: z.string().describe('The action the agent wants to perform'),
157
+ requiredTier: z.number().describe('Minimum trust tier (0-7) required for this action'),
158
+ }, async ({ agentId, action, requiredTier }) => {
159
+ const agent = await ensureAgent(agentId);
160
+ const info = await agent.getTrustInfo();
161
+ const agentTier = info.tierNumber;
162
+ const allowed = agentTier >= requiredTier;
163
+ const reason = allowed
164
+ ? `Agent is T${agentTier} (${info.tierName}), meets T${requiredTier} (${tierNumberToName(requiredTier)}) requirement`
165
+ : `Agent is T${agentTier} (${info.tierName}), below T${requiredTier} (${tierNumberToName(requiredTier)}) requirement`;
166
+ return {
167
+ content: [
168
+ {
169
+ type: 'text',
170
+ text: JSON.stringify({
171
+ allowed,
172
+ agentId,
173
+ action,
174
+ agentTier,
175
+ agentTierName: info.tierName,
176
+ requiredTier,
177
+ requiredTierName: tierNumberToName(requiredTier),
178
+ reason,
179
+ score: info.score,
180
+ }, null, 2),
181
+ },
182
+ ],
183
+ };
184
+ });
185
+ // ---------------------------------------------------------------------------
186
+ // Tool: vorion_log_proof
187
+ // ---------------------------------------------------------------------------
188
+ server.tool(TOOL_DEFINITIONS.vorion_log_proof.name, TOOL_DEFINITIONS.vorion_log_proof.description, {
189
+ agentId: z.string().describe('Unique identifier of the agent involved in the decision'),
190
+ action: z.string().describe('The action that was evaluated'),
191
+ decision: z.enum(['ALLOW', 'DENY']).describe('Whether the action was allowed or denied'),
192
+ reason: z.string().describe('Human-readable explanation for the decision'),
193
+ }, async ({ agentId, action, decision, reason }) => {
194
+ const correlationId = crypto.randomUUID();
195
+ const decisionId = crypto.randomUUID();
196
+ const agent = await ensureAgent(agentId);
197
+ const info = await agent.getTrustInfo();
198
+ const result = await proofPlane.logEvent('decision_made', correlationId, {
199
+ type: 'decision_made',
200
+ decisionId,
201
+ intentId: correlationId,
202
+ permitted: decision === 'ALLOW',
203
+ trustBand: info.tierName,
204
+ trustScore: info.score,
205
+ reasoning: [reason],
206
+ }, agentId);
207
+ const stats = await proofPlane.getStats();
208
+ const event = result.event;
209
+ return {
210
+ content: [
211
+ {
212
+ type: 'text',
213
+ text: JSON.stringify({
214
+ agentId,
215
+ action,
216
+ decision,
217
+ reason,
218
+ proofHash: event.hash ?? event.eventId,
219
+ eventId: event.eventId,
220
+ chainLength: stats.totalEvents,
221
+ timestamp: event.timestamp ?? new Date().toISOString(),
222
+ }, null, 2),
223
+ },
224
+ ],
225
+ };
226
+ });
227
+ // ---------------------------------------------------------------------------
228
+ // Resource: vorion_explain_tiers — the 8-tier trust model
229
+ // ---------------------------------------------------------------------------
230
+ server.resource('trust-tiers', 'vorion://tiers', {
231
+ description: 'The BASIS 8-tier trust model (T0 Sandbox through T7 Autonomous). ' +
232
+ 'Shows score ranges, capabilities, penalty multipliers, and the penalty formula P(T) = 3 + T.',
233
+ mimeType: 'application/json',
234
+ }, async () => ({
235
+ contents: [
236
+ {
237
+ uri: 'vorion://tiers',
238
+ mimeType: 'application/json',
239
+ text: JSON.stringify(TIER_TABLE, null, 2),
240
+ },
241
+ ],
242
+ }));
243
+ // ---------------------------------------------------------------------------
244
+ // Resource: agent trust profile (parameterized)
245
+ // ---------------------------------------------------------------------------
246
+ server.resource('agent-trust', new ResourceTemplate('vorion://agents/{agentId}/trust', { list: undefined }), {
247
+ description: 'Current trust information for a specific agent',
248
+ mimeType: 'application/json',
249
+ }, async (uri, { agentId }) => {
250
+ const id = Array.isArray(agentId) ? agentId[0] : agentId;
251
+ const agent = await ensureAgent(id);
252
+ const info = await agent.getTrustInfo();
253
+ return {
254
+ contents: [
255
+ {
256
+ uri: uri.href,
257
+ mimeType: 'application/json',
258
+ text: JSON.stringify({
259
+ agentId: id,
260
+ score: info.score,
261
+ tier: info.tierNumber,
262
+ tierName: info.tierName,
263
+ observationTier: info.observationTier,
264
+ capabilities: agent.getCapabilities(),
265
+ actionHistory: agent.getActionHistory(),
266
+ }, null, 2),
267
+ },
268
+ ],
269
+ };
270
+ });
271
+ // ---------------------------------------------------------------------------
272
+ // Start the server
273
+ // ---------------------------------------------------------------------------
274
+ async function main() {
275
+ const transport = new StdioServerTransport();
276
+ await server.connect(transport);
277
+ }
278
+ main().catch((error) => {
279
+ console.error('Fatal error starting Vorion MCP server:', error);
280
+ process.exit(1);
281
+ });
282
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * MCP Tool Definitions for Vorion Governance
3
+ *
4
+ * JSON Schema definitions for each tool exposed by the MCP server.
5
+ * These schemas are used by AI agents (Claude, GPT, Cursor, etc.)
6
+ * to understand what parameters each tool accepts.
7
+ */
8
+ export declare const TOOL_DEFINITIONS: {
9
+ readonly vorion_check_trust: {
10
+ readonly name: "vorion_check_trust";
11
+ readonly description: string;
12
+ readonly inputSchema: {
13
+ readonly type: "object";
14
+ readonly properties: {
15
+ readonly agentId: {
16
+ readonly type: "string";
17
+ readonly description: "Unique identifier of the agent to look up";
18
+ };
19
+ };
20
+ readonly required: readonly ["agentId"];
21
+ };
22
+ };
23
+ readonly vorion_record_signal: {
24
+ readonly name: "vorion_record_signal";
25
+ readonly description: string;
26
+ readonly inputSchema: {
27
+ readonly type: "object";
28
+ readonly properties: {
29
+ readonly agentId: {
30
+ readonly type: "string";
31
+ readonly description: "Unique identifier of the agent";
32
+ };
33
+ readonly type: {
34
+ readonly type: "string";
35
+ readonly enum: readonly ["behavioral.success", "behavioral.failure", "compliance.pass", "compliance.fail"];
36
+ readonly description: "Type of behavioral signal to record";
37
+ };
38
+ readonly value: {
39
+ readonly type: "number";
40
+ readonly minimum: 0;
41
+ readonly maximum: 1;
42
+ readonly description: string;
43
+ };
44
+ };
45
+ readonly required: readonly ["agentId", "type", "value"];
46
+ };
47
+ };
48
+ readonly vorion_gate_action: {
49
+ readonly name: "vorion_gate_action";
50
+ readonly description: string;
51
+ readonly inputSchema: {
52
+ readonly type: "object";
53
+ readonly properties: {
54
+ readonly agentId: {
55
+ readonly type: "string";
56
+ readonly description: "Unique identifier of the agent requesting the action";
57
+ };
58
+ readonly action: {
59
+ readonly type: "string";
60
+ readonly description: "The action the agent wants to perform (e.g., \"read:documents\", \"write:database\", \"execute:deploy\")";
61
+ };
62
+ readonly requiredTier: {
63
+ readonly type: "number";
64
+ readonly minimum: 0;
65
+ readonly maximum: 7;
66
+ readonly description: string;
67
+ };
68
+ };
69
+ readonly required: readonly ["agentId", "action", "requiredTier"];
70
+ };
71
+ };
72
+ readonly vorion_log_proof: {
73
+ readonly name: "vorion_log_proof";
74
+ readonly description: string;
75
+ readonly inputSchema: {
76
+ readonly type: "object";
77
+ readonly properties: {
78
+ readonly agentId: {
79
+ readonly type: "string";
80
+ readonly description: "Unique identifier of the agent involved in the decision";
81
+ };
82
+ readonly action: {
83
+ readonly type: "string";
84
+ readonly description: "The action that was evaluated (e.g., \"read:sensitive-data\")";
85
+ };
86
+ readonly decision: {
87
+ readonly type: "string";
88
+ readonly enum: readonly ["ALLOW", "DENY"];
89
+ readonly description: "Whether the action was allowed or denied";
90
+ };
91
+ readonly reason: {
92
+ readonly type: "string";
93
+ readonly description: "Human-readable explanation for the decision";
94
+ };
95
+ };
96
+ readonly required: readonly ["agentId", "action", "decision", "reason"];
97
+ };
98
+ };
99
+ };
100
+ /**
101
+ * Tier table for the vorion_explain_tiers resource
102
+ */
103
+ export declare const TIER_TABLE: {
104
+ tiers: {
105
+ tier: number;
106
+ name: string;
107
+ scoreRange: string;
108
+ description: string;
109
+ capabilities: string[];
110
+ penaltyMultiplier: string;
111
+ }[];
112
+ specification: string;
113
+ penaltyFormula: string;
114
+ initialScore: number;
115
+ scoreRange: string;
116
+ hysteresis: number[];
117
+ decayHalfLife: string;
118
+ };
119
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsHnB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;CAyEtB,CAAC"}
package/dist/tools.js ADDED
@@ -0,0 +1,196 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2024-2026 Vorion LLC
3
+ /**
4
+ * MCP Tool Definitions for Vorion Governance
5
+ *
6
+ * JSON Schema definitions for each tool exposed by the MCP server.
7
+ * These schemas are used by AI agents (Claude, GPT, Cursor, etc.)
8
+ * to understand what parameters each tool accepts.
9
+ */
10
+ export const TOOL_DEFINITIONS = {
11
+ vorion_check_trust: {
12
+ name: 'vorion_check_trust',
13
+ description: 'Look up an AI agent\'s current trust score and tier in the Vorion governance system. ' +
14
+ 'Returns the numeric score (0-1000), tier number (T0-T7), tier name, and observation tier. ' +
15
+ 'Use this to check how trusted an agent is before allowing it to perform sensitive actions.',
16
+ inputSchema: {
17
+ type: 'object',
18
+ properties: {
19
+ agentId: {
20
+ type: 'string',
21
+ description: 'Unique identifier of the agent to look up',
22
+ },
23
+ },
24
+ required: ['agentId'],
25
+ },
26
+ },
27
+ vorion_record_signal: {
28
+ name: 'vorion_record_signal',
29
+ description: 'Record a behavioral signal (positive or negative) for an AI agent. ' +
30
+ 'Positive signals (success, compliance pass) increase trust over time. ' +
31
+ 'Negative signals (failure, compliance fail) decrease trust — and higher-tier agents ' +
32
+ 'are penalized MORE severely per the BASIS penalty ratio P(T) = 3 + T.',
33
+ inputSchema: {
34
+ type: 'object',
35
+ properties: {
36
+ agentId: {
37
+ type: 'string',
38
+ description: 'Unique identifier of the agent',
39
+ },
40
+ type: {
41
+ type: 'string',
42
+ enum: [
43
+ 'behavioral.success',
44
+ 'behavioral.failure',
45
+ 'compliance.pass',
46
+ 'compliance.fail',
47
+ ],
48
+ description: 'Type of behavioral signal to record',
49
+ },
50
+ value: {
51
+ type: 'number',
52
+ minimum: 0,
53
+ maximum: 1,
54
+ description: 'Signal strength from 0.0 (weakest) to 1.0 (strongest). ' +
55
+ 'For success/pass signals, higher means better performance. ' +
56
+ 'For failure/fail signals, higher means worse violation.',
57
+ },
58
+ },
59
+ required: ['agentId', 'type', 'value'],
60
+ },
61
+ },
62
+ vorion_gate_action: {
63
+ name: 'vorion_gate_action',
64
+ description: 'Check if an AI agent is allowed to perform a specific action based on its current trust tier. ' +
65
+ 'Returns whether the action is allowed, the agent\'s current tier, the required tier, and a reason. ' +
66
+ 'Use this as a pre-flight check before executing sensitive operations.',
67
+ inputSchema: {
68
+ type: 'object',
69
+ properties: {
70
+ agentId: {
71
+ type: 'string',
72
+ description: 'Unique identifier of the agent requesting the action',
73
+ },
74
+ action: {
75
+ type: 'string',
76
+ description: 'The action the agent wants to perform (e.g., "read:documents", "write:database", "execute:deploy")',
77
+ },
78
+ requiredTier: {
79
+ type: 'number',
80
+ minimum: 0,
81
+ maximum: 7,
82
+ description: 'Minimum trust tier (0-7) required to perform this action. ' +
83
+ 'T0=Sandbox, T1=Observed, T2=Provisional, T3=Monitored, T4=Standard, T5=Trusted, T6=Certified, T7=Autonomous',
84
+ },
85
+ },
86
+ required: ['agentId', 'action', 'requiredTier'],
87
+ },
88
+ },
89
+ vorion_log_proof: {
90
+ name: 'vorion_log_proof',
91
+ description: 'Log a governance decision to the Vorion proof chain — an immutable, hash-linked audit trail. ' +
92
+ 'Every ALLOW or DENY decision is recorded with the agent ID, action, and reasoning. ' +
93
+ 'Returns a proof hash and the current chain length for verification.',
94
+ inputSchema: {
95
+ type: 'object',
96
+ properties: {
97
+ agentId: {
98
+ type: 'string',
99
+ description: 'Unique identifier of the agent involved in the decision',
100
+ },
101
+ action: {
102
+ type: 'string',
103
+ description: 'The action that was evaluated (e.g., "read:sensitive-data")',
104
+ },
105
+ decision: {
106
+ type: 'string',
107
+ enum: ['ALLOW', 'DENY'],
108
+ description: 'Whether the action was allowed or denied',
109
+ },
110
+ reason: {
111
+ type: 'string',
112
+ description: 'Human-readable explanation for the decision',
113
+ },
114
+ },
115
+ required: ['agentId', 'action', 'decision', 'reason'],
116
+ },
117
+ },
118
+ };
119
+ /**
120
+ * Tier table for the vorion_explain_tiers resource
121
+ */
122
+ export const TIER_TABLE = {
123
+ tiers: [
124
+ {
125
+ tier: 0,
126
+ name: 'Sandbox',
127
+ scoreRange: '0-199',
128
+ description: 'New/untrusted agent. All actions sandboxed with full audit logging.',
129
+ capabilities: ['rate_limit:10/min', 'audit:full', 'sandbox:true'],
130
+ penaltyMultiplier: '3x',
131
+ },
132
+ {
133
+ tier: 1,
134
+ name: 'Observed',
135
+ scoreRange: '200-349',
136
+ description: 'Agent under active observation. Limited autonomy with strict monitoring.',
137
+ capabilities: ['rate_limit:10/min', 'audit:full', 'sandbox:true'],
138
+ penaltyMultiplier: '4x',
139
+ },
140
+ {
141
+ tier: 2,
142
+ name: 'Provisional',
143
+ scoreRange: '350-499',
144
+ description: 'Probationary agent. Moderate access with standard monitoring.',
145
+ capabilities: ['rate_limit:100/min', 'audit:standard'],
146
+ penaltyMultiplier: '5x',
147
+ },
148
+ {
149
+ tier: 3,
150
+ name: 'Monitored',
151
+ scoreRange: '500-649',
152
+ description: 'Established agent with consistent behavior. BLACK_BOX ceiling (600).',
153
+ capabilities: ['rate_limit:100/min', 'audit:standard'],
154
+ penaltyMultiplier: '6x',
155
+ },
156
+ {
157
+ tier: 4,
158
+ name: 'Standard',
159
+ scoreRange: '650-799',
160
+ description: 'Reliable agent. Broad access with light monitoring.',
161
+ capabilities: ['rate_limit:1000/min', 'audit:light'],
162
+ penaltyMultiplier: '7x',
163
+ },
164
+ {
165
+ tier: 5,
166
+ name: 'Trusted',
167
+ scoreRange: '800-875',
168
+ description: 'Highly trusted agent. Minimal constraints.',
169
+ capabilities: ['rate_limit:1000/min', 'audit:light'],
170
+ penaltyMultiplier: '8x',
171
+ },
172
+ {
173
+ tier: 6,
174
+ name: 'Certified',
175
+ scoreRange: '876-950',
176
+ description: 'Certified agent with formal verification. Near-autonomous operation.',
177
+ capabilities: ['minimal_constraints'],
178
+ penaltyMultiplier: '9x',
179
+ },
180
+ {
181
+ tier: 7,
182
+ name: 'Autonomous',
183
+ scoreRange: '951-1000',
184
+ description: 'Fully autonomous agent. Self-governing with post-hoc audit only.',
185
+ capabilities: ['minimal_constraints'],
186
+ penaltyMultiplier: '10x',
187
+ },
188
+ ],
189
+ specification: 'BASIS (Baseline Authority for Safe & Interoperable Systems)',
190
+ penaltyFormula: 'P(T) = 3 + T — higher-tier agents are punished more severely for failures',
191
+ initialScore: 100,
192
+ scoreRange: '0-1000',
193
+ hysteresis: [25, 25, 20, 20, 15, 10, 10, 10],
194
+ decayHalfLife: '182 days',
195
+ };
196
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "@vorionsys/mcp-server",
3
+ "version": "0.1.0",
4
+ "description": "MCP server for Vorion AI governance — trust scoring, proof logging, and tier lookup",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "type": "module",
9
+ "main": "dist/index.js",
10
+ "types": "dist/index.d.ts",
11
+ "bin": {
12
+ "vorion-mcp": "./dist/index.js"
13
+ },
14
+ "exports": {
15
+ ".": {
16
+ "types": "./dist/index.d.ts",
17
+ "import": "./dist/index.js"
18
+ }
19
+ },
20
+ "files": [
21
+ "dist",
22
+ "README.md",
23
+ "LICENSE"
24
+ ],
25
+ "scripts": {
26
+ "build": "tsc",
27
+ "dev": "tsx src/index.ts",
28
+ "test": "vitest run",
29
+ "typecheck": "tsc --noEmit",
30
+ "clean": "rm -rf dist"
31
+ },
32
+ "dependencies": {
33
+ "@modelcontextprotocol/sdk": "^1.28.0",
34
+ "@vorionsys/sdk": "*",
35
+ "@vorionsys/proof-plane": "*",
36
+ "zod": "^3.23.0"
37
+ },
38
+ "devDependencies": {
39
+ "@types/node": "^22.10.5",
40
+ "typescript": "^5.7.2",
41
+ "tsx": "^4.0.0",
42
+ "vitest": "^4.0.18"
43
+ },
44
+ "keywords": [
45
+ "mcp",
46
+ "model-context-protocol",
47
+ "vorion",
48
+ "basis",
49
+ "ai",
50
+ "agent",
51
+ "governance",
52
+ "trust",
53
+ "safety"
54
+ ],
55
+ "author": "Vorion <team@vorion.org>",
56
+ "license": "Apache-2.0",
57
+ "repository": {
58
+ "type": "git",
59
+ "url": "git+https://github.com/vorionsys/vorion.git",
60
+ "directory": "packages/mcp-server"
61
+ },
62
+ "bugs": {
63
+ "url": "https://github.com/vorionsys/vorion/issues"
64
+ },
65
+ "homepage": "https://vorion.org",
66
+ "engines": {
67
+ "node": ">=20.0.0"
68
+ }
69
+ }