@oharness/engine 0.11.0 → 0.12.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/dist/agent/skills.d.ts +16 -3
- package/dist/agent/skills.js +36 -2
- package/dist/agent/skills.js.map +1 -1
- package/dist/agent/subagent.d.ts +15 -2
- package/dist/agent/subagent.js +70 -16
- package/dist/agent/subagent.js.map +1 -1
- package/dist/config.d.ts +9 -0
- package/dist/config.js +2 -0
- package/dist/config.js.map +1 -1
- package/dist/foreign.d.ts +81 -0
- package/dist/foreign.js +198 -0
- package/dist/foreign.js.map +1 -0
- package/dist/harness.d.ts +27 -0
- package/dist/harness.js +128 -5
- package/dist/harness.js.map +1 -1
- package/dist/mcp/registry.d.ts +2 -0
- package/dist/mcp/registry.js +1 -0
- package/dist/mcp/registry.js.map +1 -1
- package/dist/mcp/registry.json +394 -1
- package/dist/paths.d.ts +19 -0
- package/dist/paths.js +38 -0
- package/dist/paths.js.map +1 -1
- package/dist/plugin-market.d.ts +57 -0
- package/dist/plugin-market.js +229 -0
- package/dist/plugin-market.js.map +1 -0
- package/dist/plugin-market.json +1246 -0
- package/dist/plugins.d.ts +49 -2
- package/dist/plugins.js +252 -10
- package/dist/plugins.js.map +1 -1
- package/dist/util/toml.d.ts +22 -0
- package/dist/util/toml.js +305 -0
- package/dist/util/toml.js.map +1 -0
- package/package.json +2 -2
package/dist/mcp/registry.json
CHANGED
|
@@ -35,6 +35,8 @@
|
|
|
35
35
|
"",
|
|
36
36
|
"`siteUrl` is where the menu goes looking for the vendor's icon. The server fetches it once and caches it, so the page itself never talks to a third party; an entry without one, or whose site has no usable icon, draws a monogram instead.",
|
|
37
37
|
"",
|
|
38
|
+
"`category` is the shelf the connector sits on in the browse dialog: one of the plugin market's (build, data, monitor, dev, web, design, work), or local for the reference servers that run on this machine. Anything else lands under More.",
|
|
39
|
+
"",
|
|
38
40
|
"`${project}` is replaced with the session's working directory and `${home}`",
|
|
39
41
|
"with the home directory when the server is started.",
|
|
40
42
|
"",
|
|
@@ -47,11 +49,12 @@
|
|
|
47
49
|
"where it logs in through the browser, dynamic client registration. These",
|
|
48
50
|
"move; re-run it rather than trusting the date."
|
|
49
51
|
],
|
|
50
|
-
"verified": "2026-
|
|
52
|
+
"verified": "2026-10-20",
|
|
51
53
|
"connectors": {
|
|
52
54
|
"filesystem": {
|
|
53
55
|
"label": "Filesystem",
|
|
54
56
|
"publisher": "Model Context Protocol",
|
|
57
|
+
"category": "local",
|
|
55
58
|
"description": "Read, write and search files under one directory — the project, unless you change it",
|
|
56
59
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem",
|
|
57
60
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -68,6 +71,7 @@
|
|
|
68
71
|
"memory": {
|
|
69
72
|
"label": "Memory",
|
|
70
73
|
"publisher": "Model Context Protocol",
|
|
74
|
+
"category": "local",
|
|
71
75
|
"description": "A knowledge graph the agent can write to and read back in later sessions",
|
|
72
76
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/memory",
|
|
73
77
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -83,6 +87,7 @@
|
|
|
83
87
|
"sequential-thinking": {
|
|
84
88
|
"label": "Sequential thinking",
|
|
85
89
|
"publisher": "Model Context Protocol",
|
|
90
|
+
"category": "local",
|
|
86
91
|
"description": "A scratchpad for working a problem through in steps, revising as it goes",
|
|
87
92
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking",
|
|
88
93
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -98,6 +103,7 @@
|
|
|
98
103
|
"fetch": {
|
|
99
104
|
"label": "Fetch",
|
|
100
105
|
"publisher": "Model Context Protocol",
|
|
106
|
+
"category": "local",
|
|
101
107
|
"description": "Fetch a URL and convert it to markdown for reading",
|
|
102
108
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/fetch",
|
|
103
109
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -112,6 +118,7 @@
|
|
|
112
118
|
"git": {
|
|
113
119
|
"label": "Git",
|
|
114
120
|
"publisher": "Model Context Protocol",
|
|
121
|
+
"category": "local",
|
|
115
122
|
"description": "Read history, diffs and blame in this repository",
|
|
116
123
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/git",
|
|
117
124
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -128,6 +135,7 @@
|
|
|
128
135
|
"time": {
|
|
129
136
|
"label": "Time",
|
|
130
137
|
"publisher": "Model Context Protocol",
|
|
138
|
+
"category": "local",
|
|
131
139
|
"description": "The current time in any timezone, and conversions between them",
|
|
132
140
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/time",
|
|
133
141
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -142,6 +150,7 @@
|
|
|
142
150
|
"everything": {
|
|
143
151
|
"label": "Everything",
|
|
144
152
|
"publisher": "Model Context Protocol",
|
|
153
|
+
"category": "local",
|
|
145
154
|
"description": "The reference server: one of every MCP feature, for trying the wiring out",
|
|
146
155
|
"docsUrl": "https://github.com/modelcontextprotocol/servers/tree/main/src/everything",
|
|
147
156
|
"siteUrl": "https://modelcontextprotocol.io",
|
|
@@ -157,6 +166,7 @@
|
|
|
157
166
|
"linear": {
|
|
158
167
|
"label": "Linear",
|
|
159
168
|
"publisher": "Linear",
|
|
169
|
+
"category": "work",
|
|
160
170
|
"description": "Issues, projects and cycles — read them, file them, move them along",
|
|
161
171
|
"docsUrl": "https://linear.app/docs/mcp",
|
|
162
172
|
"siteUrl": "https://linear.app",
|
|
@@ -168,6 +178,7 @@
|
|
|
168
178
|
"notion": {
|
|
169
179
|
"label": "Notion",
|
|
170
180
|
"publisher": "Notion",
|
|
181
|
+
"category": "work",
|
|
171
182
|
"description": "Search the workspace, read pages and databases, and write back to them",
|
|
172
183
|
"docsUrl": "https://developers.notion.com/docs/mcp",
|
|
173
184
|
"siteUrl": "https://www.notion.com",
|
|
@@ -179,6 +190,7 @@
|
|
|
179
190
|
"sentry": {
|
|
180
191
|
"label": "Sentry",
|
|
181
192
|
"publisher": "Sentry",
|
|
193
|
+
"category": "monitor",
|
|
182
194
|
"description": "Issues, events and stack traces from your projects, with the context around them",
|
|
183
195
|
"docsUrl": "https://docs.sentry.io/product/sentry-mcp/",
|
|
184
196
|
"siteUrl": "https://sentry.io",
|
|
@@ -190,6 +202,7 @@
|
|
|
190
202
|
"asana": {
|
|
191
203
|
"label": "Asana",
|
|
192
204
|
"publisher": "Asana",
|
|
205
|
+
"category": "work",
|
|
193
206
|
"description": "Tasks, projects and workloads across the workspaces you can see",
|
|
194
207
|
"docsUrl": "https://developers.asana.com/docs/mcp-server",
|
|
195
208
|
"siteUrl": "https://asana.com",
|
|
@@ -201,6 +214,7 @@
|
|
|
201
214
|
"deepwiki": {
|
|
202
215
|
"label": "DeepWiki",
|
|
203
216
|
"publisher": "Cognition",
|
|
217
|
+
"category": "dev",
|
|
204
218
|
"description": "Ask questions about any public GitHub repository and get answers with sources",
|
|
205
219
|
"docsUrl": "https://docs.devin.ai/work-with-devin/deepwiki-mcp",
|
|
206
220
|
"siteUrl": "https://deepwiki.com",
|
|
@@ -212,6 +226,7 @@
|
|
|
212
226
|
"huggingface": {
|
|
213
227
|
"label": "Hugging Face",
|
|
214
228
|
"publisher": "Hugging Face",
|
|
229
|
+
"category": "dev",
|
|
215
230
|
"description": "Search models, datasets, papers and Spaces, and read their cards",
|
|
216
231
|
"docsUrl": "https://huggingface.co/settings/mcp",
|
|
217
232
|
"siteUrl": "https://huggingface.co",
|
|
@@ -223,6 +238,7 @@
|
|
|
223
238
|
"github": {
|
|
224
239
|
"label": "GitHub",
|
|
225
240
|
"publisher": "GitHub",
|
|
241
|
+
"category": "dev",
|
|
226
242
|
"description": "Repositories, issues, pull requests and code search. Needs GITHUB_TOKEN",
|
|
227
243
|
"docsUrl": "https://github.com/github/github-mcp-server",
|
|
228
244
|
"siteUrl": "https://github.com",
|
|
@@ -237,6 +253,7 @@
|
|
|
237
253
|
"supabase": {
|
|
238
254
|
"label": "Supabase",
|
|
239
255
|
"publisher": "Supabase",
|
|
256
|
+
"category": "data",
|
|
240
257
|
"description": "Projects, tables, migrations, edge functions and logs",
|
|
241
258
|
"docsUrl": "https://supabase.com/docs/guides/getting-started/mcp",
|
|
242
259
|
"siteUrl": "https://supabase.com",
|
|
@@ -248,6 +265,7 @@
|
|
|
248
265
|
"vercel": {
|
|
249
266
|
"label": "Vercel",
|
|
250
267
|
"publisher": "Vercel",
|
|
268
|
+
"category": "build",
|
|
251
269
|
"description": "Projects and deployments, with the build and runtime logs behind them",
|
|
252
270
|
"docsUrl": "https://vercel.com/docs/mcp/vercel-mcp",
|
|
253
271
|
"siteUrl": "https://vercel.com",
|
|
@@ -259,6 +277,7 @@
|
|
|
259
277
|
"atlassian": {
|
|
260
278
|
"label": "Atlassian",
|
|
261
279
|
"publisher": "Atlassian",
|
|
280
|
+
"category": "work",
|
|
262
281
|
"description": "Jira issues and Confluence pages across the sites you can see",
|
|
263
282
|
"docsUrl": "https://support.atlassian.com/rovo/docs/setting-up-ides/",
|
|
264
283
|
"siteUrl": "https://www.atlassian.com",
|
|
@@ -270,6 +289,7 @@
|
|
|
270
289
|
"figma": {
|
|
271
290
|
"label": "Figma",
|
|
272
291
|
"publisher": "Figma",
|
|
292
|
+
"category": "design",
|
|
273
293
|
"description": "Read designs, frames and variables from files you have access to",
|
|
274
294
|
"docsUrl": "https://developers.figma.com/docs/figma-mcp-server/",
|
|
275
295
|
"siteUrl": "https://www.figma.com",
|
|
@@ -281,6 +301,7 @@
|
|
|
281
301
|
"stripe": {
|
|
282
302
|
"label": "Stripe",
|
|
283
303
|
"publisher": "Stripe",
|
|
304
|
+
"category": "dev",
|
|
284
305
|
"description": "Customers, payments and subscriptions, plus search across the docs",
|
|
285
306
|
"docsUrl": "https://docs.stripe.com/mcp",
|
|
286
307
|
"siteUrl": "https://stripe.com",
|
|
@@ -288,6 +309,378 @@
|
|
|
288
309
|
"type": "http",
|
|
289
310
|
"url": "https://mcp.stripe.com"
|
|
290
311
|
}
|
|
312
|
+
},
|
|
313
|
+
"posthog": {
|
|
314
|
+
"label": "PostHog",
|
|
315
|
+
"publisher": "PostHog",
|
|
316
|
+
"category": "monitor",
|
|
317
|
+
"description": "Product analytics, feature flags, experiments and error tracking",
|
|
318
|
+
"docsUrl": "https://posthog.com/docs/model-context-protocol",
|
|
319
|
+
"siteUrl": "https://posthog.com",
|
|
320
|
+
"config": {
|
|
321
|
+
"type": "http",
|
|
322
|
+
"url": "https://mcp.posthog.com/mcp"
|
|
323
|
+
}
|
|
324
|
+
},
|
|
325
|
+
"cloudflare": {
|
|
326
|
+
"label": "Cloudflare",
|
|
327
|
+
"publisher": "Cloudflare",
|
|
328
|
+
"category": "build",
|
|
329
|
+
"description": "Workers, DNS, R2, D1 and the rest of your Cloudflare account",
|
|
330
|
+
"docsUrl": "https://developers.cloudflare.com/agents/model-context-protocol/",
|
|
331
|
+
"siteUrl": "https://www.cloudflare.com",
|
|
332
|
+
"config": {
|
|
333
|
+
"type": "http",
|
|
334
|
+
"url": "https://mcp.cloudflare.com/mcp"
|
|
335
|
+
}
|
|
336
|
+
},
|
|
337
|
+
"netlify": {
|
|
338
|
+
"label": "Netlify",
|
|
339
|
+
"publisher": "Netlify",
|
|
340
|
+
"category": "build",
|
|
341
|
+
"description": "Deploy sites, manage projects and read build logs",
|
|
342
|
+
"docsUrl": "https://docs.netlify.com/build/build-with-ai/netlify-mcp-server/",
|
|
343
|
+
"siteUrl": "https://www.netlify.com",
|
|
344
|
+
"config": {
|
|
345
|
+
"type": "http",
|
|
346
|
+
"url": "https://netlify-mcp.netlify.app/mcp"
|
|
347
|
+
}
|
|
348
|
+
},
|
|
349
|
+
"railway": {
|
|
350
|
+
"label": "Railway",
|
|
351
|
+
"publisher": "Railway",
|
|
352
|
+
"category": "build",
|
|
353
|
+
"description": "Projects, services, deployments and logs on Railway",
|
|
354
|
+
"docsUrl": "https://docs.railway.com/reference/mcp-server",
|
|
355
|
+
"siteUrl": "https://railway.com",
|
|
356
|
+
"config": {
|
|
357
|
+
"type": "http",
|
|
358
|
+
"url": "https://mcp.railway.com"
|
|
359
|
+
}
|
|
360
|
+
},
|
|
361
|
+
"neon": {
|
|
362
|
+
"label": "Neon",
|
|
363
|
+
"publisher": "Neon",
|
|
364
|
+
"category": "data",
|
|
365
|
+
"description": "Serverless Postgres: projects, branches, SQL and migrations",
|
|
366
|
+
"docsUrl": "https://neon.com/docs/ai/neon-mcp-server",
|
|
367
|
+
"siteUrl": "https://neon.com",
|
|
368
|
+
"config": {
|
|
369
|
+
"type": "http",
|
|
370
|
+
"url": "https://mcp.neon.tech/mcp"
|
|
371
|
+
}
|
|
372
|
+
},
|
|
373
|
+
"clickhouse": {
|
|
374
|
+
"label": "ClickHouse",
|
|
375
|
+
"publisher": "ClickHouse",
|
|
376
|
+
"category": "data",
|
|
377
|
+
"description": "Query and explore your ClickHouse Cloud services",
|
|
378
|
+
"docsUrl": "https://clickhouse.com/docs/use-cases/AI/MCP",
|
|
379
|
+
"siteUrl": "https://clickhouse.com",
|
|
380
|
+
"config": {
|
|
381
|
+
"type": "http",
|
|
382
|
+
"url": "https://mcp.clickhouse.cloud/mcp"
|
|
383
|
+
}
|
|
384
|
+
},
|
|
385
|
+
"appwrite": {
|
|
386
|
+
"label": "Appwrite",
|
|
387
|
+
"publisher": "Appwrite",
|
|
388
|
+
"category": "data",
|
|
389
|
+
"description": "Databases, users, storage and functions in Appwrite",
|
|
390
|
+
"docsUrl": "https://appwrite.io/docs/tooling/mcp",
|
|
391
|
+
"siteUrl": "https://appwrite.io",
|
|
392
|
+
"config": {
|
|
393
|
+
"type": "http",
|
|
394
|
+
"url": "https://mcp.appwrite.io/"
|
|
395
|
+
}
|
|
396
|
+
},
|
|
397
|
+
"sanity": {
|
|
398
|
+
"label": "Sanity",
|
|
399
|
+
"publisher": "Sanity",
|
|
400
|
+
"category": "build",
|
|
401
|
+
"description": "Query and edit content in your Sanity projects",
|
|
402
|
+
"docsUrl": "https://www.sanity.io/docs/compute-and-ai/mcp-server",
|
|
403
|
+
"siteUrl": "https://www.sanity.io",
|
|
404
|
+
"config": {
|
|
405
|
+
"type": "http",
|
|
406
|
+
"url": "https://mcp.sanity.io"
|
|
407
|
+
}
|
|
408
|
+
},
|
|
409
|
+
"expo": {
|
|
410
|
+
"label": "Expo",
|
|
411
|
+
"publisher": "Expo",
|
|
412
|
+
"category": "build",
|
|
413
|
+
"description": "EAS builds, submissions and Expo docs",
|
|
414
|
+
"docsUrl": "https://docs.expo.dev/eas/ai/mcp/",
|
|
415
|
+
"siteUrl": "https://expo.dev",
|
|
416
|
+
"config": {
|
|
417
|
+
"type": "http",
|
|
418
|
+
"url": "https://mcp.expo.dev/mcp"
|
|
419
|
+
}
|
|
420
|
+
},
|
|
421
|
+
"wix": {
|
|
422
|
+
"label": "Wix",
|
|
423
|
+
"publisher": "Wix",
|
|
424
|
+
"category": "build",
|
|
425
|
+
"description": "Sites, stores, bookings and content on Wix",
|
|
426
|
+
"docsUrl": "https://dev.wix.com/docs/sdk/articles/use-the-wix-mcp/about-the-wix-mcp",
|
|
427
|
+
"siteUrl": "https://www.wix.com",
|
|
428
|
+
"config": {
|
|
429
|
+
"type": "http",
|
|
430
|
+
"url": "https://mcp.wix.com/mcp"
|
|
431
|
+
}
|
|
432
|
+
},
|
|
433
|
+
"postman": {
|
|
434
|
+
"label": "Postman",
|
|
435
|
+
"publisher": "Postman",
|
|
436
|
+
"category": "dev",
|
|
437
|
+
"description": "Workspaces, collections, environments and API specs",
|
|
438
|
+
"docsUrl": "https://learning.postman.com/docs/developer/postman-api/postman-mcp-server/",
|
|
439
|
+
"siteUrl": "https://www.postman.com",
|
|
440
|
+
"config": {
|
|
441
|
+
"type": "http",
|
|
442
|
+
"url": "https://mcp.postman.com/mcp"
|
|
443
|
+
}
|
|
444
|
+
},
|
|
445
|
+
"amplitude": {
|
|
446
|
+
"label": "Amplitude",
|
|
447
|
+
"publisher": "Amplitude",
|
|
448
|
+
"category": "monitor",
|
|
449
|
+
"description": "Charts, dashboards, cohorts and experiments",
|
|
450
|
+
"docsUrl": "https://amplitude.com/docs/analytics/amplitude-mcp",
|
|
451
|
+
"siteUrl": "https://amplitude.com",
|
|
452
|
+
"config": {
|
|
453
|
+
"type": "http",
|
|
454
|
+
"url": "https://mcp.amplitude.com/mcp"
|
|
455
|
+
}
|
|
456
|
+
},
|
|
457
|
+
"honeycomb": {
|
|
458
|
+
"label": "Honeycomb",
|
|
459
|
+
"publisher": "Honeycomb",
|
|
460
|
+
"category": "monitor",
|
|
461
|
+
"description": "Query traces, SLOs and boards in Honeycomb",
|
|
462
|
+
"docsUrl": "https://docs.honeycomb.io/integrations/mcp/",
|
|
463
|
+
"siteUrl": "https://www.honeycomb.io",
|
|
464
|
+
"config": {
|
|
465
|
+
"type": "http",
|
|
466
|
+
"url": "https://mcp.honeycomb.io/mcp"
|
|
467
|
+
}
|
|
468
|
+
},
|
|
469
|
+
"grafana-cloud": {
|
|
470
|
+
"label": "Grafana Cloud",
|
|
471
|
+
"publisher": "Grafana Labs",
|
|
472
|
+
"category": "monitor",
|
|
473
|
+
"description": "Dashboards, alerts, logs and metrics in Grafana Cloud",
|
|
474
|
+
"docsUrl": "https://grafana.com/docs/grafana-cloud/",
|
|
475
|
+
"siteUrl": "https://grafana.com",
|
|
476
|
+
"config": {
|
|
477
|
+
"type": "http",
|
|
478
|
+
"url": "https://mcp.grafana.com/mcp"
|
|
479
|
+
}
|
|
480
|
+
},
|
|
481
|
+
"airtable": {
|
|
482
|
+
"label": "Airtable",
|
|
483
|
+
"publisher": "Airtable",
|
|
484
|
+
"category": "data",
|
|
485
|
+
"description": "Read and update bases, tables and records",
|
|
486
|
+
"docsUrl": "https://support.airtable.com/docs/using-the-airtable-mcp-server",
|
|
487
|
+
"siteUrl": "https://www.airtable.com",
|
|
488
|
+
"config": {
|
|
489
|
+
"type": "http",
|
|
490
|
+
"url": "https://mcp.airtable.com/mcp"
|
|
491
|
+
}
|
|
492
|
+
},
|
|
493
|
+
"canva": {
|
|
494
|
+
"label": "Canva",
|
|
495
|
+
"publisher": "Canva",
|
|
496
|
+
"category": "design",
|
|
497
|
+
"description": "Create, find and edit Canva designs",
|
|
498
|
+
"docsUrl": "https://www.canva.dev/docs/mcp/",
|
|
499
|
+
"siteUrl": "https://www.canva.com",
|
|
500
|
+
"config": {
|
|
501
|
+
"type": "http",
|
|
502
|
+
"url": "https://mcp.canva.com/mcp"
|
|
503
|
+
}
|
|
504
|
+
},
|
|
505
|
+
"miro": {
|
|
506
|
+
"label": "Miro",
|
|
507
|
+
"publisher": "Miro",
|
|
508
|
+
"category": "design",
|
|
509
|
+
"description": "Read and build boards, diagrams and sticky notes",
|
|
510
|
+
"docsUrl": "https://developers.miro.com/docs/miro-mcp",
|
|
511
|
+
"siteUrl": "https://miro.com",
|
|
512
|
+
"config": {
|
|
513
|
+
"type": "http",
|
|
514
|
+
"url": "https://mcp.miro.com/"
|
|
515
|
+
}
|
|
516
|
+
},
|
|
517
|
+
"dropbox": {
|
|
518
|
+
"label": "Dropbox",
|
|
519
|
+
"publisher": "Dropbox",
|
|
520
|
+
"category": "work",
|
|
521
|
+
"description": "Search, read and organise your Dropbox files",
|
|
522
|
+
"docsUrl": "https://www.dropbox.com",
|
|
523
|
+
"siteUrl": "https://www.dropbox.com",
|
|
524
|
+
"config": {
|
|
525
|
+
"type": "http",
|
|
526
|
+
"url": "https://mcp.dropbox.com/claude_app_mcp"
|
|
527
|
+
}
|
|
528
|
+
},
|
|
529
|
+
"monday": {
|
|
530
|
+
"label": "monday.com",
|
|
531
|
+
"publisher": "monday.com",
|
|
532
|
+
"category": "work",
|
|
533
|
+
"description": "Boards, items and updates in monday.com",
|
|
534
|
+
"docsUrl": "https://developer.monday.com/apps/docs/mondaycom-mcp-integration",
|
|
535
|
+
"siteUrl": "https://monday.com",
|
|
536
|
+
"config": {
|
|
537
|
+
"type": "http",
|
|
538
|
+
"url": "https://mcp.monday.com/mcp"
|
|
539
|
+
}
|
|
540
|
+
},
|
|
541
|
+
"intercom": {
|
|
542
|
+
"label": "Intercom",
|
|
543
|
+
"publisher": "Intercom",
|
|
544
|
+
"category": "work",
|
|
545
|
+
"description": "Conversations, contacts and help center articles",
|
|
546
|
+
"docsUrl": "https://developers.intercom.com/docs/guides/mcp",
|
|
547
|
+
"siteUrl": "https://www.intercom.com",
|
|
548
|
+
"config": {
|
|
549
|
+
"type": "http",
|
|
550
|
+
"url": "https://mcp.intercom.com/mcp"
|
|
551
|
+
}
|
|
552
|
+
},
|
|
553
|
+
"apollo": {
|
|
554
|
+
"label": "Apollo",
|
|
555
|
+
"publisher": "Apollo.io",
|
|
556
|
+
"category": "work",
|
|
557
|
+
"description": "Find and enrich people and companies",
|
|
558
|
+
"docsUrl": "https://www.apollo.io",
|
|
559
|
+
"siteUrl": "https://www.apollo.io",
|
|
560
|
+
"config": {
|
|
561
|
+
"type": "http",
|
|
562
|
+
"url": "https://mcp.apollo.io/mcp"
|
|
563
|
+
}
|
|
564
|
+
},
|
|
565
|
+
"hunter": {
|
|
566
|
+
"label": "Hunter",
|
|
567
|
+
"publisher": "Hunter",
|
|
568
|
+
"category": "work",
|
|
569
|
+
"description": "Find and verify professional email addresses",
|
|
570
|
+
"docsUrl": "https://hunter.io/mcp",
|
|
571
|
+
"siteUrl": "https://hunter.io",
|
|
572
|
+
"config": {
|
|
573
|
+
"type": "http",
|
|
574
|
+
"url": "https://mcp.hunter.io/mcp"
|
|
575
|
+
}
|
|
576
|
+
},
|
|
577
|
+
"zapier": {
|
|
578
|
+
"label": "Zapier",
|
|
579
|
+
"publisher": "Zapier",
|
|
580
|
+
"category": "work",
|
|
581
|
+
"description": "Run your Zapier actions across thousands of apps",
|
|
582
|
+
"docsUrl": "https://zapier.com/mcp",
|
|
583
|
+
"siteUrl": "https://zapier.com",
|
|
584
|
+
"config": {
|
|
585
|
+
"type": "http",
|
|
586
|
+
"url": "https://mcp.zapier.com/api/v1/connect"
|
|
587
|
+
}
|
|
588
|
+
},
|
|
589
|
+
"exa": {
|
|
590
|
+
"label": "Exa",
|
|
591
|
+
"publisher": "Exa",
|
|
592
|
+
"category": "web",
|
|
593
|
+
"description": "Web search and page contents built for agents",
|
|
594
|
+
"docsUrl": "https://docs.exa.ai/reference/exa-mcp",
|
|
595
|
+
"siteUrl": "https://exa.ai",
|
|
596
|
+
"config": {
|
|
597
|
+
"type": "http",
|
|
598
|
+
"url": "https://mcp.exa.ai/mcp"
|
|
599
|
+
}
|
|
600
|
+
},
|
|
601
|
+
"firecrawl": {
|
|
602
|
+
"label": "Firecrawl",
|
|
603
|
+
"publisher": "Firecrawl",
|
|
604
|
+
"category": "web",
|
|
605
|
+
"description": "Search, scrape and crawl websites into clean text",
|
|
606
|
+
"docsUrl": "https://docs.firecrawl.dev/mcp-server",
|
|
607
|
+
"siteUrl": "https://www.firecrawl.dev",
|
|
608
|
+
"config": {
|
|
609
|
+
"type": "http",
|
|
610
|
+
"url": "https://mcp.firecrawl.dev/v2/mcp-search"
|
|
611
|
+
}
|
|
612
|
+
},
|
|
613
|
+
"context7": {
|
|
614
|
+
"label": "Context7",
|
|
615
|
+
"publisher": "Upstash",
|
|
616
|
+
"category": "dev",
|
|
617
|
+
"description": "Current docs and code examples for libraries",
|
|
618
|
+
"docsUrl": "https://context7.com",
|
|
619
|
+
"siteUrl": "https://context7.com",
|
|
620
|
+
"config": {
|
|
621
|
+
"type": "http",
|
|
622
|
+
"url": "https://mcp.context7.com/mcp"
|
|
623
|
+
}
|
|
624
|
+
},
|
|
625
|
+
"microsoft-learn": {
|
|
626
|
+
"label": "Microsoft Learn",
|
|
627
|
+
"publisher": "Microsoft",
|
|
628
|
+
"category": "dev",
|
|
629
|
+
"description": "Search official Microsoft and Azure documentation",
|
|
630
|
+
"docsUrl": "https://learn.microsoft.com/training/support/mcp",
|
|
631
|
+
"siteUrl": "https://learn.microsoft.com",
|
|
632
|
+
"config": {
|
|
633
|
+
"type": "http",
|
|
634
|
+
"url": "https://learn.microsoft.com/api/mcp"
|
|
635
|
+
}
|
|
636
|
+
},
|
|
637
|
+
"mapbox": {
|
|
638
|
+
"label": "Mapbox",
|
|
639
|
+
"publisher": "Mapbox",
|
|
640
|
+
"category": "design",
|
|
641
|
+
"description": "Geocoding, directions, places and static maps",
|
|
642
|
+
"docsUrl": "https://docs.mapbox.com/api/guides/mcp-server/",
|
|
643
|
+
"siteUrl": "https://www.mapbox.com",
|
|
644
|
+
"config": {
|
|
645
|
+
"type": "http",
|
|
646
|
+
"url": "https://mcp.mapbox.com/mcp"
|
|
647
|
+
}
|
|
648
|
+
},
|
|
649
|
+
"resend": {
|
|
650
|
+
"label": "Resend",
|
|
651
|
+
"publisher": "Resend",
|
|
652
|
+
"category": "dev",
|
|
653
|
+
"description": "Send email and manage domains, audiences and broadcasts",
|
|
654
|
+
"docsUrl": "https://resend.com/docs/mcp-server",
|
|
655
|
+
"siteUrl": "https://resend.com",
|
|
656
|
+
"config": {
|
|
657
|
+
"type": "http",
|
|
658
|
+
"url": "https://mcp.resend.com/mcp"
|
|
659
|
+
}
|
|
660
|
+
},
|
|
661
|
+
"gitlab": {
|
|
662
|
+
"label": "GitLab",
|
|
663
|
+
"publisher": "GitLab",
|
|
664
|
+
"category": "dev",
|
|
665
|
+
"description": "Issues, merge requests and pipelines on GitLab.com",
|
|
666
|
+
"docsUrl": "https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_server/",
|
|
667
|
+
"siteUrl": "https://gitlab.com",
|
|
668
|
+
"config": {
|
|
669
|
+
"type": "http",
|
|
670
|
+
"url": "https://gitlab.com/api/v4/mcp"
|
|
671
|
+
}
|
|
672
|
+
},
|
|
673
|
+
"shippo": {
|
|
674
|
+
"label": "Shippo",
|
|
675
|
+
"publisher": "Shippo",
|
|
676
|
+
"category": "work",
|
|
677
|
+
"description": "Shipping rates, labels and tracking",
|
|
678
|
+
"docsUrl": "https://docs.goshippo.com",
|
|
679
|
+
"siteUrl": "https://goshippo.com",
|
|
680
|
+
"config": {
|
|
681
|
+
"type": "http",
|
|
682
|
+
"url": "https://mcp.shippo.com"
|
|
683
|
+
}
|
|
291
684
|
}
|
|
292
685
|
}
|
|
293
686
|
}
|
package/dist/paths.d.ts
CHANGED
|
@@ -40,3 +40,22 @@ export declare function pathKey(input: string, platform?: NodeJS.Platform): stri
|
|
|
40
40
|
export declare function samePath(left: string, right: string, platform?: NodeJS.Platform): boolean;
|
|
41
41
|
/** Whether `target` is one of `roots` or sits underneath one. */
|
|
42
42
|
export declare function within(roots: readonly string[], target: string): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Claude Code's directory. `CLAUDE_CONFIG_DIR` is Claude Code's own override,
|
|
45
|
+
* honoured so that a user who moved it is read where they moved it to;
|
|
46
|
+
* `OHARNESS_CLAUDE_HOME` exists so tests never read the developer's own.
|
|
47
|
+
*/
|
|
48
|
+
export declare function claudeHome(): string;
|
|
49
|
+
/**
|
|
50
|
+
* Claude Code's state file, where `claude mcp add` writes servers. It sits
|
|
51
|
+
* beside the directory rather than inside it — unless the directory was moved,
|
|
52
|
+
* in which case it moved too.
|
|
53
|
+
*/
|
|
54
|
+
export declare function claudeStateFile(): string;
|
|
55
|
+
/** Codex's directory. `CODEX_HOME` is Codex's own override. */
|
|
56
|
+
export declare function codexHome(): string;
|
|
57
|
+
/**
|
|
58
|
+
* `~/.agents`, the vendor-neutral directory Codex reads skills from and that
|
|
59
|
+
* skill installers write to for every agent at once.
|
|
60
|
+
*/
|
|
61
|
+
export declare function agentsHome(): string;
|
package/dist/paths.js
CHANGED
|
@@ -78,4 +78,42 @@ export function samePath(left, right, platform = process.platform) {
|
|
|
78
78
|
export function within(roots, target) {
|
|
79
79
|
return roots.some((root) => target === root || target.startsWith(root + path.sep));
|
|
80
80
|
}
|
|
81
|
+
// --- other agents' directories ------------------------------------------
|
|
82
|
+
//
|
|
83
|
+
// Read, never written: see `foreign.ts` for what is taken from each.
|
|
84
|
+
/**
|
|
85
|
+
* Claude Code's directory. `CLAUDE_CONFIG_DIR` is Claude Code's own override,
|
|
86
|
+
* honoured so that a user who moved it is read where they moved it to;
|
|
87
|
+
* `OHARNESS_CLAUDE_HOME` exists so tests never read the developer's own.
|
|
88
|
+
*/
|
|
89
|
+
export function claudeHome() {
|
|
90
|
+
const moved = movedClaudeHome();
|
|
91
|
+
return moved ?? path.join(homedir(), ".claude");
|
|
92
|
+
}
|
|
93
|
+
function movedClaudeHome() {
|
|
94
|
+
const moved = process.env["OHARNESS_CLAUDE_HOME"] || process.env["CLAUDE_CONFIG_DIR"];
|
|
95
|
+
return moved ? path.resolve(moved) : undefined;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Claude Code's state file, where `claude mcp add` writes servers. It sits
|
|
99
|
+
* beside the directory rather than inside it — unless the directory was moved,
|
|
100
|
+
* in which case it moved too.
|
|
101
|
+
*/
|
|
102
|
+
export function claudeStateFile() {
|
|
103
|
+
const moved = movedClaudeHome();
|
|
104
|
+
return moved ? path.join(moved, ".claude.json") : path.join(homedir(), ".claude.json");
|
|
105
|
+
}
|
|
106
|
+
/** Codex's directory. `CODEX_HOME` is Codex's own override. */
|
|
107
|
+
export function codexHome() {
|
|
108
|
+
const moved = process.env["OHARNESS_CODEX_HOME"] || process.env["CODEX_HOME"];
|
|
109
|
+
return moved ? path.resolve(moved) : path.join(homedir(), ".codex");
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* `~/.agents`, the vendor-neutral directory Codex reads skills from and that
|
|
113
|
+
* skill installers write to for every agent at once.
|
|
114
|
+
*/
|
|
115
|
+
export function agentsHome() {
|
|
116
|
+
const moved = process.env["OHARNESS_AGENTS_HOME"];
|
|
117
|
+
return moved ? path.resolve(moved) : path.join(homedir(), ".agents");
|
|
118
|
+
}
|
|
81
119
|
//# sourceMappingURL=paths.js.map
|
package/dist/paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,OAAO;IACrB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC9C,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE5C,4EAA4E;IAC5E,yEAAyE;IACzE,iCAAiC;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC3C,IAAI,GAAG,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAE3E,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;AAC3C,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,QAAQ,CAAC,GAAG,QAAkB;IAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAG,QAAkB;IAC5D,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,IAAY;IACxD,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAC/B,2EAA2E;IAC3E,yEAAyE;IACzE,+CAA+C;IAC/C,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,OAAO,CAAC,KAAa,EAAE,WAA4B,OAAO,CAAC,QAAQ;IACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,6EAA6E;IAC7E,wEAAwE;IACxE,2CAA2C;IAC3C,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAAa,EAAE,WAA4B,OAAO,CAAC,QAAQ;IAChG,OAAO,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,MAAM,CAAC,KAAwB,EAAE,MAAc;IAC7D,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACrF,CAAC"}
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"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"}
|