opencode-agora 0.3.0 → 0.4.1

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 (280) hide show
  1. package/README.md +86 -255
  2. package/dist/atomic-write.d.ts +10 -0
  3. package/dist/atomic-write.d.ts.map +1 -0
  4. package/dist/atomic-write.js +23 -0
  5. package/dist/atomic-write.js.map +1 -0
  6. package/dist/auth/refresh.d.ts +17 -0
  7. package/dist/auth/refresh.d.ts.map +1 -0
  8. package/dist/auth/refresh.js +50 -0
  9. package/dist/auth/refresh.js.map +1 -0
  10. package/dist/cli/app.d.ts +13 -18
  11. package/dist/cli/app.d.ts.map +1 -1
  12. package/dist/cli/app.js +184 -1187
  13. package/dist/cli/app.js.map +1 -1
  14. package/dist/cli/chat-renderer.d.ts +31 -0
  15. package/dist/cli/chat-renderer.d.ts.map +1 -0
  16. package/dist/cli/chat-renderer.js +275 -0
  17. package/dist/cli/chat-renderer.js.map +1 -0
  18. package/dist/cli/commands/browse.d.ts +4 -0
  19. package/dist/cli/commands/browse.d.ts.map +1 -0
  20. package/dist/cli/commands/browse.js +80 -0
  21. package/dist/cli/commands/browse.js.map +1 -0
  22. package/dist/cli/commands/chat.d.ts +4 -0
  23. package/dist/cli/commands/chat.d.ts.map +1 -0
  24. package/dist/cli/commands/chat.js +125 -0
  25. package/dist/cli/commands/chat.js.map +1 -0
  26. package/dist/cli/commands/community.d.ts +12 -0
  27. package/dist/cli/commands/community.d.ts.map +1 -0
  28. package/dist/cli/commands/community.js +453 -0
  29. package/dist/cli/commands/community.js.map +1 -0
  30. package/dist/cli/commands/export.d.ts +3 -0
  31. package/dist/cli/commands/export.d.ts.map +1 -0
  32. package/dist/cli/commands/export.js +108 -0
  33. package/dist/cli/commands/export.js.map +1 -0
  34. package/dist/cli/commands/init.d.ts +4 -0
  35. package/dist/cli/commands/init.d.ts.map +1 -0
  36. package/dist/cli/commands/init.js +299 -0
  37. package/dist/cli/commands/init.js.map +1 -0
  38. package/dist/cli/commands/learn.d.ts +4 -0
  39. package/dist/cli/commands/learn.d.ts.map +1 -0
  40. package/dist/cli/commands/learn.js +62 -0
  41. package/dist/cli/commands/learn.js.map +1 -0
  42. package/dist/cli/commands/marketplace.d.ts +9 -0
  43. package/dist/cli/commands/marketplace.d.ts.map +1 -0
  44. package/dist/cli/commands/marketplace.js +321 -0
  45. package/dist/cli/commands/marketplace.js.map +1 -0
  46. package/dist/cli/commands/notify.d.ts +3 -0
  47. package/dist/cli/commands/notify.d.ts.map +1 -0
  48. package/dist/cli/commands/notify.js +59 -0
  49. package/dist/cli/commands/notify.js.map +1 -0
  50. package/dist/cli/commands/operations.d.ts +16 -0
  51. package/dist/cli/commands/operations.d.ts.map +1 -0
  52. package/dist/cli/commands/operations.js +1006 -0
  53. package/dist/cli/commands/operations.js.map +1 -0
  54. package/dist/cli/commands/ping.d.ts +3 -0
  55. package/dist/cli/commands/ping.d.ts.map +1 -0
  56. package/dist/cli/commands/ping.js +56 -0
  57. package/dist/cli/commands/ping.js.map +1 -0
  58. package/dist/cli/commands/today.d.ts +3 -0
  59. package/dist/cli/commands/today.d.ts.map +1 -0
  60. package/dist/cli/commands/today.js +142 -0
  61. package/dist/cli/commands/today.js.map +1 -0
  62. package/dist/cli/commands/types.d.ts +5 -0
  63. package/dist/cli/commands/types.d.ts.map +1 -0
  64. package/dist/cli/commands/types.js +2 -0
  65. package/dist/cli/commands/types.js.map +1 -0
  66. package/dist/cli/commands/watch.d.ts +3 -0
  67. package/dist/cli/commands/watch.d.ts.map +1 -0
  68. package/dist/cli/commands/watch.js +41 -0
  69. package/dist/cli/commands/watch.js.map +1 -0
  70. package/dist/cli/commands/welcome.d.ts +3 -0
  71. package/dist/cli/commands/welcome.d.ts.map +1 -0
  72. package/dist/cli/commands/welcome.js +97 -0
  73. package/dist/cli/commands/welcome.js.map +1 -0
  74. package/dist/cli/commands-meta.d.ts +21 -0
  75. package/dist/cli/commands-meta.d.ts.map +1 -0
  76. package/dist/cli/commands-meta.js +828 -0
  77. package/dist/cli/commands-meta.js.map +1 -0
  78. package/dist/cli/completions-gen.d.ts +2 -0
  79. package/dist/cli/completions-gen.d.ts.map +1 -0
  80. package/dist/cli/completions-gen.js +195 -0
  81. package/dist/cli/completions-gen.js.map +1 -0
  82. package/dist/cli/completions.d.ts +18 -0
  83. package/dist/cli/completions.d.ts.map +1 -0
  84. package/dist/cli/completions.js +227 -0
  85. package/dist/cli/completions.js.map +1 -0
  86. package/dist/cli/flags.d.ts +19 -0
  87. package/dist/cli/flags.d.ts.map +1 -0
  88. package/dist/cli/flags.js +91 -0
  89. package/dist/cli/flags.js.map +1 -0
  90. package/dist/cli/format.d.ts +19 -0
  91. package/dist/cli/format.d.ts.map +1 -0
  92. package/dist/cli/format.js +249 -0
  93. package/dist/cli/format.js.map +1 -0
  94. package/dist/cli/helpers.d.ts +95 -0
  95. package/dist/cli/helpers.d.ts.map +1 -0
  96. package/dist/cli/helpers.js +301 -0
  97. package/dist/cli/helpers.js.map +1 -0
  98. package/dist/cli/mcp-server.d.ts +4 -0
  99. package/dist/cli/mcp-server.d.ts.map +1 -0
  100. package/dist/cli/mcp-server.js +277 -0
  101. package/dist/cli/mcp-server.js.map +1 -0
  102. package/dist/cli/menu.d.ts +7 -0
  103. package/dist/cli/menu.d.ts.map +1 -0
  104. package/dist/cli/menu.js +172 -0
  105. package/dist/cli/menu.js.map +1 -0
  106. package/dist/cli/pages/community.d.ts +9 -0
  107. package/dist/cli/pages/community.d.ts.map +1 -0
  108. package/dist/cli/pages/community.js +1094 -0
  109. package/dist/cli/pages/community.js.map +1 -0
  110. package/dist/cli/pages/helpers.d.ts +37 -0
  111. package/dist/cli/pages/helpers.d.ts.map +1 -0
  112. package/dist/cli/pages/helpers.js +98 -0
  113. package/dist/cli/pages/helpers.js.map +1 -0
  114. package/dist/cli/pages/home.d.ts +4 -0
  115. package/dist/cli/pages/home.d.ts.map +1 -0
  116. package/dist/cli/pages/home.js +231 -0
  117. package/dist/cli/pages/home.js.map +1 -0
  118. package/dist/cli/pages/marketplace.d.ts +5 -0
  119. package/dist/cli/pages/marketplace.d.ts.map +1 -0
  120. package/dist/cli/pages/marketplace.js +583 -0
  121. package/dist/cli/pages/marketplace.js.map +1 -0
  122. package/dist/cli/pages/news.d.ts +31 -0
  123. package/dist/cli/pages/news.d.ts.map +1 -0
  124. package/dist/cli/pages/news.js +688 -0
  125. package/dist/cli/pages/news.js.map +1 -0
  126. package/dist/cli/pages/settings.d.ts +3 -0
  127. package/dist/cli/pages/settings.d.ts.map +1 -0
  128. package/dist/cli/pages/settings.js +296 -0
  129. package/dist/cli/pages/settings.js.map +1 -0
  130. package/dist/cli/pages/types.d.ts +67 -0
  131. package/dist/cli/pages/types.d.ts.map +1 -0
  132. package/dist/cli/pages/types.js +2 -0
  133. package/dist/cli/pages/types.js.map +1 -0
  134. package/dist/cli/prompter.d.ts +135 -0
  135. package/dist/cli/prompter.d.ts.map +1 -0
  136. package/dist/cli/prompter.js +710 -0
  137. package/dist/cli/prompter.js.map +1 -0
  138. package/dist/cli/shell.d.ts +23 -0
  139. package/dist/cli/shell.d.ts.map +1 -0
  140. package/dist/cli/shell.js +1106 -0
  141. package/dist/cli/shell.js.map +1 -0
  142. package/dist/cli/tui.d.ts +7 -0
  143. package/dist/cli/tui.d.ts.map +1 -0
  144. package/dist/cli/tui.js +419 -0
  145. package/dist/cli/tui.js.map +1 -0
  146. package/dist/cli.js +1 -1
  147. package/dist/cli.js.map +1 -1
  148. package/dist/commands.d.ts +14 -0
  149. package/dist/commands.d.ts.map +1 -0
  150. package/dist/commands.js +28 -0
  151. package/dist/commands.js.map +1 -0
  152. package/dist/community/client.d.ts +84 -0
  153. package/dist/community/client.d.ts.map +1 -0
  154. package/dist/community/client.js +340 -0
  155. package/dist/community/client.js.map +1 -0
  156. package/dist/community/search.d.ts +25 -0
  157. package/dist/community/search.d.ts.map +1 -0
  158. package/dist/community/search.js +62 -0
  159. package/dist/community/search.js.map +1 -0
  160. package/dist/community/types.d.ts +71 -0
  161. package/dist/community/types.d.ts.map +1 -0
  162. package/dist/community/types.js +11 -0
  163. package/dist/community/types.js.map +1 -0
  164. package/dist/config.d.ts +1 -7
  165. package/dist/config.d.ts.map +1 -1
  166. package/dist/config.js +0 -32
  167. package/dist/config.js.map +1 -1
  168. package/dist/data.d.ts +1 -1
  169. package/dist/data.d.ts.map +1 -1
  170. package/dist/data.js +778 -40
  171. package/dist/data.js.map +1 -1
  172. package/dist/format.d.ts +5 -39
  173. package/dist/format.d.ts.map +1 -1
  174. package/dist/format.js +5 -120
  175. package/dist/format.js.map +1 -1
  176. package/dist/history.d.ts +13 -0
  177. package/dist/history.d.ts.map +1 -0
  178. package/dist/history.js +37 -0
  179. package/dist/history.js.map +1 -0
  180. package/dist/hubs/cache.d.ts +6 -0
  181. package/dist/hubs/cache.d.ts.map +1 -0
  182. package/dist/hubs/cache.js +46 -0
  183. package/dist/hubs/cache.js.map +1 -0
  184. package/dist/hubs/enrichment.d.ts +43 -0
  185. package/dist/hubs/enrichment.d.ts.map +1 -0
  186. package/dist/hubs/enrichment.js +239 -0
  187. package/dist/hubs/enrichment.js.map +1 -0
  188. package/dist/hubs/github.d.ts +12 -0
  189. package/dist/hubs/github.d.ts.map +1 -0
  190. package/dist/hubs/github.js +54 -0
  191. package/dist/hubs/github.js.map +1 -0
  192. package/dist/hubs/huggingface.d.ts +27 -0
  193. package/dist/hubs/huggingface.d.ts.map +1 -0
  194. package/dist/hubs/huggingface.js +88 -0
  195. package/dist/hubs/huggingface.js.map +1 -0
  196. package/dist/hubs/quality.d.ts +26 -0
  197. package/dist/hubs/quality.d.ts.map +1 -0
  198. package/dist/hubs/quality.js +57 -0
  199. package/dist/hubs/quality.js.map +1 -0
  200. package/dist/hubs/types.d.ts +30 -0
  201. package/dist/hubs/types.d.ts.map +1 -0
  202. package/dist/hubs/types.js +2 -0
  203. package/dist/hubs/types.js.map +1 -0
  204. package/dist/index.d.ts.map +1 -1
  205. package/dist/index.js +188 -224
  206. package/dist/index.js.map +1 -1
  207. package/dist/init.d.ts.map +1 -1
  208. package/dist/init.js +6 -11
  209. package/dist/init.js.map +1 -1
  210. package/dist/live.d.ts +14 -0
  211. package/dist/live.d.ts.map +1 -1
  212. package/dist/live.js +35 -3
  213. package/dist/live.js.map +1 -1
  214. package/dist/marketplace.d.ts +25 -3
  215. package/dist/marketplace.d.ts.map +1 -1
  216. package/dist/marketplace.js +279 -22
  217. package/dist/marketplace.js.map +1 -1
  218. package/dist/news/cache.d.ts +13 -0
  219. package/dist/news/cache.d.ts.map +1 -0
  220. package/dist/news/cache.js +66 -0
  221. package/dist/news/cache.js.map +1 -0
  222. package/dist/news/score.d.ts +4 -0
  223. package/dist/news/score.d.ts.map +1 -0
  224. package/dist/news/score.js +43 -0
  225. package/dist/news/score.js.map +1 -0
  226. package/dist/news/sources/arxiv.d.ts +9 -0
  227. package/dist/news/sources/arxiv.d.ts.map +1 -0
  228. package/dist/news/sources/arxiv.js +107 -0
  229. package/dist/news/sources/arxiv.js.map +1 -0
  230. package/dist/news/sources/github-trending.d.ts +9 -0
  231. package/dist/news/sources/github-trending.d.ts.map +1 -0
  232. package/dist/news/sources/github-trending.js +97 -0
  233. package/dist/news/sources/github-trending.js.map +1 -0
  234. package/dist/news/sources/hn.d.ts +9 -0
  235. package/dist/news/sources/hn.d.ts.map +1 -0
  236. package/dist/news/sources/hn.js +57 -0
  237. package/dist/news/sources/hn.js.map +1 -0
  238. package/dist/news/sources/reddit.d.ts +9 -0
  239. package/dist/news/sources/reddit.d.ts.map +1 -0
  240. package/dist/news/sources/reddit.js +69 -0
  241. package/dist/news/sources/reddit.js.map +1 -0
  242. package/dist/news/sources/rss.d.ts +13 -0
  243. package/dist/news/sources/rss.d.ts.map +1 -0
  244. package/dist/news/sources/rss.js +14 -0
  245. package/dist/news/sources/rss.js.map +1 -0
  246. package/dist/news/types.d.ts +42 -0
  247. package/dist/news/types.d.ts.map +1 -0
  248. package/dist/news/types.js +56 -0
  249. package/dist/news/types.js.map +1 -0
  250. package/dist/preferences.d.ts +14 -0
  251. package/dist/preferences.d.ts.map +1 -0
  252. package/dist/preferences.js +31 -0
  253. package/dist/preferences.js.map +1 -0
  254. package/dist/settings.d.ts +26 -0
  255. package/dist/settings.d.ts.map +1 -0
  256. package/dist/settings.js +251 -0
  257. package/dist/settings.js.map +1 -0
  258. package/dist/state.d.ts +9 -2
  259. package/dist/state.d.ts.map +1 -1
  260. package/dist/state.js +41 -19
  261. package/dist/state.js.map +1 -1
  262. package/dist/transcript.d.ts +28 -0
  263. package/dist/transcript.d.ts.map +1 -0
  264. package/dist/transcript.js +79 -0
  265. package/dist/transcript.js.map +1 -0
  266. package/dist/types.d.ts +19 -1
  267. package/dist/types.d.ts.map +1 -1
  268. package/dist/ui.d.ts +157 -0
  269. package/dist/ui.d.ts.map +1 -0
  270. package/dist/ui.js +296 -0
  271. package/dist/ui.js.map +1 -0
  272. package/package.json +11 -9
  273. package/dist/api.d.ts +0 -72
  274. package/dist/api.d.ts.map +0 -1
  275. package/dist/api.js +0 -109
  276. package/dist/api.js.map +0 -1
  277. package/dist/logger.d.ts +0 -20
  278. package/dist/logger.d.ts.map +0 -1
  279. package/dist/logger.js +0 -59
  280. package/dist/logger.js.map +0 -1
package/dist/data.js CHANGED
@@ -1,4 +1,4 @@
1
- export const dataRefreshedAt = '2026-05-14';
1
+ export const dataRefreshedAt = '2026-05-15';
2
2
  export const samplePackages = [
3
3
  // ── Filesystem & Core I/O ──
4
4
  {
@@ -13,7 +13,9 @@ export const samplePackages = [
13
13
  installs: 264237,
14
14
  repository: 'https://github.com/modelcontextprotocol/servers',
15
15
  npmPackage: '@modelcontextprotocol/server-filesystem',
16
- createdAt: '2024-11-21'
16
+ createdAt: '2024-11-21',
17
+ pricing: { kind: 'free' },
18
+ permissions: { fs: ['./**/*'] }
17
19
  },
18
20
  {
19
21
  id: 'mcp-everything',
@@ -27,7 +29,8 @@ export const samplePackages = [
27
29
  installs: 82229,
28
30
  repository: 'https://github.com/modelcontextprotocol/servers',
29
31
  npmPackage: '@modelcontextprotocol/server-everything',
30
- createdAt: '2024-11-19'
32
+ createdAt: '2024-11-19',
33
+ pricing: { kind: 'free' }
31
34
  },
32
35
  // ── Version Control & DevTools ──
33
36
  {
@@ -42,7 +45,8 @@ export const samplePackages = [
42
45
  installs: 119750,
43
46
  repository: 'https://github.com/modelcontextprotocol/servers',
44
47
  npmPackage: '@modelcontextprotocol/server-github',
45
- createdAt: '2024-11-21'
48
+ createdAt: '2024-11-21',
49
+ pricing: { kind: 'free' }
46
50
  },
47
51
  {
48
52
  id: 'mcp-gitlab',
@@ -56,7 +60,8 @@ export const samplePackages = [
56
60
  installs: 6568,
57
61
  repository: 'https://github.com/modelcontextprotocol/servers',
58
62
  npmPackage: '@modelcontextprotocol/server-gitlab',
59
- createdAt: '2024-12-04'
63
+ createdAt: '2024-12-04',
64
+ pricing: { kind: 'free' }
60
65
  },
61
66
  // ── Database Servers ──
62
67
  {
@@ -71,7 +76,8 @@ export const samplePackages = [
71
76
  installs: 182440,
72
77
  repository: 'https://github.com/modelcontextprotocol/servers',
73
78
  npmPackage: '@modelcontextprotocol/server-postgres',
74
- createdAt: '2024-11-19'
79
+ createdAt: '2024-11-19',
80
+ pricing: { kind: 'free' }
75
81
  },
76
82
  {
77
83
  id: 'mcp-redis',
@@ -85,7 +91,8 @@ export const samplePackages = [
85
91
  installs: 2888,
86
92
  repository: 'https://github.com/modelcontextprotocol/servers',
87
93
  npmPackage: '@modelcontextprotocol/server-redis',
88
- createdAt: '2025-04-07'
94
+ createdAt: '2025-04-07',
95
+ pricing: { kind: 'free' }
89
96
  },
90
97
  {
91
98
  id: 'mcp-mongodb',
@@ -99,7 +106,8 @@ export const samplePackages = [
99
106
  installs: 51183,
100
107
  repository: 'https://github.com/mongodb-js/mongodb-mcp-server',
101
108
  npmPackage: 'mongodb-mcp-server',
102
- createdAt: '2025-04-23'
109
+ createdAt: '2025-04-23',
110
+ pricing: { kind: 'free' }
103
111
  },
104
112
  {
105
113
  id: 'mcp-elasticsearch',
@@ -113,7 +121,8 @@ export const samplePackages = [
113
121
  installs: 1007,
114
122
  repository: 'https://github.com/elastic/mcp-server-elasticsearch',
115
123
  npmPackage: '@elastic/mcp-server-elasticsearch',
116
- createdAt: '2025-03-24'
124
+ createdAt: '2025-03-24',
125
+ pricing: { kind: 'free' }
117
126
  },
118
127
  {
119
128
  id: 'mcp-supabase',
@@ -127,9 +136,69 @@ export const samplePackages = [
127
136
  installs: 68083,
128
137
  repository: 'https://github.com/supabase-community/supabase-mcp',
129
138
  npmPackage: '@supabase/mcp-server-supabase',
130
- createdAt: '2025-03-28'
139
+ createdAt: '2025-03-28',
140
+ pricing: { kind: 'free' }
131
141
  },
132
142
  // ── AI & Memory ──
143
+ {
144
+ id: 'mcp-openai',
145
+ name: 'openai-mcp-server',
146
+ description: 'OpenAI API — GPT completions, embeddings, assistants, and file management',
147
+ author: 'openai',
148
+ version: '1.3.0',
149
+ category: 'mcp',
150
+ tags: ['openai', 'ai', 'llm', 'api', 'completions'],
151
+ stars: 12350,
152
+ installs: 345890,
153
+ repository: 'https://github.com/openai/openai-mcp-server',
154
+ npmPackage: 'openai-mcp-server',
155
+ createdAt: '2025-01-15',
156
+ pricing: { kind: 'free' },
157
+ permissions: { net: ['api.openai.com', 'api.anthropic.com'] }
158
+ },
159
+ {
160
+ id: 'mcp-anthropic',
161
+ name: '@anthropic/mcp-server',
162
+ description: 'Anthropic Claude API — completions, messages, and tool use integration',
163
+ author: 'Anthropic, PBC',
164
+ version: '0.4.1',
165
+ category: 'mcp',
166
+ tags: ['anthropic', 'claude', 'ai', 'llm', 'api'],
167
+ stars: 5678,
168
+ installs: 289000,
169
+ repository: 'https://github.com/anthropics/anthropic-mcp-server',
170
+ createdAt: '2025-04-01',
171
+ pricing: { kind: 'free' }
172
+ },
173
+ {
174
+ id: 'mcp-replicate',
175
+ name: 'replicate-mcp-server',
176
+ description: 'Run ML models via Replicate API — image generation, LLMs, audio, and video',
177
+ author: 'Replicate',
178
+ version: '0.3.0',
179
+ category: 'mcp',
180
+ tags: ['replicate', 'ai', 'ml', 'models', 'api'],
181
+ stars: 1234,
182
+ installs: 34560,
183
+ repository: 'https://github.com/replicate/replicate-mcp-server',
184
+ npmPackage: 'replicate-mcp',
185
+ createdAt: '2025-02-10',
186
+ pricing: { kind: 'free' }
187
+ },
188
+ {
189
+ id: 'mcp-huggingface',
190
+ name: 'hf-mcp-server',
191
+ description: 'Hugging Face inference API — text generation, embeddings, and model discovery',
192
+ author: 'huggingface',
193
+ version: '0.5.0',
194
+ category: 'mcp',
195
+ tags: ['huggingface', 'ai', 'transformers', 'api'],
196
+ stars: 2340,
197
+ installs: 56780,
198
+ repository: 'https://github.com/huggingface/hf-mcp-server',
199
+ createdAt: '2025-03-05',
200
+ pricing: { kind: 'free' }
201
+ },
133
202
  {
134
203
  id: 'mcp-sequential-thinking',
135
204
  name: '@modelcontextprotocol/server-sequential-thinking',
@@ -142,7 +211,8 @@ export const samplePackages = [
142
211
  installs: 105931,
143
212
  repository: 'https://github.com/modelcontextprotocol/servers',
144
213
  npmPackage: '@modelcontextprotocol/server-sequential-thinking',
145
- createdAt: '2024-12-03'
214
+ createdAt: '2024-12-03',
215
+ pricing: { kind: 'free' }
146
216
  },
147
217
  {
148
218
  id: 'mcp-memory',
@@ -156,7 +226,8 @@ export const samplePackages = [
156
226
  installs: 73433,
157
227
  repository: 'https://github.com/modelcontextprotocol/servers',
158
228
  npmPackage: '@modelcontextprotocol/server-memory',
159
- createdAt: '2024-11-21'
229
+ createdAt: '2024-11-21',
230
+ pricing: { kind: 'free' }
160
231
  },
161
232
  {
162
233
  id: 'mcp-context7',
@@ -170,7 +241,8 @@ export const samplePackages = [
170
241
  installs: 1141616,
171
242
  repository: 'https://github.com/upstash/context7',
172
243
  npmPackage: '@upstash/context7-mcp',
173
- createdAt: '2025-04-08'
244
+ createdAt: '2025-04-08',
245
+ pricing: { kind: 'free' }
174
246
  },
175
247
  // ── Search & Web ──
176
248
  {
@@ -185,7 +257,9 @@ export const samplePackages = [
185
257
  installs: 24941,
186
258
  repository: 'https://github.com/modelcontextprotocol/servers',
187
259
  npmPackage: '@modelcontextprotocol/server-brave-search',
188
- createdAt: '2024-11-21'
260
+ createdAt: '2024-11-21',
261
+ pricing: { kind: 'free' },
262
+ permissions: { net: ['api.brave.com', 'api.duckduckgo.com', 'serpapi.com'] }
189
263
  },
190
264
  {
191
265
  id: 'mcp-tavily',
@@ -199,7 +273,8 @@ export const samplePackages = [
199
273
  installs: 28859,
200
274
  repository: 'https://github.com/tavily-ai/tavily-mcp',
201
275
  npmPackage: 'tavily-mcp',
202
- createdAt: '2025-01-27'
276
+ createdAt: '2025-01-27',
277
+ pricing: { kind: 'free' }
203
278
  },
204
279
  {
205
280
  id: 'mcp-exa',
@@ -213,7 +288,8 @@ export const samplePackages = [
213
288
  installs: 12842,
214
289
  repository: 'https://github.com/exa-labs/exa-mcp-server',
215
290
  npmPackage: 'exa-mcp-server',
216
- createdAt: '2024-12-17'
291
+ createdAt: '2024-12-17',
292
+ pricing: { kind: 'free' }
217
293
  },
218
294
  {
219
295
  id: 'mcp-perplexity',
@@ -227,7 +303,8 @@ export const samplePackages = [
227
303
  installs: 1452,
228
304
  repository: 'https://github.com/modelcontextprotocol/servers',
229
305
  npmPackage: 'server-perplexity-ask',
230
- createdAt: '2025-02-19'
306
+ createdAt: '2025-02-19',
307
+ pricing: { kind: 'free' }
231
308
  },
232
309
  {
233
310
  id: 'mcp-firecrawl',
@@ -241,7 +318,9 @@ export const samplePackages = [
241
318
  installs: 54574,
242
319
  repository: 'https://github.com/firecrawl/firecrawl-mcp-server',
243
320
  npmPackage: 'firecrawl-mcp',
244
- createdAt: '2025-02-21'
321
+ createdAt: '2025-02-21',
322
+ pricing: { kind: 'free' },
323
+ permissions: { net: ['*'] }
245
324
  },
246
325
  {
247
326
  id: 'mcp-google-maps',
@@ -255,7 +334,8 @@ export const samplePackages = [
255
334
  installs: 10487,
256
335
  repository: 'https://github.com/modelcontextprotocol/servers',
257
336
  npmPackage: '@modelcontextprotocol/server-google-maps',
258
- createdAt: '2024-11-21'
337
+ createdAt: '2024-11-21',
338
+ pricing: { kind: 'free' }
259
339
  },
260
340
  // ── Browser Automation ──
261
341
  {
@@ -270,7 +350,8 @@ export const samplePackages = [
270
350
  installs: 29680,
271
351
  repository: 'https://github.com/modelcontextprotocol/servers',
272
352
  npmPackage: '@modelcontextprotocol/server-puppeteer',
273
- createdAt: '2024-11-19'
353
+ createdAt: '2024-11-19',
354
+ pricing: { kind: 'free' }
274
355
  },
275
356
  {
276
357
  id: 'mcp-playwright',
@@ -284,7 +365,8 @@ export const samplePackages = [
284
365
  installs: 2613994,
285
366
  repository: 'https://github.com/microsoft/playwright-mcp',
286
367
  npmPackage: '@playwright/mcp',
287
- createdAt: '2025-03-13'
368
+ createdAt: '2025-03-13',
369
+ pricing: { kind: 'free' }
288
370
  },
289
371
  {
290
372
  id: 'mcp-playwright-ea',
@@ -298,7 +380,8 @@ export const samplePackages = [
298
380
  installs: 79058,
299
381
  repository: 'https://github.com/executeautomation/mcp-playwright',
300
382
  npmPackage: '@executeautomation/playwright-mcp-server',
301
- createdAt: '2024-12-05'
383
+ createdAt: '2024-12-05',
384
+ pricing: { kind: 'free' }
302
385
  },
303
386
  {
304
387
  id: 'mcp-browsermcp',
@@ -311,9 +394,190 @@ export const samplePackages = [
311
394
  stars: 0,
312
395
  installs: 7461,
313
396
  npmPackage: '@browsermcp/mcp',
314
- createdAt: '2025-04-05'
397
+ createdAt: '2025-04-05',
398
+ pricing: { kind: 'free' }
399
+ },
400
+ // ── Project Management ──
401
+ {
402
+ id: 'mcp-linear',
403
+ name: '@linear/mcp-server',
404
+ description: 'Linear issue tracking — create and update issues, search projects, manage sprints',
405
+ author: 'Linear',
406
+ version: '1.1.0',
407
+ category: 'mcp',
408
+ tags: ['linear', 'project-management', 'issues', 'sprints'],
409
+ stars: 6543,
410
+ installs: 189000,
411
+ repository: 'https://github.com/linear/linear-mcp-server',
412
+ createdAt: '2025-02-25',
413
+ pricing: { kind: 'free' }
414
+ },
415
+ {
416
+ id: 'mcp-jira',
417
+ name: 'jira-mcp-server',
418
+ description: 'Jira and Confluence — issue creation, search, project management, and wiki access',
419
+ author: 'atlassian-labs',
420
+ version: '0.9.0',
421
+ category: 'mcp',
422
+ tags: ['jira', 'confluence', 'atlassian', 'project-management'],
423
+ stars: 3200,
424
+ installs: 98700,
425
+ repository: 'https://github.com/atlassian-labs/jira-mcp-server',
426
+ npmPackage: 'jira-mcp-server',
427
+ createdAt: '2025-03-01',
428
+ pricing: { kind: 'free' }
429
+ },
430
+ {
431
+ id: 'mcp-asana',
432
+ name: 'asana-mcp-server',
433
+ description: 'Asana task and project management — tasks, projects, teams, and portfolio views',
434
+ author: 'asana-community',
435
+ version: '0.4.0',
436
+ category: 'mcp',
437
+ tags: ['asana', 'project-management', 'tasks'],
438
+ stars: 450,
439
+ installs: 12300,
440
+ repository: 'https://github.com/asana-community/asana-mcp-server',
441
+ createdAt: '2025-04-10',
442
+ pricing: { kind: 'free' }
443
+ },
444
+ // ── Knowledge & Notes ──
445
+ {
446
+ id: 'mcp-obsidian',
447
+ name: 'obsidian-mcp-server',
448
+ description: 'Obsidian vault access — read, search, and create notes across your knowledge base',
449
+ author: 'obsidian-mcp',
450
+ version: '1.5.0',
451
+ category: 'mcp',
452
+ tags: ['obsidian', 'notes', 'knowledge', 'markdown'],
453
+ stars: 9800,
454
+ installs: 345000,
455
+ repository: 'https://github.com/obsidian-mcp/obsidian-mcp-server',
456
+ npmPackage: 'obsidian-mcp-server',
457
+ createdAt: '2025-01-25',
458
+ pricing: { kind: 'free' },
459
+ permissions: { fs: ['~/.obsidian/**/*', './**/*.md'] }
315
460
  },
316
- // ── Communication & Productivity ──
461
+ {
462
+ id: 'mcp-confluence',
463
+ name: 'confluence-mcp-server',
464
+ description: 'Confluence wiki — pages, search, spaces, and content management for documentation',
465
+ author: 'atlassian-labs',
466
+ version: '0.3.0',
467
+ category: 'mcp',
468
+ tags: ['confluence', 'wiki', 'documentation', 'knowledge'],
469
+ stars: 890,
470
+ installs: 23400,
471
+ repository: 'https://github.com/atlassian-labs/confluence-mcp-server',
472
+ npmPackage: 'confluence-mcp-server',
473
+ createdAt: '2025-04-05',
474
+ pricing: { kind: 'free' }
475
+ },
476
+ // ── Development Tools ──
477
+ {
478
+ id: 'mcp-sonarqube',
479
+ name: '@sonarsource/mcp-server-sonarqube',
480
+ description: 'SonarQube code quality — issues, metrics, quality gates, and project analysis',
481
+ author: 'SonarSource',
482
+ version: '0.5.0',
483
+ category: 'mcp',
484
+ tags: ['sonarqube', 'code-quality', 'linting', 'static-analysis'],
485
+ stars: 560,
486
+ installs: 18900,
487
+ repository: 'https://github.com/SonarSource/sonarqube-mcp-server',
488
+ createdAt: '2025-03-20',
489
+ pricing: { kind: 'free' }
490
+ },
491
+ {
492
+ id: 'mcp-snyk',
493
+ name: 'snyk-mcp-server',
494
+ description: 'Snyk vulnerability scanning — dependency checks, container scanning, and IaC analysis',
495
+ author: 'snyk-labs',
496
+ version: '0.3.0',
497
+ category: 'mcp',
498
+ tags: ['snyk', 'security', 'vulnerability', 'dependencies'],
499
+ stars: 780,
500
+ installs: 34500,
501
+ repository: 'https://github.com/snyk-labs/snyk-mcp-server',
502
+ createdAt: '2025-04-15',
503
+ pricing: { kind: 'free' }
504
+ },
505
+ // ── Cloud Platforms ──
506
+ {
507
+ id: 'mcp-aws',
508
+ name: '@aws/mcp-server-aws',
509
+ description: 'AWS cloud management — EC2, S3, Lambda, IAM, and cost management across services',
510
+ author: 'Amazon Web Services',
511
+ version: '0.6.0',
512
+ category: 'mcp',
513
+ tags: ['aws', 'cloud', 'ec2', 's3', 'lambda', 'infrastructure'],
514
+ stars: 4500,
515
+ installs: 156000,
516
+ repository: 'https://github.com/awslabs/aws-mcp-server',
517
+ createdAt: '2025-02-01',
518
+ pricing: { kind: 'free' }
519
+ },
520
+ {
521
+ id: 'mcp-vercel',
522
+ name: '@vercel/mcp-server',
523
+ description: 'Vercel deployment management — projects, deployments, domains, and environment variables',
524
+ author: 'Vercel',
525
+ version: '0.4.0',
526
+ category: 'mcp',
527
+ tags: ['vercel', 'deployment', 'frontend', 'hosting'],
528
+ stars: 3400,
529
+ installs: 89000,
530
+ repository: 'https://github.com/vercel/vercel-mcp-server',
531
+ createdAt: '2025-03-01',
532
+ pricing: { kind: 'free' }
533
+ },
534
+ {
535
+ id: 'mcp-netlify',
536
+ name: '@netlify/mcp-server',
537
+ description: 'Netlify deployment management — sites, deploys, functions, and environment config',
538
+ author: 'Netlify',
539
+ version: '0.3.0',
540
+ category: 'mcp',
541
+ tags: ['netlify', 'deployment', 'hosting', 'jamstack'],
542
+ stars: 890,
543
+ installs: 23400,
544
+ repository: 'https://github.com/netlify/netlify-mcp-server',
545
+ npmPackage: '@netlify/mcp',
546
+ createdAt: '2025-04-01',
547
+ pricing: { kind: 'free' }
548
+ },
549
+ // ── Communication & Community ──
550
+ {
551
+ id: 'mcp-discord',
552
+ name: 'discord-mcp-server',
553
+ description: 'Discord integration — messages, channels, server management, and webhook control',
554
+ author: 'discord-community',
555
+ version: '0.6.0',
556
+ category: 'mcp',
557
+ tags: ['discord', 'chat', 'community', 'messaging'],
558
+ stars: 3456,
559
+ installs: 98700,
560
+ repository: 'https://github.com/discord-community/discord-mcp-server',
561
+ npmPackage: 'discord-mcp-server',
562
+ createdAt: '2025-03-05',
563
+ pricing: { kind: 'free' }
564
+ },
565
+ {
566
+ id: 'mcp-email',
567
+ name: '@sendgrid/mcp-server',
568
+ description: 'Email delivery via SendGrid — send transactional emails, manage templates, and analytics',
569
+ author: 'sendgrid-community',
570
+ version: '0.3.0',
571
+ category: 'mcp',
572
+ tags: ['email', 'sendgrid', 'communication', 'notifications'],
573
+ stars: 450,
574
+ installs: 23400,
575
+ repository: 'https://github.com/sendgrid-community/sendgrid-mcp-server',
576
+ npmPackage: 'sendgrid-mcp',
577
+ createdAt: '2025-04-15',
578
+ pricing: { kind: 'free' }
579
+ },
580
+ // ── Productivity & Office ──
317
581
  {
318
582
  id: 'mcp-slack',
319
583
  name: '@modelcontextprotocol/server-slack',
@@ -326,7 +590,8 @@ export const samplePackages = [
326
590
  installs: 62239,
327
591
  repository: 'https://github.com/modelcontextprotocol/servers',
328
592
  npmPackage: '@modelcontextprotocol/server-slack',
329
- createdAt: '2024-11-19'
593
+ createdAt: '2024-11-19',
594
+ pricing: { kind: 'free' }
330
595
  },
331
596
  {
332
597
  id: 'mcp-notion',
@@ -340,7 +605,8 @@ export const samplePackages = [
340
605
  installs: 67119,
341
606
  repository: 'https://github.com/makenotion/notion-mcp-server',
342
607
  npmPackage: '@notionhq/notion-mcp-server',
343
- createdAt: '2025-04-03'
608
+ createdAt: '2025-04-03',
609
+ pricing: { kind: 'free' }
344
610
  },
345
611
  {
346
612
  id: 'mcp-gdrive',
@@ -354,7 +620,8 @@ export const samplePackages = [
354
620
  installs: 8678,
355
621
  repository: 'https://github.com/modelcontextprotocol/servers',
356
622
  npmPackage: '@modelcontextprotocol/server-gdrive',
357
- createdAt: '2024-11-19'
623
+ createdAt: '2024-11-19',
624
+ pricing: { kind: 'free' }
358
625
  },
359
626
  // ── Design & Frontend ──
360
627
  {
@@ -369,7 +636,8 @@ export const samplePackages = [
369
636
  installs: 53549,
370
637
  repository: 'https://github.com/GLips/Figma-Context-MCP',
371
638
  npmPackage: 'figma-developer-mcp',
372
- createdAt: '2025-02-22'
639
+ createdAt: '2025-02-22',
640
+ pricing: { kind: 'free' }
373
641
  },
374
642
  {
375
643
  id: 'mcp-magic',
@@ -383,7 +651,99 @@ export const samplePackages = [
383
651
  installs: 11231,
384
652
  repository: 'https://github.com/21st-dev/magic-mcp',
385
653
  npmPackage: '@21st-dev/magic',
386
- createdAt: '2025-03-11'
654
+ createdAt: '2025-03-11',
655
+ pricing: { kind: 'free' }
656
+ },
657
+ // ── Containers & Virtualisation ──
658
+ {
659
+ id: 'mcp-docker',
660
+ name: 'mcp-docker-server',
661
+ description: 'Docker container management — images, containers, compose, logs, and exec',
662
+ author: 'docker-labs',
663
+ version: '1.2.0',
664
+ category: 'mcp',
665
+ tags: ['docker', 'containers', 'devops', 'infrastructure'],
666
+ stars: 8456,
667
+ installs: 234500,
668
+ repository: 'https://github.com/docker-labs/mcp-docker-server',
669
+ npmPackage: 'mcp-docker-server',
670
+ createdAt: '2025-01-20',
671
+ pricing: { kind: 'free' },
672
+ permissions: { exec: ['docker'], fs: ['./**/*'] }
673
+ },
674
+ {
675
+ id: 'mcp-sqlite',
676
+ name: '@sqlite/mcp-server',
677
+ description: 'SQLite database management — queries, schema inspection, and data migration',
678
+ author: 'sqlite-community',
679
+ version: '0.8.2',
680
+ category: 'mcp',
681
+ tags: ['sqlite', 'database', 'sql', 'data'],
682
+ stars: 3200,
683
+ installs: 128000,
684
+ repository: 'https://github.com/sqlite-community/sqlite-mcp',
685
+ npmPackage: '@easy-mcps/sqlite-mcp-server',
686
+ createdAt: '2025-02-15',
687
+ pricing: { kind: 'free' }
688
+ },
689
+ {
690
+ id: 'mcp-pinecone',
691
+ name: 'pinecone-mcp-server',
692
+ description: 'Pinecone vector database — index management, upsert, query, and namespace ops',
693
+ author: 'pinecone-io',
694
+ version: '0.4.0',
695
+ category: 'mcp',
696
+ tags: ['pinecone', 'vector', 'database', 'ai', 'embeddings'],
697
+ stars: 890,
698
+ installs: 23450,
699
+ repository: 'https://github.com/pinecone-io/pinecone-mcp-server',
700
+ npmPackage: 'pinecone-mcp',
701
+ createdAt: '2025-03-10',
702
+ pricing: { kind: 'free' }
703
+ },
704
+ {
705
+ id: 'mcp-qdrant',
706
+ name: 'qdrant-mcp-server',
707
+ description: 'Qdrant vector search — collection management, point operations, and filtering',
708
+ author: 'qdrant',
709
+ version: '0.6.0',
710
+ category: 'mcp',
711
+ tags: ['qdrant', 'vector', 'database', 'search', 'ai'],
712
+ stars: 670,
713
+ installs: 18900,
714
+ repository: 'https://github.com/qdrant/qdrant-mcp-server',
715
+ npmPackage: 'qdrant-mcp-server',
716
+ createdAt: '2025-03-15',
717
+ pricing: { kind: 'free' }
718
+ },
719
+ {
720
+ id: 'mcp-chromadb',
721
+ name: 'chromadb-mcp-server',
722
+ description: 'ChromaDB vector store — collections, document embeddings, and similarity search',
723
+ author: 'chroma-core',
724
+ version: '0.3.1',
725
+ category: 'mcp',
726
+ tags: ['chromadb', 'vector', 'database', 'embeddings', 'ai'],
727
+ stars: 1560,
728
+ installs: 45600,
729
+ repository: 'https://github.com/chroma-core/chromadb-mcp-server',
730
+ npmPackage: 'chromadb-mcp',
731
+ createdAt: '2025-04-01',
732
+ pricing: { kind: 'free' }
733
+ },
734
+ {
735
+ id: 'mcp-neo4j',
736
+ name: 'neo4j-mcp-server',
737
+ description: 'Neo4j graph database — Cypher queries, schema management, and graph analytics',
738
+ author: 'neo4j',
739
+ version: '0.5.0',
740
+ category: 'mcp',
741
+ tags: ['neo4j', 'graph', 'database', 'cypher'],
742
+ stars: 2100,
743
+ installs: 56700,
744
+ repository: 'https://github.com/neo4j/neo4j-mcp-server',
745
+ createdAt: '2025-02-20',
746
+ pricing: { kind: 'free' }
387
747
  },
388
748
  // ── Cloud, Infra & DevOps ──
389
749
  {
@@ -397,7 +757,8 @@ export const samplePackages = [
397
757
  stars: 0,
398
758
  installs: 2249,
399
759
  npmPackage: '@cloudflare/mcp-server-cloudflare',
400
- createdAt: '2024-11-27'
760
+ createdAt: '2024-11-27',
761
+ pricing: { kind: 'free' }
401
762
  },
402
763
  {
403
764
  id: 'mcp-kubernetes',
@@ -411,7 +772,9 @@ export const samplePackages = [
411
772
  installs: 13585,
412
773
  repository: 'https://github.com/Flux159/mcp-server-kubernetes',
413
774
  npmPackage: 'mcp-server-kubernetes',
414
- createdAt: '2024-12-10'
775
+ createdAt: '2024-12-10',
776
+ pricing: { kind: 'free' },
777
+ permissions: { exec: ['kubectl', 'helm'] }
415
778
  },
416
779
  {
417
780
  id: 'mcp-heroku',
@@ -425,7 +788,8 @@ export const samplePackages = [
425
788
  installs: 5693,
426
789
  repository: 'https://github.com/heroku/heroku-mcp-server',
427
790
  npmPackage: '@heroku/mcp-server',
428
- createdAt: '2025-04-07'
791
+ createdAt: '2025-04-07',
792
+ pricing: { kind: 'free' }
429
793
  },
430
794
  {
431
795
  id: 'mcp-aws-kb',
@@ -439,7 +803,8 @@ export const samplePackages = [
439
803
  installs: 403,
440
804
  repository: 'https://github.com/modelcontextprotocol/servers',
441
805
  npmPackage: '@modelcontextprotocol/server-aws-kb-retrieval',
442
- createdAt: '2025-01-14'
806
+ createdAt: '2025-01-14',
807
+ pricing: { kind: 'free' }
443
808
  },
444
809
  {
445
810
  id: 'mcp-remote',
@@ -453,9 +818,68 @@ export const samplePackages = [
453
818
  installs: 354615,
454
819
  repository: 'https://github.com/geelen/mcp-remote',
455
820
  npmPackage: 'mcp-remote',
456
- createdAt: '2025-03-17'
821
+ createdAt: '2025-03-17',
822
+ pricing: { kind: 'free' }
823
+ },
824
+ // ── Monitoring & Observability ──
825
+ {
826
+ id: 'mcp-datadog',
827
+ name: '@datadog/mcp-server',
828
+ description: 'Datadog monitoring — dashboards, monitors, logs, traces, and incident management',
829
+ author: 'DataDog',
830
+ version: '0.5.0',
831
+ category: 'mcp',
832
+ tags: ['datadog', 'monitoring', 'observability', 'apm'],
833
+ stars: 1200,
834
+ installs: 45600,
835
+ repository: 'https://github.com/DataDog/datadog-mcp-server',
836
+ npmPackage: 'datadog-mcp',
837
+ createdAt: '2025-03-10',
838
+ pricing: { kind: 'free' }
839
+ },
840
+ {
841
+ id: 'mcp-grafana',
842
+ name: 'grafana-mcp-server',
843
+ description: 'Grafana dashboards — query metrics, manage alerts, and explore observability data',
844
+ author: 'grafana-community',
845
+ version: '0.4.0',
846
+ category: 'mcp',
847
+ tags: ['grafana', 'monitoring', 'dashboards', 'observability'],
848
+ stars: 2340,
849
+ installs: 67800,
850
+ repository: 'https://github.com/grafana-community/grafana-mcp-server',
851
+ createdAt: '2025-02-20',
852
+ pricing: { kind: 'free' }
853
+ },
854
+ {
855
+ id: 'mcp-pagerduty',
856
+ name: 'pagerduty-mcp-server',
857
+ description: 'PagerDuty incident management — incidents, on-call schedules, and escalation policies',
858
+ author: 'PagerDuty',
859
+ version: '0.3.5',
860
+ category: 'mcp',
861
+ tags: ['pagerduty', 'incidents', 'on-call', 'alerting'],
862
+ stars: 560,
863
+ installs: 18900,
864
+ repository: 'https://github.com/PagerDuty/pagerduty-mcp-server',
865
+ createdAt: '2025-04-01',
866
+ pricing: { kind: 'free' }
457
867
  },
458
- // ── Monitoring & Payments ──
868
+ {
869
+ id: 'mcp-newrelic',
870
+ name: '@newrelic/mcp-server',
871
+ description: 'New Relic observability — APM, infrastructure, logs, and query NRQL across services',
872
+ author: 'New Relic',
873
+ version: '0.3.0',
874
+ category: 'mcp',
875
+ tags: ['newrelic', 'apm', 'observability', 'monitoring'],
876
+ stars: 340,
877
+ installs: 12300,
878
+ repository: 'https://github.com/newrelic/newrelic-mcp-server',
879
+ createdAt: '2025-04-10',
880
+ pricing: { kind: 'free' }
881
+ },
882
+ // ── Payments & Commerce ──
459
883
  {
460
884
  id: 'mcp-sentry',
461
885
  name: '@sentry/mcp-server',
@@ -468,7 +892,8 @@ export const samplePackages = [
468
892
  installs: 90109,
469
893
  repository: 'https://github.com/getsentry/sentry-mcp',
470
894
  npmPackage: '@sentry/mcp-server',
471
- createdAt: '2025-04-24'
895
+ createdAt: '2025-04-24',
896
+ pricing: { kind: 'free' }
472
897
  },
473
898
  {
474
899
  id: 'mcp-stripe',
@@ -482,7 +907,22 @@ export const samplePackages = [
482
907
  installs: 22628,
483
908
  repository: 'https://github.com/stripe/ai',
484
909
  npmPackage: '@stripe/mcp',
485
- createdAt: '2025-02-19'
910
+ createdAt: '2025-02-19',
911
+ pricing: { kind: 'free' }
912
+ },
913
+ {
914
+ id: 'mcp-sequelize',
915
+ name: '@anthropic/mcp-server-sequelize',
916
+ description: 'Sequelize ORM integration — model management, migrations, query inspection',
917
+ author: 'Anthropic, PBC',
918
+ version: '0.1.0',
919
+ category: 'mcp',
920
+ tags: ['database', 'sequelize', 'orm', 'sql'],
921
+ stars: 2840,
922
+ installs: 12400,
923
+ repository: 'https://github.com/modelcontextprotocol/servers',
924
+ createdAt: '2025-03-10',
925
+ pricing: { kind: 'free' }
486
926
  },
487
927
  // ── Prompts ──
488
928
  {
@@ -495,7 +935,8 @@ export const samplePackages = [
495
935
  tags: ['review', 'security', 'best-practices', 'quality'],
496
936
  stars: 1200,
497
937
  installs: 8900,
498
- createdAt: '2025-01-10'
938
+ createdAt: '2025-01-10',
939
+ pricing: { kind: 'free' }
499
940
  },
500
941
  {
501
942
  id: 'prompt-api-design',
@@ -507,7 +948,8 @@ export const samplePackages = [
507
948
  tags: ['api', 'design', 'rest', 'graphql'],
508
949
  stars: 560,
509
950
  installs: 3400,
510
- createdAt: '2025-02-20'
951
+ createdAt: '2025-02-20',
952
+ pricing: { kind: 'free' }
511
953
  },
512
954
  {
513
955
  id: 'prompt-refactor-plan',
@@ -519,7 +961,47 @@ export const samplePackages = [
519
961
  tags: ['refactor', 'planning', 'safety', 'testing'],
520
962
  stars: 780,
521
963
  installs: 4500,
522
- createdAt: '2025-03-01'
964
+ createdAt: '2025-03-01',
965
+ pricing: { kind: 'free' }
966
+ },
967
+ {
968
+ id: 'prompt-debug-session',
969
+ name: 'Structured Debugging',
970
+ description: 'Systematic root-cause analysis — form hypotheses, gather evidence, identify the bug',
971
+ author: 'agora-community',
972
+ version: '1.0.0',
973
+ category: 'prompt',
974
+ tags: ['debug', 'root-cause', 'analysis', 'troubleshooting'],
975
+ stars: 920,
976
+ installs: 6200,
977
+ createdAt: '2025-04-10',
978
+ pricing: { kind: 'free' }
979
+ },
980
+ {
981
+ id: 'prompt-test-strategy',
982
+ name: 'Test Strategy Planner',
983
+ description: 'Design a comprehensive testing strategy covering unit, integration, e2e, and property-based tests',
984
+ author: 'agora-community',
985
+ version: '1.0.0',
986
+ category: 'prompt',
987
+ tags: ['testing', 'strategy', 'quality', 'coverage'],
988
+ stars: 410,
989
+ installs: 2100,
990
+ createdAt: '2025-04-20',
991
+ pricing: { kind: 'free' }
992
+ },
993
+ {
994
+ id: 'prompt-migration-plan',
995
+ name: 'Migration Plan Generator',
996
+ description: 'Plan safe, phased migrations — framework upgrades, database migrations, cloud provider moves',
997
+ author: 'agora-community',
998
+ version: '1.0.0',
999
+ category: 'prompt',
1000
+ tags: ['migration', 'planning', 'safety', 'rollback'],
1001
+ stars: 340,
1002
+ installs: 1800,
1003
+ createdAt: '2025-05-01',
1004
+ pricing: { kind: 'free' }
523
1005
  }
524
1006
  ];
525
1007
  export const sampleWorkflows = [
@@ -640,6 +1122,46 @@ Provide a score (1-10) for each dimension with actionable improvements.`,
640
1122
  forks: 42,
641
1123
  createdAt: '2025-03-10'
642
1124
  },
1125
+ {
1126
+ id: 'wf-doc-generator',
1127
+ name: 'Documentation Generator',
1128
+ description: 'Generate comprehensive documentation for codebases — API docs, README, and inline comments',
1129
+ author: 'doc-master',
1130
+ prompt: `Generate thorough documentation for the codebase:
1131
+ 1. Create or update README with setup, usage, and architecture
1132
+ 2. Document all public APIs with parameter descriptions
1133
+ 3. Add inline code comments for complex logic
1134
+ 4. Generate API reference docs from TypeScript types
1135
+ 5. Create changelog from git history
1136
+ 6. Add contributing guide
1137
+ 7. Document environment variables and configuration
1138
+
1139
+ Focus on clarity and completeness. The docs should help new contributors onboard quickly.`,
1140
+ tags: ['documentation', 'readme', 'api-docs', 'onboarding'],
1141
+ stars: 245,
1142
+ forks: 38,
1143
+ createdAt: '2025-04-05'
1144
+ },
1145
+ {
1146
+ id: 'wf-postmortem',
1147
+ name: 'Incident Post-Mortem',
1148
+ description: 'Structured incident analysis — timeline, root cause, impact, and action items',
1149
+ author: 'sre-team',
1150
+ prompt: `Conduct a blameless post-mortem analysis:
1151
+ 1. Establish incident timeline from logs and metrics
1152
+ 2. Identify root cause and contributing factors
1153
+ 3. Document impact (users affected, downtime duration, data loss)
1154
+ 4. Analyze detection and response time
1155
+ 5. Identify systemic issues beyond the immediate cause
1156
+ 6. Propose specific action items with owners
1157
+ 7. Define monitoring to detect recurrence
1158
+
1159
+ The goal is learning, not blame. Every action item should be specific and testable.`,
1160
+ tags: ['postmortem', 'incident', 'sre', 'analysis'],
1161
+ stars: 189,
1162
+ forks: 45,
1163
+ createdAt: '2025-04-20'
1164
+ },
643
1165
  {
644
1166
  id: 'wf-dependency-audit',
645
1167
  name: 'Dependency Audit',
@@ -884,6 +1406,82 @@ npx tsx src/my-server.ts
884
1406
  }
885
1407
  ]
886
1408
  },
1409
+ {
1410
+ id: 'tut-docker-dev',
1411
+ title: 'Docker Development with MCP',
1412
+ description: 'Manage Docker containers, images, and compose files from your AI assistant',
1413
+ level: 'intermediate',
1414
+ duration: '20 min',
1415
+ steps: [
1416
+ {
1417
+ title: 'Install the Docker MCP Server',
1418
+ content: 'First, install the Docker MCP server globally. This lets your AI assistant manage containers.',
1419
+ code: `npm install -g mcp-docker-server`
1420
+ },
1421
+ {
1422
+ title: 'Configure in OpenCode',
1423
+ content: 'Add the Docker MCP server to your opencode.json:',
1424
+ code: `{
1425
+ "mcp": {
1426
+ "docker": {
1427
+ "type": "local",
1428
+ "command": ["npx", "mcp-docker-server"]
1429
+ }
1430
+ }
1431
+ }`
1432
+ },
1433
+ {
1434
+ title: 'Common Docker Tasks',
1435
+ content: 'Now you can ask your AI to: list running containers, view logs, restart services, build images, manage Docker Compose, and clean up unused resources — all from your terminal via natural language.'
1436
+ }
1437
+ ]
1438
+ },
1439
+ {
1440
+ id: 'tut-api-testing',
1441
+ title: 'API Testing with MCP Tools',
1442
+ description: 'Learn to test and debug APIs using MCP servers and OpenCode workflows',
1443
+ level: 'beginner',
1444
+ duration: '15 min',
1445
+ steps: [
1446
+ {
1447
+ title: 'Set Up API Testing Tools',
1448
+ content: 'Install the necessary MCP servers for API testing. The Brave Search and GitHub servers are useful for testing external APIs.',
1449
+ code: `agora install mcp-github`
1450
+ },
1451
+ {
1452
+ title: 'Test REST Endpoints',
1453
+ content: 'With the MCP tools configured, you can ask OpenCode to test API endpoints: "Make a GET request to https://api.example.com/health" or "Test the POST /users endpoint with this payload."'
1454
+ },
1455
+ {
1456
+ title: 'Automate API Tests',
1457
+ content: 'Use the TDD workflow combined with API tools to write automated tests: "Create a test suite that verifies all API endpoints return correct status codes and response shapes."'
1458
+ }
1459
+ ]
1460
+ },
1461
+ {
1462
+ id: 'tut-vector-search',
1463
+ title: 'Vector Search with MCP',
1464
+ description: 'Set up and query vector databases for semantic search and RAG applications',
1465
+ level: 'advanced',
1466
+ duration: '30 min',
1467
+ steps: [
1468
+ {
1469
+ title: 'Choose a Vector Database',
1470
+ content: 'Agora supports several vector databases. For local development, ChromaDB is the easiest to start with. For production, Pinecone or Qdrant are recommended.',
1471
+ code: `agora search vector
1472
+ agora browse mcp-chromadb`
1473
+ },
1474
+ {
1475
+ title: 'Install and Configure',
1476
+ content: 'Install your chosen vector database MCP server and add it to OpenCode:',
1477
+ code: `npm install -g chromadb-mcp-server`
1478
+ },
1479
+ {
1480
+ title: 'Semantic Search in Action',
1481
+ content: 'With vector search configured, you can ask OpenCode to: "Search for documents similar to this text" or "Find the most relevant code examples for implementing OAuth." The AI will use the vector database to find semantically similar content.'
1482
+ }
1483
+ ]
1484
+ },
887
1485
  {
888
1486
  id: 'tut-opencode-tips',
889
1487
  title: 'OpenCode Power User Tips',
@@ -905,6 +1503,146 @@ npx tsx src/my-server.ts
905
1503
  content: 'Continue previous sessions with `opencode -c`, fork them with `opencode --fork`, or start a specific agent with `opencode --agent reviewer`. Sessions persist across restarts.'
906
1504
  }
907
1505
  ]
1506
+ },
1507
+ {
1508
+ id: 'tut-agora-auth',
1509
+ title: 'Agora Auth & Login',
1510
+ description: 'Authenticate with the Agora API using the device-code login flow',
1511
+ level: 'beginner',
1512
+ duration: '10 min',
1513
+ steps: [
1514
+ {
1515
+ title: 'Why Authenticate?',
1516
+ content: 'Some Agora features require authentication: publishing packages, posting discussions, submitting reviews, and viewing community profiles. The device-code flow lets you log in via your browser without exposing tokens.'
1517
+ },
1518
+ {
1519
+ title: 'Device-Code Login',
1520
+ content: 'Run `agora auth login --api-url <your-api-url>`. This opens a browser where you authorize via GitHub. The CLI polls for the token and stores it locally. No token ever appears in your terminal history.',
1521
+ code: `agora auth login --api-url https://api.agora.example.com`
1522
+ },
1523
+ {
1524
+ title: 'Check Your Status',
1525
+ content: 'Use `agora auth status` to see if you are logged in. The token is displayed masked (e.g. "ghp_...cdef"). Use `agora auth logout` to clear stored credentials.',
1526
+ code: `agora auth status --json`
1527
+ },
1528
+ {
1529
+ title: 'Headless / CI Login',
1530
+ content: 'For automation, pass a token directly via --token or the AGORA_TOKEN environment variable. This skips the browser flow and stores the credential immediately.',
1531
+ code: `agora auth login --token $AGORA_TOKEN --api-url https://api.agora.example.com`
1532
+ }
1533
+ ]
1534
+ },
1535
+ {
1536
+ id: 'tut-catalog-contrib',
1537
+ title: 'Contributing to the Catalog',
1538
+ description: 'Add MCP servers, workflows, and tutorials to the Agora ecosystem',
1539
+ level: 'intermediate',
1540
+ duration: '20 min',
1541
+ steps: [
1542
+ {
1543
+ title: 'The Offline Catalog',
1544
+ content: 'Agora ships with a bundled offline catalog in src/data.ts. It contains MCP servers, prompt tools, workflows, and tutorials. The catalog is refreshed periodically and serves as the default data source when no API is available.'
1545
+ },
1546
+ {
1547
+ title: 'Add an MCP Server',
1548
+ content: 'To add a new MCP server, append an entry to the samplePackages array in src/data.ts. Include the id, name, npm package, description, tags, and metadata. Run the tests to verify your entry works.',
1549
+ code: `{
1550
+ id: 'mcp-my-server',
1551
+ name: '@you/mcp-server',
1552
+ description: 'Description of what it does',
1553
+ author: 'You',
1554
+ version: '1.0.0',
1555
+ category: 'mcp',
1556
+ tags: ['your-tag', 'tool'],
1557
+ stars: 100,
1558
+ installs: 500,
1559
+ npmPackage: '@you/mcp-server',
1560
+ createdAt: '2026-05-15'
1561
+ }`
1562
+ },
1563
+ {
1564
+ title: 'Add a Workflow',
1565
+ content: 'Workflows are structured prompts that guide AI behavior. Add them to the sampleWorkflows array with a descriptive prompt that includes step-by-step instructions, tags, and metadata.',
1566
+ code: `{
1567
+ id: 'wf-my-workflow',
1568
+ name: 'My Workflow Name',
1569
+ description: 'What this workflow does',
1570
+ author: 'you',
1571
+ prompt: 'Step-by-step instructions for the AI to follow...',
1572
+ tags: ['your-tag'],
1573
+ stars: 1,
1574
+ forks: 0,
1575
+ createdAt: '2026-05-15'
1576
+ }`
1577
+ },
1578
+ {
1579
+ title: 'Add a Tutorial',
1580
+ content: 'Tutorials guide users through multi-step learning paths. Add them to the sampleTutorials array with a unique id, title, level, duration, and an array of steps. Each step has a title and content, with optional code blocks.',
1581
+ code: `{
1582
+ id: 'tut-my-topic',
1583
+ title: 'My Tutorial',
1584
+ description: 'What users will learn',
1585
+ level: 'beginner',
1586
+ duration: '15 min',
1587
+ steps: [
1588
+ { title: 'First Step', content: 'Explanation...' },
1589
+ { title: 'Second Step', content: 'More details...', code: 'example command' }
1590
+ ]
1591
+ }`
1592
+ },
1593
+ {
1594
+ title: 'Submit a Pull Request',
1595
+ content: 'After adding your entries to data.ts, run the tests with \`bun test\`, build with \`npm run build\`, and submit a PR on GitHub. See CONTRIBUTING.md for the full contribution guide.'
1596
+ }
1597
+ ]
1598
+ },
1599
+ {
1600
+ id: 'tut-deploy-backend',
1601
+ title: 'Deploy the Agora Backend',
1602
+ description: 'Self-host the Agora API on Cloudflare Workers with D1',
1603
+ level: 'advanced',
1604
+ duration: '30 min',
1605
+ steps: [
1606
+ {
1607
+ title: 'Prerequisites',
1608
+ content: "To deploy the backend you need: a Cloudflare account, the Wrangler CLI installed, and Node.js 18+. The backend is a Cloudflare Workers app using Hono and D1 (Cloudflare's serverless SQLite)."
1609
+ },
1610
+ {
1611
+ title: 'Set Up D1 Database',
1612
+ content: 'Create a D1 database and apply the schema. Note the database ID for the wrangler.toml configuration.',
1613
+ code: `wrangler login
1614
+ wrangler d1 create agora
1615
+ wrangler d1 execute agora --file=backend/schema.sql`
1616
+ },
1617
+ {
1618
+ title: 'Configure Secrets',
1619
+ content: 'Set the required secrets for GitHub OAuth and JWT signing. Create a GitHub OAuth App first at https://github.com/settings/developers.',
1620
+ code: `wrangler secret put GITHUB_CLIENT_ID
1621
+ wrangler secret put GITHUB_CLIENT_SECRET
1622
+ wrangler secret put AUTH_SECRET`
1623
+ },
1624
+ {
1625
+ title: 'Update wrangler.toml',
1626
+ content: 'Edit backend/wrangler.toml with your D1 database ID from step 2. The binding name must stay as "DB" to match the TypeScript bindings.',
1627
+ code: `[[d1_databases]]
1628
+ binding = "DB"
1629
+ database_name = "agora"
1630
+ database_id = "<your-database-id-here>"`
1631
+ },
1632
+ {
1633
+ title: 'Deploy',
1634
+ content: 'Run the deploy command from the backend directory. After deployment, use the API URL with your CLI: `agora auth login --api-url https://your-worker.example.com`',
1635
+ code: `cd backend
1636
+ npm run deploy`
1637
+ },
1638
+ {
1639
+ title: 'Local Development with Docker',
1640
+ content: 'For local development without deploying, use Docker Compose. It runs wrangler with a local D1 SQLite database so you can iterate on the API without a Cloudflare account.',
1641
+ code: `docker compose up --build
1642
+ # API available at http://localhost:8787
1643
+ curl http://localhost:8787/health`
1644
+ }
1645
+ ]
908
1646
  }
909
1647
  ];
910
1648
  export const trendingTags = [