@emilia-protocol/mcp-server 1.0.1 → 1.0.3
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/index.js +33 -18
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -60,6 +60,7 @@ import {
|
|
|
60
60
|
CallToolRequestSchema,
|
|
61
61
|
ListToolsRequestSchema,
|
|
62
62
|
ListResourcesRequestSchema,
|
|
63
|
+
ListResourceTemplatesRequestSchema,
|
|
63
64
|
ReadResourceRequestSchema,
|
|
64
65
|
ListPromptsRequestSchema,
|
|
65
66
|
GetPromptRequestSchema,
|
|
@@ -247,7 +248,7 @@ const TOOLS = [
|
|
|
247
248
|
type: 'object',
|
|
248
249
|
properties: {
|
|
249
250
|
query: { type: 'string', description: 'Search query' },
|
|
250
|
-
entity_type: { type: 'string', enum: ['agent','merchant','service_provider','github_app','github_action','mcp_server','npm_package','chrome_extension','shopify_app','marketplace_plugin','agent_tool'] },
|
|
251
|
+
entity_type: { type: 'string', description: 'Optional filter — restrict results to a single entity type.', enum: ['agent','merchant','service_provider','github_app','github_action','mcp_server','npm_package','chrome_extension','shopify_app','marketplace_plugin','agent_tool'] },
|
|
251
252
|
},
|
|
252
253
|
required: ['query'],
|
|
253
254
|
},
|
|
@@ -277,11 +278,11 @@ const TOOLS = [
|
|
|
277
278
|
inputSchema: {
|
|
278
279
|
type: 'object',
|
|
279
280
|
properties: {
|
|
280
|
-
entity_id: { type: 'string', description: '
|
|
281
|
-
display_name: { type: 'string' },
|
|
282
|
-
entity_type: { type: 'string', enum: ['agent','merchant','service_provider','github_app','github_action','mcp_server','npm_package','chrome_extension','shopify_app','marketplace_plugin','agent_tool'] },
|
|
283
|
-
description: { type: 'string' },
|
|
284
|
-
capabilities: { type: 'array', items: { type: 'string' } },
|
|
281
|
+
entity_id: { type: 'string', description: 'Unique slug for the entity (lowercase, hyphens), e.g. "acme-treasury-agent". Becomes its permanent id.' },
|
|
282
|
+
display_name: { type: 'string', description: 'Human-readable name shown in trust profiles and receipts, e.g. "Acme Treasury Agent".' },
|
|
283
|
+
entity_type: { type: 'string', description: 'What kind of actor this is — determines which trust policies apply.', enum: ['agent','merchant','service_provider','github_app','github_action','mcp_server','npm_package','chrome_extension','shopify_app','marketplace_plugin','agent_tool'] },
|
|
284
|
+
description: { type: 'string', description: 'One or two sentences on what the entity does; used for discovery and capability matching.' },
|
|
285
|
+
capabilities: { type: 'array', items: { type: 'string' }, description: 'Optional list of capability tags, e.g. ["payments","kyc"], used by ep_search_entities.' },
|
|
285
286
|
},
|
|
286
287
|
required: ['entity_id', 'display_name', 'entity_type', 'description'],
|
|
287
288
|
},
|
|
@@ -297,7 +298,7 @@ const TOOLS = [
|
|
|
297
298
|
type: 'object',
|
|
298
299
|
properties: {
|
|
299
300
|
limit: { type: 'number', description: 'Max entities (default 10, max 50)' },
|
|
300
|
-
entity_type: { type: 'string', enum: ['agent','merchant','service_provider','github_app','github_action','mcp_server','npm_package','chrome_extension','shopify_app','marketplace_plugin','agent_tool'] },
|
|
301
|
+
entity_type: { type: 'string', description: 'Optional filter — restrict results to a single entity type.', enum: ['agent','merchant','service_provider','github_app','github_action','mcp_server','npm_package','chrome_extension','shopify_app','marketplace_plugin','agent_tool'] },
|
|
301
302
|
},
|
|
302
303
|
},
|
|
303
304
|
},
|
|
@@ -426,9 +427,11 @@ const TOOLS = [
|
|
|
426
427
|
{
|
|
427
428
|
name: 'ep_create_delegation',
|
|
428
429
|
description:
|
|
429
|
-
'Create a delegation record:
|
|
430
|
-
'
|
|
431
|
-
'
|
|
430
|
+
'Create a delegation record. WRITE: persists to the EP ledger that a human or ' +
|
|
431
|
+
'principal authorizes an agent to act on their behalf, with scope, expiry, and ' +
|
|
432
|
+
'optional constraints. Requires auth. Returns a delegation_id that later actions ' +
|
|
433
|
+
'reference (via ep_verify_delegation) to prove authorization. Use when a principal ' +
|
|
434
|
+
'grants an agent standing authority for a bounded set of actions.',
|
|
432
435
|
inputSchema: {
|
|
433
436
|
type: 'object',
|
|
434
437
|
properties: {
|
|
@@ -674,8 +677,10 @@ const TOOLS = [
|
|
|
674
677
|
{
|
|
675
678
|
name: 'ep_verify_commit',
|
|
676
679
|
description:
|
|
677
|
-
'Verify a commit
|
|
678
|
-
'
|
|
680
|
+
'Verify a pre-action commit — read-only, no side effects. Checks its signature, ' +
|
|
681
|
+
'status, and validity and returns valid/invalid plus the current status, decision, ' +
|
|
682
|
+
'and expiry. Use before relying on or consuming a commit to confirm it is genuine ' +
|
|
683
|
+
'and still active.',
|
|
679
684
|
inputSchema: {
|
|
680
685
|
type: 'object',
|
|
681
686
|
properties: {
|
|
@@ -762,9 +767,11 @@ const TOOLS = [
|
|
|
762
767
|
{
|
|
763
768
|
name: 'ep_add_presentation',
|
|
764
769
|
description:
|
|
765
|
-
'Add an identity presentation (proof) to an active handshake. ' +
|
|
766
|
-
'
|
|
767
|
-
'
|
|
770
|
+
'Add an identity presentation (proof) to an active handshake. WRITE: appends ' +
|
|
771
|
+
'the party\'s identity claims to the handshake for evaluation against its policy; ' +
|
|
772
|
+
'supports full, selective, or zero-knowledge disclosure. Requires auth. Returns ' +
|
|
773
|
+
'the updated presentation count and handshake state. Call after ' +
|
|
774
|
+
'ep_initiate_handshake and before ep_verify_handshake.',
|
|
768
775
|
inputSchema: {
|
|
769
776
|
type: 'object',
|
|
770
777
|
properties: {
|
|
@@ -781,9 +788,11 @@ const TOOLS = [
|
|
|
781
788
|
{
|
|
782
789
|
name: 'ep_verify_handshake',
|
|
783
790
|
description:
|
|
784
|
-
'Evaluate all presentations in a handshake against
|
|
785
|
-
'Returns
|
|
786
|
-
'
|
|
791
|
+
'Evaluate all presentations in a handshake against its governing policy — read-only, ' +
|
|
792
|
+
'no mutation. Returns accepted (all requirements met), rejected (policy violations), ' +
|
|
793
|
+
'or partial (awaiting presentations), each with reason_codes explaining the outcome. ' +
|
|
794
|
+
'Call after the parties have added their presentations to decide whether the ' +
|
|
795
|
+
'handshake clears.',
|
|
787
796
|
inputSchema: {
|
|
788
797
|
type: 'object',
|
|
789
798
|
properties: {
|
|
@@ -1612,6 +1621,12 @@ const RESOURCES = [
|
|
|
1612
1621
|
|
|
1613
1622
|
server.setRequestHandler(ListResourcesRequestSchema, async () => ({ resources: RESOURCES }));
|
|
1614
1623
|
|
|
1624
|
+
// Clients (Claude included) probe resources/templates/list on startup whenever
|
|
1625
|
+
// a server advertises the `resources` capability. We expose no URI templates,
|
|
1626
|
+
// but the method must exist — without it the client gets MCP -32601
|
|
1627
|
+
// "Method not found" on every connect.
|
|
1628
|
+
server.setRequestHandler(ListResourceTemplatesRequestSchema, async () => ({ resourceTemplates: [] }));
|
|
1629
|
+
|
|
1615
1630
|
server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
|
|
1616
1631
|
const { uri } = request.params;
|
|
1617
1632
|
let data;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@emilia-protocol/mcp-server",
|
|
3
3
|
"mcpName": "io.github.emiliaprotocol/mcp-server",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.3",
|
|
5
5
|
"description": "EMILIA Protocol MCP Server — trust enforcement for high-risk actions via MCP. Pre-action binding, policy-bound verification, and accountable human signoff.",
|
|
6
6
|
"main": "index.js",
|
|
7
7
|
"type": "module",
|