multi-agent-protocol 0.0.1 → 0.0.2

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.
@@ -0,0 +1,337 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "Multi-Agent Protocol Method Metadata",
4
+ "description": "Metadata for MAP protocol methods including tier, implementer, and capability requirements",
5
+ "protocolVersion": 1,
6
+ "methods": {
7
+ "map/connect": {
8
+ "tier": "core",
9
+ "implementedBy": "system",
10
+ "callableBy": ["client", "agent", "gateway"],
11
+ "capabilities": [],
12
+ "description": "Connect to the MAP system and negotiate capabilities",
13
+ "requestType": "ConnectRequest",
14
+ "responseType": "ConnectResponse"
15
+ },
16
+ "map/disconnect": {
17
+ "tier": "core",
18
+ "implementedBy": "system",
19
+ "callableBy": ["client", "agent", "gateway"],
20
+ "capabilities": [],
21
+ "description": "Gracefully disconnect from the MAP system",
22
+ "requestType": "DisconnectRequest",
23
+ "responseType": "DisconnectResponse"
24
+ },
25
+ "map/session/list": {
26
+ "tier": "core",
27
+ "implementedBy": "system",
28
+ "callableBy": ["client", "agent"],
29
+ "capabilities": [],
30
+ "description": "List participant's sessions",
31
+ "requestType": "SessionListRequest",
32
+ "responseType": "SessionListResponse"
33
+ },
34
+ "map/session/load": {
35
+ "tier": "core",
36
+ "implementedBy": "system",
37
+ "callableBy": ["client", "agent"],
38
+ "capabilities": [],
39
+ "description": "Load/reconnect to an existing session",
40
+ "requestType": "SessionLoadRequest",
41
+ "responseType": "SessionLoadResponse"
42
+ },
43
+ "map/session/close": {
44
+ "tier": "core",
45
+ "implementedBy": "system",
46
+ "callableBy": ["client", "agent"],
47
+ "capabilities": [],
48
+ "description": "Explicitly end a session",
49
+ "requestType": "SessionCloseRequest",
50
+ "responseType": "SessionCloseResponse"
51
+ },
52
+ "map/agents/list": {
53
+ "tier": "core",
54
+ "implementedBy": "system",
55
+ "callableBy": ["client", "agent", "gateway"],
56
+ "capabilities": ["observation.canQuery"],
57
+ "description": "List agents with optional filters (server-filtered by visibility)",
58
+ "requestType": "AgentsListRequest",
59
+ "responseType": "AgentsListResponse"
60
+ },
61
+ "map/agents/get": {
62
+ "tier": "core",
63
+ "implementedBy": "system",
64
+ "callableBy": ["client", "agent", "gateway"],
65
+ "capabilities": ["observation.canQuery"],
66
+ "description": "Get details for a single agent",
67
+ "requestType": "AgentsGetRequest",
68
+ "responseType": "AgentsGetResponse"
69
+ },
70
+ "map/send": {
71
+ "tier": "core",
72
+ "implementedBy": "system",
73
+ "callableBy": ["client", "agent"],
74
+ "capabilities": ["messaging.canSend"],
75
+ "description": "Send a message to an address",
76
+ "requestType": "SendRequest",
77
+ "responseType": "SendResponse"
78
+ },
79
+ "map/subscribe": {
80
+ "tier": "core",
81
+ "implementedBy": "system",
82
+ "callableBy": ["client", "agent", "gateway"],
83
+ "capabilities": ["observation.canObserve"],
84
+ "description": "Subscribe to event streams",
85
+ "requestType": "SubscribeRequest",
86
+ "responseType": "SubscribeResponse"
87
+ },
88
+ "map/unsubscribe": {
89
+ "tier": "core",
90
+ "implementedBy": "system",
91
+ "callableBy": ["client", "agent", "gateway"],
92
+ "capabilities": ["observation.canObserve"],
93
+ "description": "Unsubscribe from event streams",
94
+ "requestType": "UnsubscribeRequest",
95
+ "responseType": "UnsubscribeResponse"
96
+ },
97
+ "map/auth/refresh": {
98
+ "tier": "core",
99
+ "implementedBy": "system",
100
+ "callableBy": ["client", "agent", "gateway"],
101
+ "capabilities": [],
102
+ "description": "Refresh authentication token in-band",
103
+ "requestType": "AuthRefreshRequest",
104
+ "responseType": "AuthRefreshResponse"
105
+ },
106
+ "map/agents/register": {
107
+ "tier": "structure",
108
+ "implementedBy": "system",
109
+ "callableBy": ["agent", "system"],
110
+ "capabilities": ["lifecycle.canRegister"],
111
+ "description": "Register a new agent in the system",
112
+ "requestType": "AgentsRegisterRequest",
113
+ "responseType": "AgentsRegisterResponse"
114
+ },
115
+ "map/agents/spawn": {
116
+ "tier": "structure",
117
+ "implementedBy": "system",
118
+ "callableBy": ["agent", "system"],
119
+ "capabilities": ["lifecycle.canSpawn"],
120
+ "description": "Register agent and assign initial task atomically",
121
+ "requestType": "AgentsSpawnRequest",
122
+ "responseType": "AgentsSpawnResponse"
123
+ },
124
+ "map/agents/unregister": {
125
+ "tier": "structure",
126
+ "implementedBy": "system",
127
+ "callableBy": ["agent", "system"],
128
+ "capabilities": ["lifecycle.canUnregister"],
129
+ "description": "Remove an agent from the system",
130
+ "requestType": "AgentsUnregisterRequest",
131
+ "responseType": "AgentsUnregisterResponse"
132
+ },
133
+ "map/agents/update": {
134
+ "tier": "structure",
135
+ "implementedBy": "system",
136
+ "callableBy": ["agent", "system"],
137
+ "capabilities": [],
138
+ "description": "Update agent state or metadata (agents can update themselves)",
139
+ "requestType": "AgentsUpdateRequest",
140
+ "responseType": "AgentsUpdateResponse"
141
+ },
142
+ "map/agents/stop": {
143
+ "tier": "structure",
144
+ "implementedBy": "system",
145
+ "callableBy": ["client", "agent", "system"],
146
+ "capabilities": ["lifecycle.canStop"],
147
+ "description": "Request graceful agent stop",
148
+ "requestType": "AgentsStopRequest",
149
+ "responseType": "AgentsStopResponse"
150
+ },
151
+ "map/agents/suspend": {
152
+ "tier": "structure",
153
+ "implementedBy": "system",
154
+ "callableBy": ["client", "agent", "system"],
155
+ "capabilities": ["lifecycle.canStop"],
156
+ "description": "Pause an agent",
157
+ "requestType": "AgentsSuspendRequest",
158
+ "responseType": "AgentsSuspendResponse"
159
+ },
160
+ "map/agents/resume": {
161
+ "tier": "structure",
162
+ "implementedBy": "system",
163
+ "callableBy": ["client", "agent", "system"],
164
+ "capabilities": ["lifecycle.canStop"],
165
+ "description": "Resume a suspended agent",
166
+ "requestType": "AgentsResumeRequest",
167
+ "responseType": "AgentsResumeResponse"
168
+ },
169
+ "map/structure/graph": {
170
+ "tier": "structure",
171
+ "implementedBy": "system",
172
+ "callableBy": ["client", "agent"],
173
+ "capabilities": ["observation.canQuery"],
174
+ "description": "Get the agent relationship graph",
175
+ "requestType": "StructureGraphRequest",
176
+ "responseType": "StructureGraphResponse"
177
+ },
178
+ "map/scopes/list": {
179
+ "tier": "structure",
180
+ "implementedBy": "system",
181
+ "callableBy": ["client", "agent"],
182
+ "capabilities": ["observation.canQuery"],
183
+ "description": "List all scopes",
184
+ "requestType": "ScopesListRequest",
185
+ "responseType": "ScopesListResponse"
186
+ },
187
+ "map/scopes/get": {
188
+ "tier": "structure",
189
+ "implementedBy": "system",
190
+ "callableBy": ["client", "agent"],
191
+ "capabilities": ["observation.canQuery"],
192
+ "description": "Get details for a single scope",
193
+ "requestType": "ScopesGetRequest",
194
+ "responseType": "ScopesGetResponse"
195
+ },
196
+ "map/scopes/create": {
197
+ "tier": "structure",
198
+ "implementedBy": "system",
199
+ "callableBy": ["agent", "system"],
200
+ "capabilities": ["scopes.canCreateScopes"],
201
+ "description": "Create a new scope",
202
+ "requestType": "ScopesCreateRequest",
203
+ "responseType": "ScopesCreateResponse"
204
+ },
205
+ "map/scopes/delete": {
206
+ "tier": "structure",
207
+ "implementedBy": "system",
208
+ "callableBy": ["agent", "system"],
209
+ "capabilities": ["scopes.canManageScopes"],
210
+ "description": "Delete a scope",
211
+ "requestType": "ScopesDeleteRequest",
212
+ "responseType": "ScopesDeleteResponse"
213
+ },
214
+ "map/scopes/join": {
215
+ "tier": "structure",
216
+ "implementedBy": "system",
217
+ "callableBy": ["agent", "system"],
218
+ "capabilities": [],
219
+ "description": "Add an agent to a scope",
220
+ "requestType": "ScopesJoinRequest",
221
+ "responseType": "ScopesJoinResponse"
222
+ },
223
+ "map/scopes/leave": {
224
+ "tier": "structure",
225
+ "implementedBy": "system",
226
+ "callableBy": ["agent", "system"],
227
+ "capabilities": [],
228
+ "description": "Remove an agent from a scope",
229
+ "requestType": "ScopesLeaveRequest",
230
+ "responseType": "ScopesLeaveResponse"
231
+ },
232
+ "map/scopes/members": {
233
+ "tier": "structure",
234
+ "implementedBy": "system",
235
+ "callableBy": ["client", "agent"],
236
+ "capabilities": ["observation.canQuery"],
237
+ "description": "List members of a scope",
238
+ "requestType": "ScopesMembersRequest",
239
+ "responseType": "ScopesMembersResponse"
240
+ },
241
+ "map/inject": {
242
+ "tier": "extension",
243
+ "implementedBy": "system",
244
+ "callableBy": ["client", "agent"],
245
+ "capabilities": ["lifecycle.canSteer"],
246
+ "description": "Inject context into a running agent (steering)",
247
+ "requestType": "InjectRequest",
248
+ "responseType": "InjectResponse"
249
+ },
250
+ "map/federation/connect": {
251
+ "tier": "extension",
252
+ "implementedBy": "system",
253
+ "callableBy": ["system"],
254
+ "capabilities": [],
255
+ "description": "Connect to a peer MAP system",
256
+ "requestType": "FederationConnectRequest",
257
+ "responseType": "FederationConnectResponse"
258
+ },
259
+ "map/federation/route": {
260
+ "tier": "extension",
261
+ "implementedBy": "system",
262
+ "callableBy": ["agent", "system"],
263
+ "capabilities": ["messaging.canSend"],
264
+ "description": "Route a message to a federated system",
265
+ "requestType": "FederationRouteRequest",
266
+ "responseType": "FederationRouteResponse"
267
+ }
268
+ },
269
+ "notifications": {
270
+ "map/event": {
271
+ "tier": "core",
272
+ "direction": "system-to-participant",
273
+ "description": "System event notification (sent to subscribers)",
274
+ "paramsType": "EventNotification"
275
+ },
276
+ "map/message": {
277
+ "tier": "core",
278
+ "direction": "system-to-participant",
279
+ "description": "Message delivery notification",
280
+ "paramsType": "MessageNotification"
281
+ }
282
+ },
283
+ "errorCodes": {
284
+ "protocol": {
285
+ "-32700": "Parse error",
286
+ "-32600": "Invalid request",
287
+ "-32601": "Method not found",
288
+ "-32602": "Invalid params",
289
+ "-32603": "Internal error"
290
+ },
291
+ "auth": {
292
+ "1000": "Authentication required",
293
+ "1001": "Authentication failed",
294
+ "1002": "Token expired",
295
+ "1003": "Insufficient permissions"
296
+ },
297
+ "routing": {
298
+ "2000": "Address not found",
299
+ "2001": "Agent not found",
300
+ "2002": "Scope not found",
301
+ "2003": "Delivery failed",
302
+ "2004": "Address ambiguous"
303
+ },
304
+ "agent": {
305
+ "3000": "Agent already exists",
306
+ "3001": "Agent state invalid",
307
+ "3002": "Agent not responding",
308
+ "3003": "Agent terminated",
309
+ "3004": "Spawn failed"
310
+ },
311
+ "resource": {
312
+ "4000": "Resource exhausted",
313
+ "4001": "Rate limited",
314
+ "4002": "Quota exceeded"
315
+ },
316
+ "federation": {
317
+ "5000": "Federation unavailable",
318
+ "5001": "System not found",
319
+ "5002": "Federation auth failed",
320
+ "5003": "Route rejected"
321
+ }
322
+ },
323
+ "tiers": {
324
+ "core": {
325
+ "description": "Required methods for basic MAP functionality",
326
+ "required": true
327
+ },
328
+ "structure": {
329
+ "description": "Methods for agent lifecycle and system structure management",
330
+ "required": false
331
+ },
332
+ "extension": {
333
+ "description": "Optional extension methods for advanced features",
334
+ "required": false
335
+ }
336
+ }
337
+ }