@tickernelz/paperclip-pro-shared 2026.1011.3 → 2026.1012.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 (287) hide show
  1. package/dist/.paperclip-build-complete +1 -1
  2. package/dist/accounting.d.ts +178 -0
  3. package/dist/accounting.d.ts.map +1 -0
  4. package/dist/accounting.js +68 -0
  5. package/dist/accounting.js.map +1 -0
  6. package/dist/agent-appearance.d.ts +6 -1
  7. package/dist/agent-appearance.d.ts.map +1 -1
  8. package/dist/agent-appearance.js +8 -2
  9. package/dist/agent-appearance.js.map +1 -1
  10. package/dist/agent-appearance.test.js +11 -0
  11. package/dist/agent-appearance.test.js.map +1 -1
  12. package/dist/agent-avatar-upload.d.ts +8 -0
  13. package/dist/agent-avatar-upload.d.ts.map +1 -0
  14. package/dist/agent-avatar-upload.js +9 -0
  15. package/dist/agent-avatar-upload.js.map +1 -0
  16. package/dist/agent-commentary.test.d.ts +2 -0
  17. package/dist/agent-commentary.test.d.ts.map +1 -0
  18. package/dist/agent-commentary.test.js +18 -0
  19. package/dist/agent-commentary.test.js.map +1 -0
  20. package/dist/ai-connection-router.d.ts +29 -20
  21. package/dist/ai-connection-router.d.ts.map +1 -1
  22. package/dist/ai-connections.d.ts +67 -5
  23. package/dist/ai-connections.d.ts.map +1 -1
  24. package/dist/ai-connections.js +25 -17
  25. package/dist/ai-connections.js.map +1 -1
  26. package/dist/ai-provider-routing.d.ts +42 -0
  27. package/dist/ai-provider-routing.d.ts.map +1 -0
  28. package/dist/ai-provider-routing.js +125 -0
  29. package/dist/ai-provider-routing.js.map +1 -0
  30. package/dist/app-definitions/airtable.json +39 -0
  31. package/dist/app-definitions/anthropic.json +3 -0
  32. package/dist/app-definitions/bedrock.json +53 -0
  33. package/dist/app-definitions/bitly.json +17 -12
  34. package/dist/app-definitions/calendly.json +46 -0
  35. package/dist/app-definitions/chat-completions-api.json +53 -0
  36. package/dist/app-definitions/clickup.json +53 -0
  37. package/dist/app-definitions/context7.json +13 -5
  38. package/dist/app-definitions/enterpret.json +92 -0
  39. package/dist/app-definitions/exa.json +34 -0
  40. package/dist/app-definitions/firecrawl.json +93 -0
  41. package/dist/app-definitions/gauge.json +94 -0
  42. package/dist/app-definitions/github-code-review-bot.json +1 -1
  43. package/dist/app-definitions/google.json +55 -0
  44. package/dist/app-definitions/gsc-wizard.json +78 -0
  45. package/dist/app-definitions/hugging-face.json +22 -0
  46. package/dist/app-definitions/klaviyo.json +59 -0
  47. package/dist/app-definitions/linear.json +45 -2
  48. package/dist/app-definitions/local.json +53 -0
  49. package/dist/app-definitions/make.json +53 -1
  50. package/dist/app-definitions/messages-api.json +53 -0
  51. package/dist/app-definitions/monday.json +46 -0
  52. package/dist/app-definitions/openai.json +3 -0
  53. package/dist/app-definitions/openrouter.json +3 -0
  54. package/dist/app-definitions/parallel-search.json +35 -0
  55. package/dist/app-definitions/resend.json +3 -3
  56. package/dist/app-definitions/responses-api.json +53 -0
  57. package/dist/app-definitions/sentry.json +1 -1
  58. package/dist/app-definitions/superagent.json +57 -0
  59. package/dist/app-definitions/tavily.json +47 -0
  60. package/dist/app-definitions/telem.json +144 -0
  61. package/dist/app-definitions/windsor-ai.json +80 -0
  62. package/dist/app-definitions/xai.json +3 -0
  63. package/dist/app-definitions-url.test.js +11 -1
  64. package/dist/app-definitions-url.test.js.map +1 -1
  65. package/dist/app-definitions.d.ts.map +1 -1
  66. package/dist/app-definitions.generated.d.ts.map +1 -1
  67. package/dist/app-definitions.generated.js +81 -61
  68. package/dist/app-definitions.generated.js.map +1 -1
  69. package/dist/app-definitions.js +20 -11
  70. package/dist/app-definitions.js.map +1 -1
  71. package/dist/app-definitions.test.js +261 -14
  72. package/dist/app-definitions.test.js.map +1 -1
  73. package/dist/connection-instructions.test.js +1 -0
  74. package/dist/connection-instructions.test.js.map +1 -1
  75. package/dist/connection-routing.d.ts +3 -1
  76. package/dist/connection-routing.d.ts.map +1 -1
  77. package/dist/connection-routing.js +13 -0
  78. package/dist/connection-routing.js.map +1 -1
  79. package/dist/constants.d.ts +3 -3
  80. package/dist/constants.d.ts.map +1 -1
  81. package/dist/constants.js +3 -2
  82. package/dist/constants.js.map +1 -1
  83. package/dist/customer-success.d.ts +58 -0
  84. package/dist/customer-success.d.ts.map +1 -0
  85. package/dist/customer-success.js +160 -0
  86. package/dist/customer-success.js.map +1 -0
  87. package/dist/decision-models.d.ts +134 -0
  88. package/dist/decision-models.d.ts.map +1 -0
  89. package/dist/decision-models.js +43 -0
  90. package/dist/decision-models.js.map +1 -0
  91. package/dist/dot-invitations.d.ts +34 -0
  92. package/dist/dot-invitations.d.ts.map +1 -0
  93. package/dist/dot-invitations.js +2 -0
  94. package/dist/dot-invitations.js.map +1 -0
  95. package/dist/easy-mcp-connectors.test.d.ts +2 -0
  96. package/dist/easy-mcp-connectors.test.d.ts.map +1 -0
  97. package/dist/easy-mcp-connectors.test.js +63 -0
  98. package/dist/easy-mcp-connectors.test.js.map +1 -0
  99. package/dist/external-agent-guidance.d.ts +5 -0
  100. package/dist/external-agent-guidance.d.ts.map +1 -0
  101. package/dist/external-agent-guidance.js +5 -0
  102. package/dist/external-agent-guidance.js.map +1 -0
  103. package/dist/fast-response.d.ts +54 -0
  104. package/dist/fast-response.d.ts.map +1 -0
  105. package/dist/fast-response.js +28 -0
  106. package/dist/fast-response.js.map +1 -0
  107. package/dist/feature-catalog.d.ts.map +1 -1
  108. package/dist/feature-catalog.js +29 -1
  109. package/dist/feature-catalog.js.map +1 -1
  110. package/dist/index.d.ts +24 -4
  111. package/dist/index.d.ts.map +1 -1
  112. package/dist/index.js +20 -3
  113. package/dist/index.js.map +1 -1
  114. package/dist/mcp-setup.d.ts +17 -0
  115. package/dist/mcp-setup.d.ts.map +1 -0
  116. package/dist/mcp-setup.js +59 -0
  117. package/dist/mcp-setup.js.map +1 -0
  118. package/dist/money.d.ts +20 -0
  119. package/dist/money.d.ts.map +1 -0
  120. package/dist/money.js +58 -0
  121. package/dist/money.js.map +1 -0
  122. package/dist/primary-agent.d.ts +12 -0
  123. package/dist/primary-agent.d.ts.map +1 -0
  124. package/dist/primary-agent.js +5 -0
  125. package/dist/primary-agent.js.map +1 -0
  126. package/dist/public-mcp.d.ts +69 -0
  127. package/dist/public-mcp.d.ts.map +1 -0
  128. package/dist/public-mcp.js +12 -0
  129. package/dist/public-mcp.js.map +1 -0
  130. package/dist/self-serve-mcp-research.json +18 -4
  131. package/dist/slack-app-manifest.d.ts +128 -0
  132. package/dist/slack-app-manifest.d.ts.map +1 -0
  133. package/dist/slack-app-manifest.js +88 -0
  134. package/dist/slack-app-manifest.js.map +1 -0
  135. package/dist/slack-app-manifest.test.d.ts +2 -0
  136. package/dist/slack-app-manifest.test.d.ts.map +1 -0
  137. package/dist/slack-app-manifest.test.js +44 -0
  138. package/dist/slack-app-manifest.test.js.map +1 -0
  139. package/dist/slack-tools.js +2 -2
  140. package/dist/slack-tools.js.map +1 -1
  141. package/dist/subscriptions.d.ts +104 -0
  142. package/dist/subscriptions.d.ts.map +1 -0
  143. package/dist/subscriptions.js +40 -0
  144. package/dist/subscriptions.js.map +1 -0
  145. package/dist/types/agent-lifecycle.d.ts +27 -0
  146. package/dist/types/agent-lifecycle.d.ts.map +1 -0
  147. package/dist/types/agent-lifecycle.js +6 -0
  148. package/dist/types/agent-lifecycle.js.map +1 -0
  149. package/dist/types/agent.d.ts +11 -0
  150. package/dist/types/agent.d.ts.map +1 -1
  151. package/dist/types/agent.js.map +1 -1
  152. package/dist/types/app-definition.d.ts +6 -2
  153. package/dist/types/app-definition.d.ts.map +1 -1
  154. package/dist/types/budget.d.ts +10 -1
  155. package/dist/types/budget.d.ts.map +1 -1
  156. package/dist/types/chat-channels.d.ts +31 -2
  157. package/dist/types/chat-channels.d.ts.map +1 -1
  158. package/dist/types/chat-channels.js +1 -0
  159. package/dist/types/chat-channels.js.map +1 -1
  160. package/dist/types/chat-github.d.ts +26 -1
  161. package/dist/types/chat-github.d.ts.map +1 -1
  162. package/dist/types/chat-github.js +2 -0
  163. package/dist/types/chat-github.js.map +1 -1
  164. package/dist/types/connection-intent.d.ts +3 -1
  165. package/dist/types/connection-intent.d.ts.map +1 -1
  166. package/dist/types/cost.d.ts +53 -3
  167. package/dist/types/cost.d.ts.map +1 -1
  168. package/dist/types/execution-projection.d.ts +2 -0
  169. package/dist/types/execution-projection.d.ts.map +1 -1
  170. package/dist/types/execution-projection.js.map +1 -1
  171. package/dist/types/finance.d.ts +35 -0
  172. package/dist/types/finance.d.ts.map +1 -1
  173. package/dist/types/github-app-setup.d.ts +55 -0
  174. package/dist/types/github-app-setup.d.ts.map +1 -0
  175. package/dist/types/github-app-setup.js +2 -0
  176. package/dist/types/github-app-setup.js.map +1 -0
  177. package/dist/types/heartbeat.d.ts +6 -0
  178. package/dist/types/heartbeat.d.ts.map +1 -1
  179. package/dist/types/index.d.ts +7 -6
  180. package/dist/types/index.d.ts.map +1 -1
  181. package/dist/types/index.js +2 -1
  182. package/dist/types/index.js.map +1 -1
  183. package/dist/types/instance.d.ts +25 -0
  184. package/dist/types/instance.d.ts.map +1 -1
  185. package/dist/types/instance.js +5 -0
  186. package/dist/types/instance.js.map +1 -1
  187. package/dist/types/issue.d.ts +72 -2
  188. package/dist/types/issue.d.ts.map +1 -1
  189. package/dist/types/plugin.d.ts +2 -0
  190. package/dist/types/plugin.d.ts.map +1 -1
  191. package/dist/types/project.d.ts +20 -0
  192. package/dist/types/project.d.ts.map +1 -1
  193. package/dist/types/quota.d.ts +4 -0
  194. package/dist/types/quota.d.ts.map +1 -1
  195. package/dist/types/tool-access.d.ts +16 -1
  196. package/dist/types/tool-access.d.ts.map +1 -1
  197. package/dist/types/tool-access.js.map +1 -1
  198. package/dist/types/user-profile.d.ts +1 -1
  199. package/dist/types/user-profile.d.ts.map +1 -1
  200. package/dist/types/voice-sessions.d.ts +103 -0
  201. package/dist/types/voice-sessions.d.ts.map +1 -0
  202. package/dist/types/voice-sessions.js +5 -0
  203. package/dist/types/voice-sessions.js.map +1 -0
  204. package/dist/validators/adapter-auth-session.d.ts +0 -2
  205. package/dist/validators/adapter-auth-session.d.ts.map +1 -1
  206. package/dist/validators/agent-commentary.d.ts +25 -0
  207. package/dist/validators/agent-commentary.d.ts.map +1 -0
  208. package/dist/validators/agent-commentary.js +12 -0
  209. package/dist/validators/agent-commentary.js.map +1 -0
  210. package/dist/validators/agent.d.ts +19 -5
  211. package/dist/validators/agent.d.ts.map +1 -1
  212. package/dist/validators/agent.js +3 -3
  213. package/dist/validators/agent.js.map +1 -1
  214. package/dist/validators/agent.test.d.ts +2 -0
  215. package/dist/validators/agent.test.d.ts.map +1 -0
  216. package/dist/validators/agent.test.js +27 -0
  217. package/dist/validators/agent.test.js.map +1 -0
  218. package/dist/validators/app-definition.d.ts +92 -0
  219. package/dist/validators/app-definition.d.ts.map +1 -1
  220. package/dist/validators/app-definition.js +8 -5
  221. package/dist/validators/app-definition.js.map +1 -1
  222. package/dist/validators/budget.d.ts +10 -5
  223. package/dist/validators/budget.d.ts.map +1 -1
  224. package/dist/validators/budget.js +9 -6
  225. package/dist/validators/budget.js.map +1 -1
  226. package/dist/validators/chat-channels.d.ts +26 -5
  227. package/dist/validators/chat-channels.d.ts.map +1 -1
  228. package/dist/validators/chat-channels.js +20 -6
  229. package/dist/validators/chat-channels.js.map +1 -1
  230. package/dist/validators/chat-github.d.ts +16 -6
  231. package/dist/validators/chat-github.d.ts.map +1 -1
  232. package/dist/validators/chat-github.js +4 -1
  233. package/dist/validators/chat-github.js.map +1 -1
  234. package/dist/validators/claude-setup-token-session.d.ts +0 -2
  235. package/dist/validators/claude-setup-token-session.d.ts.map +1 -1
  236. package/dist/validators/company-portability.d.ts +2 -0
  237. package/dist/validators/company-portability.d.ts.map +1 -1
  238. package/dist/validators/company-skill.js +1 -1
  239. package/dist/validators/company-skill.js.map +1 -1
  240. package/dist/validators/cost.d.ts +176 -6
  241. package/dist/validators/cost.d.ts.map +1 -1
  242. package/dist/validators/cost.js +17 -6
  243. package/dist/validators/cost.js.map +1 -1
  244. package/dist/validators/finance.d.ts +7 -4
  245. package/dist/validators/finance.d.ts.map +1 -1
  246. package/dist/validators/finance.js +4 -2
  247. package/dist/validators/finance.js.map +1 -1
  248. package/dist/validators/index.d.ts +5 -4
  249. package/dist/validators/index.d.ts.map +1 -1
  250. package/dist/validators/index.js +5 -4
  251. package/dist/validators/index.js.map +1 -1
  252. package/dist/validators/instance.d.ts +28 -0
  253. package/dist/validators/instance.d.ts.map +1 -1
  254. package/dist/validators/instance.js +32 -2
  255. package/dist/validators/instance.js.map +1 -1
  256. package/dist/validators/instance.test.js +35 -1
  257. package/dist/validators/instance.test.js.map +1 -1
  258. package/dist/validators/issue.d.ts +40 -3
  259. package/dist/validators/issue.d.ts.map +1 -1
  260. package/dist/validators/issue.js +23 -3
  261. package/dist/validators/issue.js.map +1 -1
  262. package/dist/validators/issue.test.js +60 -1
  263. package/dist/validators/issue.test.js.map +1 -1
  264. package/dist/validators/plugin.d.ts +2 -0
  265. package/dist/validators/plugin.d.ts.map +1 -1
  266. package/dist/validators/plugin.js +4 -0
  267. package/dist/validators/plugin.js.map +1 -1
  268. package/dist/validators/plugin.test.js +5 -0
  269. package/dist/validators/plugin.test.js.map +1 -1
  270. package/dist/validators/project.d.ts +16 -0
  271. package/dist/validators/project.d.ts.map +1 -1
  272. package/dist/validators/project.js +5 -0
  273. package/dist/validators/project.js.map +1 -1
  274. package/dist/validators/status-card.js +2 -2
  275. package/dist/validators/status-card.js.map +1 -1
  276. package/dist/validators/text.d.ts.map +1 -1
  277. package/dist/validators/text.js +5 -0
  278. package/dist/validators/text.js.map +1 -1
  279. package/dist/validators/tool-access.d.ts +9 -0
  280. package/dist/validators/tool-access.d.ts.map +1 -1
  281. package/dist/validators/tool-access.js +4 -1
  282. package/dist/validators/tool-access.js.map +1 -1
  283. package/dist/validators/voice-sessions.d.ts +27 -0
  284. package/dist/validators/voice-sessions.d.ts.map +1 -0
  285. package/dist/validators/voice-sessions.js +16 -0
  286. package/dist/validators/voice-sessions.js.map +1 -0
  287. package/package.json +1 -1
@@ -0,0 +1,125 @@
1
+ import { z } from "zod";
2
+ /** Value-free routing stored on the connection, never supplied by an agent binding. */
3
+ export const aiProviderRoutingSchema = z
4
+ .object({
5
+ kind: z.enum(["openrouter", "bedrock", "gateway", "local"]),
6
+ protocol: z.enum(["responses", "messages", "chat", "bedrock"]),
7
+ baseUrl: z.string().trim().max(2048).optional(),
8
+ auth: z
9
+ .enum(["bearer", "api_key", "none"])
10
+ .default("bearer"),
11
+ region: z
12
+ .string()
13
+ .regex(/^[a-z]{2}(?:-[a-z]+)+-\d$/)
14
+ .optional(),
15
+ models: z
16
+ .array(z
17
+ .object({
18
+ id: z.string().trim().min(1).max(256),
19
+ label: z.string().trim().max(160).optional(),
20
+ })
21
+ .strict())
22
+ .max(200)
23
+ .default([]),
24
+ })
25
+ .strict()
26
+ .superRefine((route, ctx) => {
27
+ const invalid = (message) => ctx.addIssue({ code: "custom", message });
28
+ if (route.kind === "bedrock") {
29
+ if (route.protocol !== "bedrock" ||
30
+ !route.region ||
31
+ route.auth !== "bearer" ||
32
+ route.baseUrl)
33
+ invalid("Bedrock requires a region and a Bedrock API key.");
34
+ }
35
+ else if (route.protocol === "bedrock" ||
36
+ route.region)
37
+ invalid("AWS settings require Bedrock.");
38
+ if (route.kind === "openrouter" &&
39
+ (route.baseUrl || route.auth !== "bearer"))
40
+ invalid("OpenRouter uses its official endpoint and an API key.");
41
+ if (route.auth === "api_key" && route.protocol !== "messages")
42
+ invalid("API-key header authentication requires Anthropic Messages.");
43
+ if (route.kind === "gateway" || route.kind === "local") {
44
+ try {
45
+ const url = new URL(route.baseUrl ?? "");
46
+ const loopback = ["localhost", "127.0.0.1", "[::1]"].includes(url.hostname);
47
+ if (url.username ||
48
+ url.password ||
49
+ url.search ||
50
+ url.hash ||
51
+ (url.protocol !== "https:" && !(url.protocol === "http:" && loopback)))
52
+ throw new Error();
53
+ if (route.kind === "local" && !loopback)
54
+ invalid("A local endpoint must use localhost or a loopback address.");
55
+ }
56
+ catch {
57
+ invalid("Enter an HTTPS base URL without credentials, query parameters, or a fragment. Local endpoints may use HTTP.");
58
+ }
59
+ }
60
+ });
61
+ export function aiRoutingHarness(adapter, provider, acpxAgent) {
62
+ if (adapter !== "paperclip_runner")
63
+ return adapter;
64
+ const runner = provider === "acpx" && (acpxAgent === "claude" || acpxAgent === "grok")
65
+ ? acpxAgent
66
+ : provider;
67
+ return ({
68
+ claude: "claude_local",
69
+ codex: "codex_local",
70
+ opencode: "opencode_local",
71
+ grok: "grok_local",
72
+ }[String(runner)] ?? "unsupported");
73
+ }
74
+ export function isAiRoutingCompatible(route, harness) {
75
+ if (route.kind === "bedrock")
76
+ return harness === "claude_local";
77
+ if (route.kind === "openrouter")
78
+ return [
79
+ "claude_local",
80
+ "codex_local",
81
+ "opencode_local",
82
+ "hermes_local",
83
+ ].includes(harness);
84
+ if (route.protocol === "responses")
85
+ return harness === "codex_local";
86
+ if (route.protocol === "messages")
87
+ return harness === "claude_local";
88
+ return ["opencode_local", "hermes_local"].includes(harness);
89
+ }
90
+ export function aiRoutingBaseUrl(route, harness) {
91
+ return route.kind === "openrouter"
92
+ ? `https://openrouter.ai/api${harness === "claude_local" ? "" : "/v1"}`
93
+ : (route.baseUrl ?? "").replace(/\/+$/, "");
94
+ }
95
+ /** OpenCode names models with a provider prefix; other harnesses use the raw ID. */
96
+ export function aiRoutingModel(route, harness, model) {
97
+ if (!model || harness !== "opencode_local")
98
+ return model;
99
+ const prefix = route.kind === "openrouter" ? "openrouter" : "paperclip";
100
+ return model.startsWith(`${prefix}/`) ? model : `${prefix}/${model}`;
101
+ }
102
+ /** Catalog identity is derived from routing, including accounts saved before these rows existed. */
103
+ export function aiConnectionCatalogSlug(provider, routing) {
104
+ if (routing?.kind === "gateway") {
105
+ return routing.protocol === "messages" ? "messages-api"
106
+ : routing.protocol === "chat" ? "chat-completions-api" : "responses-api";
107
+ }
108
+ return routing?.kind ?? provider;
109
+ }
110
+ /** Direct catalog setup presets; legacy gateway links still open their existing setup. */
111
+ export function aiProviderSetupPreset(source) {
112
+ switch (source) {
113
+ case "responses-api": return { provider: "gateway", protocol: "responses", label: "Responses API" };
114
+ case "messages-api": return { provider: "gateway", protocol: "messages", label: "Messages API" };
115
+ case "chat-completions-api": return { provider: "gateway", protocol: "chat", label: "Chat Completions API" };
116
+ case "google-ai": return { provider: "google" };
117
+ case "google":
118
+ case "openrouter":
119
+ case "bedrock":
120
+ case "gateway":
121
+ case "local": return { provider: source };
122
+ default: return undefined;
123
+ }
124
+ }
125
+ //# sourceMappingURL=ai-provider-routing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-provider-routing.js","sourceRoot":"","sources":["../src/ai-provider-routing.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@
20
20
  "key": "mcp-oauth",
21
21
  "transport": "mcp_remote",
22
22
  "auth": "oauth",
23
+ "oauthClientRegistration": "dcr",
23
24
  "ownershipModes": [
24
25
  "dcr"
25
26
  ],
@@ -45,6 +46,44 @@
45
46
  "warnings": [
46
47
  "An Airtable account; enterprise administrators may need to allowlist the client."
47
48
  ]
49
+ },
50
+ {
51
+ "key": "mcp-pat",
52
+ "transport": "mcp_remote",
53
+ "auth": "api_key",
54
+ "ownershipModes": [
55
+ "customer"
56
+ ],
57
+ "whenToUse": "Use a personal access token when browser sign-in is not suitable.",
58
+ "defaults": {
59
+ "serverUrl": "https://mcp.airtable.com/mcp"
60
+ },
61
+ "guidanceMd": "Create an Airtable personal access token with the scopes and base resources required for the actions you intend to allow. MCP calls inherit your Airtable role and base permissions; organization allowlisting may still apply.",
62
+ "riskTier": "S3",
63
+ "label": "Use a personal access token",
64
+ "credentialFields": [
65
+ {
66
+ "key": "authorization",
67
+ "label": "Airtable personal access token",
68
+ "type": "password",
69
+ "required": true,
70
+ "placeholder": "pat...",
71
+ "secret": true,
72
+ "helperMd": "Choose provider scopes and resource bases for intended actions; token and user/base role permissions both restrict access."
73
+ }
74
+ ],
75
+ "keyPlacement": {
76
+ "location": "header",
77
+ "name": "Authorization",
78
+ "prefix": "Bearer "
79
+ },
80
+ "consoleLinks": {
81
+ "docs": "https://support.airtable.com/articles/9897799762-using-the-airtable-mcp-server",
82
+ "keys": "https://airtable.com/create/tokens"
83
+ },
84
+ "warnings": [
85
+ "Use a disposable or development base for initial write qualification. Enterprise admins may need to allowlist MCP access."
86
+ ]
48
87
  }
49
88
  ]
50
89
  }
@@ -71,5 +71,8 @@
71
71
  "name": "ANTHROPIC_API_KEY"
72
72
  }
73
73
  }
74
+ ],
75
+ "tags": [
76
+ "model-provider"
74
77
  ]
75
78
  }
@@ -0,0 +1,53 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "slug": "bedrock",
4
+ "name": "Amazon Bedrock",
5
+ "description": "Use Claude through Amazon Bedrock with a Bedrock API key and AWS region.",
6
+ "categories": [
7
+ "ai"
8
+ ],
9
+ "branding": {
10
+ "logoUrl": "/brands/apps/bedrock.svg"
11
+ },
12
+ "urlPatterns": [],
13
+ "methods": [
14
+ {
15
+ "key": "ai-api_key",
16
+ "label": "Amazon Bedrock API key",
17
+ "purpose": "ai",
18
+ "transport": "runtime_auth",
19
+ "auth": "api_key",
20
+ "ai": {
21
+ "provider": "anthropic",
22
+ "method": "api_key"
23
+ },
24
+ "grantKinds": [
25
+ "user",
26
+ "organization"
27
+ ],
28
+ "ownershipModes": [
29
+ "customer"
30
+ ],
31
+ "whenToUse": "Use Claude through Amazon Bedrock with a Bedrock API key and AWS region.",
32
+ "guidanceMd": "Use your personal account or an explicitly shared company account.",
33
+ "riskTier": "S3",
34
+ "credentialFields": [
35
+ {
36
+ "key": "apiKey",
37
+ "label": "API key",
38
+ "type": "password",
39
+ "required": true,
40
+ "placeholder": "Enter API key",
41
+ "secret": true
42
+ }
43
+ ],
44
+ "keyPlacement": {
45
+ "location": "env",
46
+ "name": "AWS_BEARER_TOKEN_BEDROCK"
47
+ }
48
+ }
49
+ ],
50
+ "tags": [
51
+ "model-provider"
52
+ ]
53
+ }
@@ -25,16 +25,20 @@
25
25
  ],
26
26
  "whenToUse": "Use browser sign-in for the provider-hosted MCP server.",
27
27
  "defaults": {
28
- "serverUrl": "https://api-ssl.bitly.com/v4/mcp"
28
+ "serverUrl": "https://api-ssl.bitly.com/v4/mcp",
29
+ "scopesHint": [
30
+ "mcp.all"
31
+ ]
29
32
  },
30
- "guidanceMd": "Connect Bitly in the browser. A Bitly account with either browser authorization or an API token.",
31
- "riskTier": "S2",
33
+ "guidanceMd": "Connect Bitly in the browser. Choose only the intended workspace. Review the discovered actions and keep writes and destructive operations disabled until explicitly needed.",
34
+ "riskTier": "S4",
32
35
  "label": "Sign in with Bitly",
33
36
  "consoleLinks": {
34
- "docs": "https://dev.bitly.com/bitly-mcp/overview/quickstart/"
37
+ "docs": "https://dev.bitly.com/bitly-mcp/using-the-bitly-mcp-server/configuration-details/"
35
38
  },
36
39
  "warnings": [
37
- "A Bitly account with either browser authorization or an API token."
40
+ "The mcp.all scope covers Bitly's broad MCP catalog, including link and QR management, analytics, groups, custom domains, and Bitly Sites.",
41
+ "The catalog includes publishing and deletion operations, including permanent short-link deletion, site deletion, and custom-domain changes. Review the full catalog and keep write and destructive actions Off during read-only qualification."
38
42
  ]
39
43
  },
40
44
  {
@@ -44,12 +48,12 @@
44
48
  "ownershipModes": [
45
49
  "customer"
46
50
  ],
47
- "whenToUse": "Use a restricted customer-owned key when browser sign-in is not suitable.",
51
+ "whenToUse": "Use a customer-created Bitly API token when browser sign-in is not suitable.",
48
52
  "defaults": {
49
53
  "serverUrl": "https://api-ssl.bitly.com/v4/mcp"
50
54
  },
51
- "guidanceMd": "Use a customer-created Bitly key. A Bitly account with either browser authorization or an API token.",
52
- "riskTier": "S2",
55
+ "guidanceMd": "Generate a Bitly API token under Settings → API. The token may authorize the MCP's full catalog under your Bitly account; Paperclip cannot narrow the token. Review discovered actions and keep writes and destructive operations disabled until explicitly needed.",
56
+ "riskTier": "S4",
53
57
  "label": "Use an API key",
54
58
  "credentialFields": [
55
59
  {
@@ -59,7 +63,7 @@
59
63
  "required": true,
60
64
  "placeholder": "Paste your Bitly API token",
61
65
  "secret": true,
62
- "helperMd": "Create/manage links in authorized groups. Create a key with read and write permissions for these actions; Paperclip cannot increase an existing key’s permissions."
66
+ "helperMd": "A Bitly API token from Settings → API is documented for MCP bearer auth, but no restriction scope is documented; treat it as capable of the full MCP catalog under that account. Paperclip cannot narrow the token."
63
67
  }
64
68
  ],
65
69
  "keyPlacement": {
@@ -68,11 +72,12 @@
68
72
  "prefix": "Bearer "
69
73
  },
70
74
  "consoleLinks": {
71
- "keys": "https://dev.bitly.com/bitly-mcp/overview/quickstart/",
72
- "docs": "https://dev.bitly.com/bitly-mcp/overview/quickstart/"
75
+ "keys": "https://bitly.com/settings/api",
76
+ "docs": "https://dev.bitly.com/bitly-mcp/using-the-bitly-mcp-server/configuration-details/"
73
77
  },
74
78
  "warnings": [
75
- "A Bitly account with either browser authorization or an API token."
79
+ "This API token is not documented as a restricted MCP token. It may authorize Bitly's broad MCP catalog, including link creation/update/deletion, QR codes, Sites publishing/deletion, and custom-domain operations.",
80
+ "Review the discovered catalog and keep write and destructive actions Off during read-only qualification."
76
81
  ]
77
82
  }
78
83
  ]
@@ -0,0 +1,46 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "slug": "calendly",
4
+ "name": "Calendly",
5
+ "description": "Review Calendly event types and availability, and use supported scheduling actions.",
6
+ "categories": [
7
+ "productivity"
8
+ ],
9
+ "featured": false,
10
+ "branding": {
11
+ "logoUrl": "/brands/apps/calendly.png"
12
+ },
13
+ "urlPatterns": [
14
+ "https://mcp.calendly.com/*"
15
+ ],
16
+ "docsUrl": "https://developer.calendly.com/docs/mcp/calendly-mcp-server",
17
+ "redirectConstraints": "https-or-loopback-http",
18
+ "methods": [
19
+ {
20
+ "key": "mcp-oauth",
21
+ "label": "Sign in with Calendly",
22
+ "transport": "mcp_remote",
23
+ "auth": "oauth",
24
+ "ownershipModes": [
25
+ "dcr"
26
+ ],
27
+ "whenToUse": "Connect the provider-hosted Calendly MCP server with browser sign-in.",
28
+ "defaults": {
29
+ "serverUrl": "https://mcp.calendly.com",
30
+ "scopesHint": [
31
+ "mcp:scheduling:read",
32
+ "mcp:scheduling:write"
33
+ ]
34
+ },
35
+ "guidanceMd": "Check the connected account, event type, timezone, availability, and attendee details before using a scheduling write. Use a test scheduling artifact only when the discovered tool explicitly supports it.",
36
+ "warnings": [
37
+ "Calendly MCP requires DCR and OAuth 2.1 authorization-code with PKCE S256. It does not support personal access tokens or manually provisioned static OAuth clients.",
38
+ "The provider advertises both scheduling read and write scopes for full access; verify the live tool catalog before enabling booking or link creation."
39
+ ],
40
+ "consoleLinks": {
41
+ "docs": "https://developer.calendly.com/docs/mcp/calendly-mcp-server"
42
+ },
43
+ "riskTier": "S3"
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,53 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "slug": "chat-completions-api",
4
+ "name": "Chat Completions API",
5
+ "description": "Connect any compatible harness to a Chat Completions-compatible provider or gateway.",
6
+ "categories": [
7
+ "ai"
8
+ ],
9
+ "branding": {
10
+ "logoUrl": "/brands/apps/api-key-generic.svg"
11
+ },
12
+ "urlPatterns": [],
13
+ "methods": [
14
+ {
15
+ "key": "ai-api_key",
16
+ "label": "Chat Completions API API key",
17
+ "purpose": "ai",
18
+ "transport": "runtime_auth",
19
+ "auth": "api_key",
20
+ "ai": {
21
+ "provider": "openai",
22
+ "method": "api_key"
23
+ },
24
+ "grantKinds": [
25
+ "user",
26
+ "organization"
27
+ ],
28
+ "ownershipModes": [
29
+ "customer"
30
+ ],
31
+ "whenToUse": "Connect any compatible harness to a Chat Completions-compatible provider or gateway.",
32
+ "guidanceMd": "Use your personal account or an explicitly shared company account.",
33
+ "riskTier": "S3",
34
+ "credentialFields": [
35
+ {
36
+ "key": "apiKey",
37
+ "label": "API key",
38
+ "type": "password",
39
+ "required": true,
40
+ "placeholder": "Enter API key",
41
+ "secret": true
42
+ }
43
+ ],
44
+ "keyPlacement": {
45
+ "location": "env",
46
+ "name": "OPENAI_API_KEY"
47
+ }
48
+ }
49
+ ],
50
+ "tags": [
51
+ "model-provider"
52
+ ]
53
+ }
@@ -0,0 +1,53 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "slug": "clickup",
4
+ "name": "ClickUp",
5
+ "description": "Search ClickUp workspaces and manage tasks, docs, and conversations through the official MCP server.",
6
+ "categories": [
7
+ "productivity"
8
+ ],
9
+ "featured": false,
10
+ "branding": {
11
+ "logoUrl": "/brands/apps/clickup.png"
12
+ },
13
+ "urlPatterns": [
14
+ "https://mcp.clickup.com/*"
15
+ ],
16
+ "docsUrl": "https://developer.clickup.com/docs/connect-an-ai-assistant-to-clickups-mcp-server",
17
+ "redirectConstraints": "https-or-loopback-http",
18
+ "methods": [
19
+ {
20
+ "key": "mcp-oauth",
21
+ "label": "Sign in with ClickUp",
22
+ "transport": "mcp_remote",
23
+ "auth": "oauth",
24
+ "ownershipModes": [
25
+ "dcr"
26
+ ],
27
+ "grantKinds": [
28
+ "user"
29
+ ],
30
+ "whenToUse": "Connect the provider-hosted ClickUp MCP server with browser sign-in.",
31
+ "defaults": {
32
+ "serverUrl": "https://mcp.clickup.com/mcp",
33
+ "scopesHint": [
34
+ "read",
35
+ "write"
36
+ ]
37
+ },
38
+ "guidanceMd": "Choose only the ClickUp workspace needed. Confirm the target list and task before changing content, starting a timer, posting a chat message, or deleting anything.",
39
+ "warnings": [
40
+ "ClickUp's MCP may expose task, document, and chat writes, time tracking, and task deletion under the signed-in user's permissions. Review the catalog and keep write and destructive actions disabled until explicitly needed.",
41
+ "Workspace usage may be subject to plan-based rolling daily MCP limits."
42
+ ],
43
+ "consoleLinks": {
44
+ "docs": "https://developer.clickup.com/docs/connect-an-ai-assistant-to-clickups-mcp-server"
45
+ },
46
+ "riskTier": "S4",
47
+ "requiredResourceFilters": [
48
+ "workspace",
49
+ "list"
50
+ ]
51
+ }
52
+ ]
53
+ }
@@ -2,7 +2,7 @@
2
2
  "schemaVersion": 1,
3
3
  "slug": "context7",
4
4
  "name": "Context7",
5
- "description": "Look up current documentation for software libraries.",
5
+ "description": "Search public library documentation and retrieve current code examples.",
6
6
  "categories": [
7
7
  "developer"
8
8
  ],
@@ -22,12 +22,20 @@
22
22
  "ownershipModes": [
23
23
  "customer"
24
24
  ],
25
- "whenToUse": "Use the provider-hosted connection for the quickest setup.",
25
+ "whenToUse": "Use the public hosted MCP server for read-only library documentation lookups.",
26
26
  "defaults": {
27
27
  "serverUrl": "https://mcp.context7.com/mcp"
28
28
  },
29
- "guidanceMd": "Connect Context7 to give agents current library documentation.",
30
- "riskTier": "S1"
29
+ "guidanceMd": "Connect Context7 to resolve public library IDs and retrieve current documentation. Anonymous access is supported with low rate limits; this method does not configure an API key. Keep queries limited to public documentation questions and do not include credentials, personal data, or proprietary code.",
30
+ "riskTier": "S1",
31
+ "consoleLinks": {
32
+ "docs": "https://context7.com/docs/api-guide"
33
+ },
34
+ "warnings": [
35
+ "Context7 processes the query text. Do not include secrets, personal information, or proprietary code.",
36
+ "Anonymous requests have low rate limits. Provider documentation says an API key raises limits and supports private repositories; this public method does not configure a key."
37
+ ]
31
38
  }
32
- ]
39
+ ],
40
+ "docsUrl": "https://context7.com/docs/api-guide"
33
41
  }
@@ -0,0 +1,92 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "slug": "enterpret",
4
+ "name": "Enterpret",
5
+ "description": "Ask questions about your customer feedback and pull verbatim quotes with citations.",
6
+ "categories": [
7
+ "analytics"
8
+ ],
9
+ "featured": false,
10
+ "branding": {
11
+ "logoUrl": "/brands/apps/enterpret.png"
12
+ },
13
+ "urlPatterns": [
14
+ "https://wisdom-api.enterpret.com/*"
15
+ ],
16
+ "methods": [
17
+ {
18
+ "key": "mcp-api-key",
19
+ "transport": "mcp_remote",
20
+ "auth": "api_key",
21
+ "ownershipModes": [
22
+ "customer"
23
+ ],
24
+ "whenToUse": "Recommended. Use an organization auth token from Settings → Enterpret MCP. This is the primary, store-ready connection method.",
25
+ "defaults": {
26
+ "serverUrl": "https://wisdom-api.enterpret.com/server/mcp"
27
+ },
28
+ "guidanceMd": "Generate an auth token in Enterpret under Settings, Enterpret MCP, then paste it below. One token belongs to one Enterpret organization. This is the recommended connection method.",
29
+ "riskTier": "S3",
30
+ "label": "Use an auth token",
31
+ "grantKinds": [
32
+ "organization"
33
+ ],
34
+ "credentialFields": [
35
+ {
36
+ "key": "authorization",
37
+ "label": "Enterpret auth token",
38
+ "type": "password",
39
+ "required": true,
40
+ "placeholder": "Paste the token from Settings, Enterpret MCP",
41
+ "secret": true,
42
+ "helperMd": "An organization auth token can read that organization's customer feedback. Use a token from Settings > Enterpret MCP and check its displayed expiry there."
43
+ }
44
+ ],
45
+ "keyPlacement": {
46
+ "location": "header",
47
+ "name": "Authorization",
48
+ "prefix": "Bearer "
49
+ },
50
+ "consoleLinks": {
51
+ "docs": "https://enterpret.support.site/article/enterpret-mcp-server"
52
+ },
53
+ "warnings": [
54
+ "Check your auth token's expiry in Enterpret Settings > Enterpret MCP and replace it before it lapses.",
55
+ "This connection reads customer feedback, including verbatim quotes with speaker attribution.",
56
+ "run_graph_query starts as Ask first. Cypher is not established as read-only even when Enterpret advertises readOnlyHint."
57
+ ]
58
+ },
59
+ {
60
+ "key": "mcp-oauth",
61
+ "transport": "mcp_remote",
62
+ "auth": "oauth",
63
+ "ownershipModes": [
64
+ "dcr"
65
+ ],
66
+ "whenToUse": "Use browser sign-in when each person should query feedback under their own Enterpret account.",
67
+ "defaults": {
68
+ "serverUrl": "https://wisdom-api.enterpret.com/server/mcp",
69
+ "scopesHint": [
70
+ "mcp:read"
71
+ ]
72
+ },
73
+ "guidanceMd": "Sign in to Enterpret in the browser to query the official read-only MCP. Each person connects with their own Enterpret account, and Enterpret attributes their queries individually.",
74
+ "riskTier": "S3",
75
+ "label": "Sign in with Enterpret",
76
+ "grantKinds": [
77
+ "user"
78
+ ],
79
+ "consoleLinks": {
80
+ "docs": "https://enterpret.support.site/article/enterpret-mcp-server"
81
+ },
82
+ "warnings": [
83
+ "The official Enterpret MCP is read-only. Enterpret previously reported broader OAuth scopes, including mcp:write and email, than Paperclip requested. Enterpret is correcting this scope reporting; it does not establish access to the separate beta Agent MCP.",
84
+ "After revocation, Enterpret may cache token validity for up to 24 hours. Disconnect this connection to stop Paperclip access immediately. Enterpret is reducing this delay.",
85
+ "You need an Enterpret account with access to your organization's feedback.",
86
+ "This connection reads customer feedback, including verbatim quotes with speaker attribution."
87
+ ]
88
+ }
89
+ ],
90
+ "docsUrl": "https://enterpret.support.site/article/enterpret-mcp-server",
91
+ "redirectConstraints": "https-or-loopback-http"
92
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "slug": "exa",
4
+ "name": "Exa",
5
+ "description": "Search the public web and read source pages with Exa.",
6
+ "categories": [
7
+ "data"
8
+ ],
9
+ "featured": false,
10
+ "branding": {
11
+ "logoUrl": "/brands/apps/exa.svg"
12
+ },
13
+ "urlPatterns": [
14
+ "https://mcp.exa.ai/*"
15
+ ],
16
+ "docsUrl": "https://exa.ai/docs/get-started/exa-mcp",
17
+ "methods": [
18
+ {
19
+ "key": "public-search",
20
+ "label": "Use public Exa search",
21
+ "transport": "mcp_remote",
22
+ "auth": "none",
23
+ "ownershipModes": [
24
+ "customer"
25
+ ],
26
+ "whenToUse": "Use Exa’s public, keyless search MCP.",
27
+ "defaults": {
28
+ "serverUrl": "https://mcp.exa.ai/mcp"
29
+ },
30
+ "guidanceMd": "The public MCP route provides web search and page fetching. Keep citations with results. Account-authenticated Agent and advanced tools are not included in this method.",
31
+ "riskTier": "S2"
32
+ }
33
+ ]
34
+ }