paperclip-mcp 1.0.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.
Files changed (78) hide show
  1. package/README.md +703 -0
  2. package/dist/auth.d.ts +9 -0
  3. package/dist/auth.d.ts.map +1 -0
  4. package/dist/auth.js +17 -0
  5. package/dist/auth.js.map +1 -0
  6. package/dist/client.d.ts +17 -0
  7. package/dist/client.d.ts.map +1 -0
  8. package/dist/client.js +94 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/errors.d.ts +7 -0
  11. package/dist/errors.d.ts.map +1 -0
  12. package/dist/errors.js +13 -0
  13. package/dist/errors.js.map +1 -0
  14. package/dist/index.d.ts +3 -0
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/index.js +23 -0
  17. package/dist/index.js.map +1 -0
  18. package/dist/tools/activity.d.ts +3 -0
  19. package/dist/tools/activity.d.ts.map +1 -0
  20. package/dist/tools/activity.js +106 -0
  21. package/dist/tools/activity.js.map +1 -0
  22. package/dist/tools/agents.d.ts +3 -0
  23. package/dist/tools/agents.d.ts.map +1 -0
  24. package/dist/tools/agents.js +373 -0
  25. package/dist/tools/agents.js.map +1 -0
  26. package/dist/tools/approvals.d.ts +3 -0
  27. package/dist/tools/approvals.d.ts.map +1 -0
  28. package/dist/tools/approvals.js +306 -0
  29. package/dist/tools/approvals.js.map +1 -0
  30. package/dist/tools/attachments.d.ts +3 -0
  31. package/dist/tools/attachments.d.ts.map +1 -0
  32. package/dist/tools/attachments.js +125 -0
  33. package/dist/tools/attachments.js.map +1 -0
  34. package/dist/tools/comments.d.ts +3 -0
  35. package/dist/tools/comments.d.ts.map +1 -0
  36. package/dist/tools/comments.js +75 -0
  37. package/dist/tools/comments.js.map +1 -0
  38. package/dist/tools/dashboard.d.ts +3 -0
  39. package/dist/tools/dashboard.d.ts.map +1 -0
  40. package/dist/tools/dashboard.js +24 -0
  41. package/dist/tools/dashboard.js.map +1 -0
  42. package/dist/tools/documents.d.ts +3 -0
  43. package/dist/tools/documents.d.ts.map +1 -0
  44. package/dist/tools/documents.js +150 -0
  45. package/dist/tools/documents.js.map +1 -0
  46. package/dist/tools/goals.d.ts +3 -0
  47. package/dist/tools/goals.d.ts.map +1 -0
  48. package/dist/tools/goals.js +128 -0
  49. package/dist/tools/goals.js.map +1 -0
  50. package/dist/tools/identity.d.ts +3 -0
  51. package/dist/tools/identity.d.ts.map +1 -0
  52. package/dist/tools/identity.js +44 -0
  53. package/dist/tools/identity.js.map +1 -0
  54. package/dist/tools/index.d.ts +25 -0
  55. package/dist/tools/index.d.ts.map +1 -0
  56. package/dist/tools/index.js +49 -0
  57. package/dist/tools/index.js.map +1 -0
  58. package/dist/tools/issues.d.ts +3 -0
  59. package/dist/tools/issues.d.ts.map +1 -0
  60. package/dist/tools/issues.js +297 -0
  61. package/dist/tools/issues.js.map +1 -0
  62. package/dist/tools/projects.d.ts +3 -0
  63. package/dist/tools/projects.d.ts.map +1 -0
  64. package/dist/tools/projects.js +233 -0
  65. package/dist/tools/projects.js.map +1 -0
  66. package/dist/tools/routines.d.ts +3 -0
  67. package/dist/tools/routines.d.ts.map +1 -0
  68. package/dist/tools/routines.js +305 -0
  69. package/dist/tools/routines.js.map +1 -0
  70. package/dist/tools/validation.d.ts +24 -0
  71. package/dist/tools/validation.d.ts.map +1 -0
  72. package/dist/tools/validation.js +33 -0
  73. package/dist/tools/validation.js.map +1 -0
  74. package/dist/types.d.ts +36 -0
  75. package/dist/types.d.ts.map +1 -0
  76. package/dist/types.js +3 -0
  77. package/dist/types.js.map +1 -0
  78. package/package.json +61 -0
@@ -0,0 +1,373 @@
1
+ import { z } from "zod";
2
+ import { validate, NoInput, handleApiError } from "./validation.js";
3
+ const AgentIdInput = z.object({
4
+ agentId: z.string().min(1).describe("Agent UUID"),
5
+ });
6
+ const UpdateAgentInput = z.object({
7
+ agentId: z.string().min(1).describe("Agent UUID"),
8
+ name: z.string().optional().describe("New display name"),
9
+ title: z.string().optional().describe("New job title"),
10
+ capabilities: z.string().optional().describe("Updated capability description"),
11
+ status: z.string().optional().describe("New status (e.g. active, paused)"),
12
+ });
13
+ const CreateAgentKeyInput = z.object({
14
+ agentId: z.string().min(1).describe("Agent UUID"),
15
+ name: z.string().optional().describe("Key label"),
16
+ expiresAt: z.string().optional().describe("ISO 8601 expiry date"),
17
+ });
18
+ const ConfigRevisionInput = z.object({
19
+ agentId: z.string().min(1).describe("Agent UUID"),
20
+ revisionId: z.string().min(1).describe("Config revision UUID"),
21
+ });
22
+ const SetInstructionsPathInput = z.object({
23
+ agentId: z.string().min(1).describe("Agent UUID"),
24
+ path: z.string().nullable().describe("Path to AGENTS.md file, or null to clear"),
25
+ adapterConfigKey: z
26
+ .string()
27
+ .optional()
28
+ .describe("Adapter config key override for non-standard adapters"),
29
+ });
30
+ const SyncAgentSkillsInput = z.object({
31
+ agentId: z.string().min(1).describe("Agent UUID"),
32
+ desiredSkills: z.array(z.string()).describe("List of skill names to sync onto the agent"),
33
+ });
34
+ export const agentTools = [
35
+ {
36
+ name: "paperclip_list_agents",
37
+ description: "Return the list of agents in the company (id, name, urlKey, role, status).",
38
+ inputSchema: {
39
+ type: "object",
40
+ properties: {},
41
+ required: [],
42
+ },
43
+ annotations: { readOnlyHint: true, openWorldHint: false },
44
+ async handler(args, client) {
45
+ try {
46
+ validate(NoInput, args);
47
+ const data = await client.get(`/api/companies/${client.companyId}/agents`);
48
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
49
+ }
50
+ catch (err) {
51
+ return handleApiError(err);
52
+ }
53
+ },
54
+ },
55
+ {
56
+ name: "paperclip_get_agent",
57
+ description: "Get full details for a single agent by ID.",
58
+ inputSchema: {
59
+ type: "object",
60
+ properties: {
61
+ agentId: { type: "string", description: "Agent UUID" },
62
+ },
63
+ required: ["agentId"],
64
+ },
65
+ annotations: { readOnlyHint: true, openWorldHint: false },
66
+ async handler(args, client) {
67
+ try {
68
+ const { agentId } = validate(AgentIdInput, args);
69
+ const data = await client.get(`/api/agents/${agentId}`);
70
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
71
+ }
72
+ catch (err) {
73
+ return handleApiError(err);
74
+ }
75
+ },
76
+ },
77
+ {
78
+ name: "paperclip_update_agent",
79
+ description: "Update an agent's name, title, capabilities, or status. Run ID header is injected automatically.",
80
+ inputSchema: {
81
+ type: "object",
82
+ properties: {
83
+ agentId: { type: "string", description: "Agent UUID" },
84
+ name: { type: "string", description: "New display name" },
85
+ title: { type: "string", description: "New job title" },
86
+ capabilities: { type: "string", description: "Updated capability description" },
87
+ status: { type: "string", description: "New status (e.g. active, paused)" },
88
+ },
89
+ required: ["agentId"],
90
+ },
91
+ annotations: { destructiveHint: true, openWorldHint: false },
92
+ async handler(args, client) {
93
+ try {
94
+ const { agentId, ...rest } = validate(UpdateAgentInput, args);
95
+ const body = {};
96
+ for (const [k, v] of Object.entries(rest)) {
97
+ if (v !== undefined)
98
+ body[k] = v;
99
+ }
100
+ const data = await client.patch(`/api/agents/${agentId}`, body);
101
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
102
+ }
103
+ catch (err) {
104
+ return handleApiError(err);
105
+ }
106
+ },
107
+ },
108
+ {
109
+ name: "paperclip_pause_agent",
110
+ description: "Pause an agent, preventing it from starting new heartbeat runs.",
111
+ inputSchema: {
112
+ type: "object",
113
+ properties: {
114
+ agentId: { type: "string", description: "Agent UUID" },
115
+ },
116
+ required: ["agentId"],
117
+ },
118
+ annotations: { destructiveHint: true, openWorldHint: false },
119
+ async handler(args, client) {
120
+ try {
121
+ const { agentId } = validate(AgentIdInput, args);
122
+ const data = await client.post(`/api/agents/${agentId}/pause`);
123
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
124
+ }
125
+ catch (err) {
126
+ return handleApiError(err);
127
+ }
128
+ },
129
+ },
130
+ {
131
+ name: "paperclip_resume_agent",
132
+ description: "Resume a paused agent, allowing it to start new heartbeat runs.",
133
+ inputSchema: {
134
+ type: "object",
135
+ properties: {
136
+ agentId: { type: "string", description: "Agent UUID" },
137
+ },
138
+ required: ["agentId"],
139
+ },
140
+ annotations: { destructiveHint: false, openWorldHint: false },
141
+ async handler(args, client) {
142
+ try {
143
+ const { agentId } = validate(AgentIdInput, args);
144
+ const data = await client.post(`/api/agents/${agentId}/resume`);
145
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
146
+ }
147
+ catch (err) {
148
+ return handleApiError(err);
149
+ }
150
+ },
151
+ },
152
+ {
153
+ name: "paperclip_invoke_heartbeat",
154
+ description: "Manually trigger a heartbeat run for an agent. Run ID header is injected automatically.",
155
+ inputSchema: {
156
+ type: "object",
157
+ properties: {
158
+ agentId: { type: "string", description: "Agent UUID" },
159
+ },
160
+ required: ["agentId"],
161
+ },
162
+ annotations: { destructiveHint: false, openWorldHint: false },
163
+ async handler(args, client) {
164
+ try {
165
+ const { agentId } = validate(AgentIdInput, args);
166
+ const data = await client.post(`/api/agents/${agentId}/heartbeat/invoke`);
167
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
168
+ }
169
+ catch (err) {
170
+ return handleApiError(err);
171
+ }
172
+ },
173
+ },
174
+ {
175
+ name: "paperclip_terminate_agent",
176
+ description: "Permanently deactivate an agent. WARNING: This action is irreversible. The agent cannot be reactivated after termination. Run ID header is injected automatically.",
177
+ inputSchema: {
178
+ type: "object",
179
+ properties: {
180
+ agentId: { type: "string", description: "Agent UUID" },
181
+ },
182
+ required: ["agentId"],
183
+ },
184
+ annotations: { destructiveHint: true, openWorldHint: false },
185
+ async handler(args, client) {
186
+ try {
187
+ const { agentId } = validate(AgentIdInput, args);
188
+ const data = await client.post(`/api/agents/${agentId}/terminate`);
189
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
190
+ }
191
+ catch (err) {
192
+ return handleApiError(err);
193
+ }
194
+ },
195
+ },
196
+ {
197
+ name: "paperclip_create_agent_key",
198
+ description: "Create a long-lived API key for an agent. Returns the key value — store it securely, it will not be shown again. Run ID header is injected automatically.",
199
+ inputSchema: {
200
+ type: "object",
201
+ properties: {
202
+ agentId: { type: "string", description: "Agent UUID" },
203
+ name: { type: "string", description: "Key label (optional)" },
204
+ expiresAt: { type: "string", description: "ISO 8601 expiry date (optional)" },
205
+ },
206
+ required: ["agentId"],
207
+ },
208
+ annotations: { destructiveHint: false, openWorldHint: false },
209
+ async handler(args, client) {
210
+ try {
211
+ const { agentId, ...rest } = validate(CreateAgentKeyInput, args);
212
+ const body = {};
213
+ if (rest.name !== undefined)
214
+ body.name = rest.name;
215
+ if (rest.expiresAt !== undefined)
216
+ body.expiresAt = rest.expiresAt;
217
+ const data = await client.post(`/api/agents/${agentId}/keys`, body);
218
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
219
+ }
220
+ catch (err) {
221
+ return handleApiError(err);
222
+ }
223
+ },
224
+ },
225
+ {
226
+ name: "paperclip_list_agent_config_revisions",
227
+ description: "List config revision history for an agent.",
228
+ inputSchema: {
229
+ type: "object",
230
+ properties: {
231
+ agentId: { type: "string", description: "Agent UUID" },
232
+ },
233
+ required: ["agentId"],
234
+ },
235
+ annotations: { readOnlyHint: true, openWorldHint: false },
236
+ async handler(args, client) {
237
+ try {
238
+ const { agentId } = validate(AgentIdInput, args);
239
+ const data = await client.get(`/api/agents/${agentId}/config-revisions`);
240
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
241
+ }
242
+ catch (err) {
243
+ return handleApiError(err);
244
+ }
245
+ },
246
+ },
247
+ {
248
+ name: "paperclip_rollback_agent_config",
249
+ description: "Rollback an agent's config to a previous revision. Run ID header is injected automatically.",
250
+ inputSchema: {
251
+ type: "object",
252
+ properties: {
253
+ agentId: { type: "string", description: "Agent UUID" },
254
+ revisionId: { type: "string", description: "Config revision UUID to rollback to" },
255
+ },
256
+ required: ["agentId", "revisionId"],
257
+ },
258
+ annotations: { destructiveHint: true, openWorldHint: false },
259
+ async handler(args, client) {
260
+ try {
261
+ const { agentId, revisionId } = validate(ConfigRevisionInput, args);
262
+ const data = await client.post(`/api/agents/${agentId}/config-revisions/${revisionId}/rollback`);
263
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
264
+ }
265
+ catch (err) {
266
+ return handleApiError(err);
267
+ }
268
+ },
269
+ },
270
+ {
271
+ name: "paperclip_set_agent_instructions_path",
272
+ description: "Set or clear the AGENTS.md instructions file path for an agent. Send null to clear. Run ID header is injected automatically.",
273
+ inputSchema: {
274
+ type: "object",
275
+ properties: {
276
+ agentId: { type: "string", description: "Agent UUID" },
277
+ path: {
278
+ type: ["string", "null"],
279
+ description: "Path to AGENTS.md file, or null to clear",
280
+ },
281
+ adapterConfigKey: {
282
+ type: "string",
283
+ description: "Adapter config key override for non-standard adapters (optional)",
284
+ },
285
+ },
286
+ required: ["agentId", "path"],
287
+ },
288
+ annotations: { destructiveHint: false, openWorldHint: false },
289
+ async handler(args, client) {
290
+ try {
291
+ const { agentId, path, adapterConfigKey } = validate(SetInstructionsPathInput, args);
292
+ const body = { path };
293
+ if (adapterConfigKey !== undefined)
294
+ body.adapterConfigKey = adapterConfigKey;
295
+ const data = await client.patch(`/api/agents/${agentId}/instructions-path`, body);
296
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
297
+ }
298
+ catch (err) {
299
+ return handleApiError(err);
300
+ }
301
+ },
302
+ },
303
+ {
304
+ name: "paperclip_get_org_chart",
305
+ description: "Get the full company agent hierarchy (org chart).",
306
+ inputSchema: {
307
+ type: "object",
308
+ properties: {},
309
+ required: [],
310
+ },
311
+ annotations: { readOnlyHint: true, openWorldHint: false },
312
+ async handler(args, client) {
313
+ try {
314
+ validate(NoInput, args);
315
+ const data = await client.get(`/api/companies/${client.companyId}/org`);
316
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
317
+ }
318
+ catch (err) {
319
+ return handleApiError(err);
320
+ }
321
+ },
322
+ },
323
+ {
324
+ name: "paperclip_sync_agent_skills",
325
+ description: "Sync the desired skill set for an agent, adding or removing skills as needed. Run ID header is injected automatically.",
326
+ inputSchema: {
327
+ type: "object",
328
+ properties: {
329
+ agentId: { type: "string", description: "Agent UUID" },
330
+ desiredSkills: {
331
+ type: "array",
332
+ items: { type: "string" },
333
+ description: "Complete list of skill names the agent should have",
334
+ },
335
+ },
336
+ required: ["agentId", "desiredSkills"],
337
+ },
338
+ annotations: { destructiveHint: false, openWorldHint: false },
339
+ async handler(args, client) {
340
+ try {
341
+ const { agentId, desiredSkills } = validate(SyncAgentSkillsInput, args);
342
+ const data = await client.post(`/api/agents/${agentId}/skills/sync`, {
343
+ desiredSkills,
344
+ });
345
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
346
+ }
347
+ catch (err) {
348
+ return handleApiError(err);
349
+ }
350
+ },
351
+ },
352
+ {
353
+ name: "paperclip_list_company_skills",
354
+ description: "List all skills installed in the company.",
355
+ inputSchema: {
356
+ type: "object",
357
+ properties: {},
358
+ required: [],
359
+ },
360
+ annotations: { readOnlyHint: true, openWorldHint: false },
361
+ async handler(args, client) {
362
+ try {
363
+ validate(NoInput, args);
364
+ const data = await client.get(`/api/companies/${client.companyId}/skills`);
365
+ return { content: [{ type: "text", text: JSON.stringify(data) }] };
366
+ }
367
+ catch (err) {
368
+ return handleApiError(err);
369
+ }
370
+ },
371
+ },
372
+ ];
373
+ //# sourceMappingURL=agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/tools/agents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from "./index.js";
2
+ export declare const approvalTools: ToolDefinition[];
3
+ //# sourceMappingURL=approvals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approvals.d.ts","sourceRoot":"","sources":["../../src/tools/approvals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA8CjD,eAAO,MAAM,aAAa,EAAE,cAAc,EAqQzC,CAAC"}