opencode-agora 0.3.0 → 0.4.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 (168) hide show
  1. package/README.md +217 -52
  2. package/dist/cli/app.d.ts +3 -0
  3. package/dist/cli/app.d.ts.map +1 -1
  4. package/dist/cli/app.js +1053 -183
  5. package/dist/cli/app.js.map +1 -1
  6. package/dist/cli/chat-renderer.d.ts +31 -0
  7. package/dist/cli/chat-renderer.d.ts.map +1 -0
  8. package/dist/cli/chat-renderer.js +275 -0
  9. package/dist/cli/chat-renderer.js.map +1 -0
  10. package/dist/cli/commands-meta.d.ts +21 -0
  11. package/dist/cli/commands-meta.d.ts.map +1 -0
  12. package/dist/cli/commands-meta.js +600 -0
  13. package/dist/cli/commands-meta.js.map +1 -0
  14. package/dist/cli/completions.d.ts +18 -0
  15. package/dist/cli/completions.d.ts.map +1 -0
  16. package/dist/cli/completions.js +190 -0
  17. package/dist/cli/completions.js.map +1 -0
  18. package/dist/cli/mcp-server.d.ts +4 -0
  19. package/dist/cli/mcp-server.d.ts.map +1 -0
  20. package/dist/cli/mcp-server.js +277 -0
  21. package/dist/cli/mcp-server.js.map +1 -0
  22. package/dist/cli/menu.d.ts +7 -0
  23. package/dist/cli/menu.d.ts.map +1 -0
  24. package/dist/cli/menu.js +164 -0
  25. package/dist/cli/menu.js.map +1 -0
  26. package/dist/cli/pages/community.d.ts +3 -0
  27. package/dist/cli/pages/community.d.ts.map +1 -0
  28. package/dist/cli/pages/community.js +276 -0
  29. package/dist/cli/pages/community.js.map +1 -0
  30. package/dist/cli/pages/helpers.d.ts +32 -0
  31. package/dist/cli/pages/helpers.d.ts.map +1 -0
  32. package/dist/cli/pages/helpers.js +67 -0
  33. package/dist/cli/pages/helpers.js.map +1 -0
  34. package/dist/cli/pages/home.d.ts +3 -0
  35. package/dist/cli/pages/home.d.ts.map +1 -0
  36. package/dist/cli/pages/home.js +148 -0
  37. package/dist/cli/pages/home.js.map +1 -0
  38. package/dist/cli/pages/marketplace.d.ts +3 -0
  39. package/dist/cli/pages/marketplace.d.ts.map +1 -0
  40. package/dist/cli/pages/marketplace.js +179 -0
  41. package/dist/cli/pages/marketplace.js.map +1 -0
  42. package/dist/cli/pages/news.d.ts +3 -0
  43. package/dist/cli/pages/news.d.ts.map +1 -0
  44. package/dist/cli/pages/news.js +561 -0
  45. package/dist/cli/pages/news.js.map +1 -0
  46. package/dist/cli/pages/settings.d.ts +3 -0
  47. package/dist/cli/pages/settings.d.ts.map +1 -0
  48. package/dist/cli/pages/settings.js +166 -0
  49. package/dist/cli/pages/settings.js.map +1 -0
  50. package/dist/cli/pages/types.d.ts +67 -0
  51. package/dist/cli/pages/types.d.ts.map +1 -0
  52. package/dist/cli/pages/types.js +2 -0
  53. package/dist/cli/pages/types.js.map +1 -0
  54. package/dist/cli/prompter.d.ts +135 -0
  55. package/dist/cli/prompter.d.ts.map +1 -0
  56. package/dist/cli/prompter.js +675 -0
  57. package/dist/cli/prompter.js.map +1 -0
  58. package/dist/cli/shell.d.ts +23 -0
  59. package/dist/cli/shell.d.ts.map +1 -0
  60. package/dist/cli/shell.js +819 -0
  61. package/dist/cli/shell.js.map +1 -0
  62. package/dist/cli/tui.d.ts +7 -0
  63. package/dist/cli/tui.d.ts.map +1 -0
  64. package/dist/cli/tui.js +373 -0
  65. package/dist/cli/tui.js.map +1 -0
  66. package/dist/cli.js +1 -1
  67. package/dist/cli.js.map +1 -1
  68. package/dist/commands.d.ts +14 -0
  69. package/dist/commands.d.ts.map +1 -0
  70. package/dist/commands.js +28 -0
  71. package/dist/commands.js.map +1 -0
  72. package/dist/community/client.d.ts +47 -0
  73. package/dist/community/client.d.ts.map +1 -0
  74. package/dist/community/client.js +245 -0
  75. package/dist/community/client.js.map +1 -0
  76. package/dist/community/types.d.ts +50 -0
  77. package/dist/community/types.d.ts.map +1 -0
  78. package/dist/community/types.js +11 -0
  79. package/dist/community/types.js.map +1 -0
  80. package/dist/config.d.ts +1 -3
  81. package/dist/config.d.ts.map +1 -1
  82. package/dist/config.js +0 -17
  83. package/dist/config.js.map +1 -1
  84. package/dist/data.d.ts +1 -1
  85. package/dist/data.d.ts.map +1 -1
  86. package/dist/data.js +667 -3
  87. package/dist/data.js.map +1 -1
  88. package/dist/format.d.ts +5 -39
  89. package/dist/format.d.ts.map +1 -1
  90. package/dist/format.js +5 -120
  91. package/dist/format.js.map +1 -1
  92. package/dist/history.d.ts +13 -0
  93. package/dist/history.d.ts.map +1 -0
  94. package/dist/history.js +37 -0
  95. package/dist/history.js.map +1 -0
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +114 -234
  98. package/dist/index.js.map +1 -1
  99. package/dist/init.d.ts.map +1 -1
  100. package/dist/init.js +4 -9
  101. package/dist/init.js.map +1 -1
  102. package/dist/live.d.ts +4 -0
  103. package/dist/live.d.ts.map +1 -1
  104. package/dist/live.js +11 -3
  105. package/dist/live.js.map +1 -1
  106. package/dist/marketplace.d.ts +9 -0
  107. package/dist/marketplace.d.ts.map +1 -1
  108. package/dist/marketplace.js +105 -15
  109. package/dist/marketplace.js.map +1 -1
  110. package/dist/news/cache.d.ts +13 -0
  111. package/dist/news/cache.d.ts.map +1 -0
  112. package/dist/news/cache.js +65 -0
  113. package/dist/news/cache.js.map +1 -0
  114. package/dist/news/score.d.ts +4 -0
  115. package/dist/news/score.d.ts.map +1 -0
  116. package/dist/news/score.js +43 -0
  117. package/dist/news/score.js.map +1 -0
  118. package/dist/news/sources/arxiv.d.ts +9 -0
  119. package/dist/news/sources/arxiv.d.ts.map +1 -0
  120. package/dist/news/sources/arxiv.js +103 -0
  121. package/dist/news/sources/arxiv.js.map +1 -0
  122. package/dist/news/sources/github-trending.d.ts +9 -0
  123. package/dist/news/sources/github-trending.d.ts.map +1 -0
  124. package/dist/news/sources/github-trending.js +93 -0
  125. package/dist/news/sources/github-trending.js.map +1 -0
  126. package/dist/news/sources/hn.d.ts +9 -0
  127. package/dist/news/sources/hn.d.ts.map +1 -0
  128. package/dist/news/sources/hn.js +53 -0
  129. package/dist/news/sources/hn.js.map +1 -0
  130. package/dist/news/sources/reddit.d.ts +9 -0
  131. package/dist/news/sources/reddit.d.ts.map +1 -0
  132. package/dist/news/sources/reddit.js +68 -0
  133. package/dist/news/sources/reddit.js.map +1 -0
  134. package/dist/news/sources/rss.d.ts +14 -0
  135. package/dist/news/sources/rss.d.ts.map +1 -0
  136. package/dist/news/sources/rss.js +102 -0
  137. package/dist/news/sources/rss.js.map +1 -0
  138. package/dist/news/types.d.ts +39 -0
  139. package/dist/news/types.d.ts.map +1 -0
  140. package/dist/news/types.js +47 -0
  141. package/dist/news/types.js.map +1 -0
  142. package/dist/preferences.d.ts +14 -0
  143. package/dist/preferences.d.ts.map +1 -0
  144. package/dist/preferences.js +31 -0
  145. package/dist/preferences.js.map +1 -0
  146. package/dist/settings.d.ts +26 -0
  147. package/dist/settings.d.ts.map +1 -0
  148. package/dist/settings.js +257 -0
  149. package/dist/settings.js.map +1 -0
  150. package/dist/transcript.d.ts +28 -0
  151. package/dist/transcript.d.ts.map +1 -0
  152. package/dist/transcript.js +79 -0
  153. package/dist/transcript.js.map +1 -0
  154. package/dist/types.d.ts +6 -1
  155. package/dist/types.d.ts.map +1 -1
  156. package/dist/ui.d.ts +157 -0
  157. package/dist/ui.d.ts.map +1 -0
  158. package/dist/ui.js +296 -0
  159. package/dist/ui.js.map +1 -0
  160. package/package.json +11 -9
  161. package/dist/api.d.ts +0 -72
  162. package/dist/api.d.ts.map +0 -1
  163. package/dist/api.js +0 -109
  164. package/dist/api.js.map +0 -1
  165. package/dist/logger.d.ts +0 -20
  166. package/dist/logger.d.ts.map +0 -1
  167. package/dist/logger.js +0 -59
  168. 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
  {
@@ -130,6 +130,60 @@ export const samplePackages = [
130
130
  createdAt: '2025-03-28'
131
131
  },
132
132
  // ── AI & Memory ──
133
+ {
134
+ id: 'mcp-openai',
135
+ name: 'openai-mcp-server',
136
+ description: 'OpenAI API — GPT completions, embeddings, assistants, and file management',
137
+ author: 'openai',
138
+ version: '1.3.0',
139
+ category: 'mcp',
140
+ tags: ['openai', 'ai', 'llm', 'api', 'completions'],
141
+ stars: 12350,
142
+ installs: 345890,
143
+ repository: 'https://github.com/openai/openai-mcp-server',
144
+ npmPackage: 'openai-mcp-server',
145
+ createdAt: '2025-01-15'
146
+ },
147
+ {
148
+ id: 'mcp-anthropic',
149
+ name: '@anthropic/mcp-server',
150
+ description: 'Anthropic Claude API — completions, messages, and tool use integration',
151
+ author: 'Anthropic, PBC',
152
+ version: '0.4.1',
153
+ category: 'mcp',
154
+ tags: ['anthropic', 'claude', 'ai', 'llm', 'api'],
155
+ stars: 5678,
156
+ installs: 289000,
157
+ repository: 'https://github.com/anthropics/anthropic-mcp-server',
158
+ createdAt: '2025-04-01'
159
+ },
160
+ {
161
+ id: 'mcp-replicate',
162
+ name: 'replicate-mcp-server',
163
+ description: 'Run ML models via Replicate API — image generation, LLMs, audio, and video',
164
+ author: 'Replicate',
165
+ version: '0.3.0',
166
+ category: 'mcp',
167
+ tags: ['replicate', 'ai', 'ml', 'models', 'api'],
168
+ stars: 1234,
169
+ installs: 34560,
170
+ repository: 'https://github.com/replicate/replicate-mcp-server',
171
+ npmPackage: 'replicate-mcp',
172
+ createdAt: '2025-02-10'
173
+ },
174
+ {
175
+ id: 'mcp-huggingface',
176
+ name: 'hf-mcp-server',
177
+ description: 'Hugging Face inference API — text generation, embeddings, and model discovery',
178
+ author: 'huggingface',
179
+ version: '0.5.0',
180
+ category: 'mcp',
181
+ tags: ['huggingface', 'ai', 'transformers', 'api'],
182
+ stars: 2340,
183
+ installs: 56780,
184
+ repository: 'https://github.com/huggingface/hf-mcp-server',
185
+ createdAt: '2025-03-05'
186
+ },
133
187
  {
134
188
  id: 'mcp-sequential-thinking',
135
189
  name: '@modelcontextprotocol/server-sequential-thinking',
@@ -313,7 +367,174 @@ export const samplePackages = [
313
367
  npmPackage: '@browsermcp/mcp',
314
368
  createdAt: '2025-04-05'
315
369
  },
316
- // ── Communication & Productivity ──
370
+ // ── Project Management ──
371
+ {
372
+ id: 'mcp-linear',
373
+ name: '@linear/mcp-server',
374
+ description: 'Linear issue tracking — create and update issues, search projects, manage sprints',
375
+ author: 'Linear',
376
+ version: '1.1.0',
377
+ category: 'mcp',
378
+ tags: ['linear', 'project-management', 'issues', 'sprints'],
379
+ stars: 6543,
380
+ installs: 189000,
381
+ repository: 'https://github.com/linear/linear-mcp-server',
382
+ createdAt: '2025-02-25'
383
+ },
384
+ {
385
+ id: 'mcp-jira',
386
+ name: 'jira-mcp-server',
387
+ description: 'Jira and Confluence — issue creation, search, project management, and wiki access',
388
+ author: 'atlassian-labs',
389
+ version: '0.9.0',
390
+ category: 'mcp',
391
+ tags: ['jira', 'confluence', 'atlassian', 'project-management'],
392
+ stars: 3200,
393
+ installs: 98700,
394
+ repository: 'https://github.com/atlassian-labs/jira-mcp-server',
395
+ npmPackage: 'jira-mcp-server',
396
+ createdAt: '2025-03-01'
397
+ },
398
+ {
399
+ id: 'mcp-asana',
400
+ name: 'asana-mcp-server',
401
+ description: 'Asana task and project management — tasks, projects, teams, and portfolio views',
402
+ author: 'asana-community',
403
+ version: '0.4.0',
404
+ category: 'mcp',
405
+ tags: ['asana', 'project-management', 'tasks'],
406
+ stars: 450,
407
+ installs: 12300,
408
+ repository: 'https://github.com/asana-community/asana-mcp-server',
409
+ createdAt: '2025-04-10'
410
+ },
411
+ // ── Knowledge & Notes ──
412
+ {
413
+ id: 'mcp-obsidian',
414
+ name: 'obsidian-mcp-server',
415
+ description: 'Obsidian vault access — read, search, and create notes across your knowledge base',
416
+ author: 'obsidian-mcp',
417
+ version: '1.5.0',
418
+ category: 'mcp',
419
+ tags: ['obsidian', 'notes', 'knowledge', 'markdown'],
420
+ stars: 9800,
421
+ installs: 345000,
422
+ repository: 'https://github.com/obsidian-mcp/obsidian-mcp-server',
423
+ npmPackage: 'obsidian-mcp-server',
424
+ createdAt: '2025-01-25'
425
+ },
426
+ {
427
+ id: 'mcp-confluence',
428
+ name: 'confluence-mcp-server',
429
+ description: 'Confluence wiki — pages, search, spaces, and content management for documentation',
430
+ author: 'atlassian-labs',
431
+ version: '0.3.0',
432
+ category: 'mcp',
433
+ tags: ['confluence', 'wiki', 'documentation', 'knowledge'],
434
+ stars: 890,
435
+ installs: 23400,
436
+ repository: 'https://github.com/atlassian-labs/confluence-mcp-server',
437
+ npmPackage: 'confluence-mcp-server',
438
+ createdAt: '2025-04-05'
439
+ },
440
+ // ── Development Tools ──
441
+ {
442
+ id: 'mcp-sonarqube',
443
+ name: '@sonarsource/mcp-server-sonarqube',
444
+ description: 'SonarQube code quality — issues, metrics, quality gates, and project analysis',
445
+ author: 'SonarSource',
446
+ version: '0.5.0',
447
+ category: 'mcp',
448
+ tags: ['sonarqube', 'code-quality', 'linting', 'static-analysis'],
449
+ stars: 560,
450
+ installs: 18900,
451
+ repository: 'https://github.com/SonarSource/sonarqube-mcp-server',
452
+ createdAt: '2025-03-20'
453
+ },
454
+ {
455
+ id: 'mcp-snyk',
456
+ name: 'snyk-mcp-server',
457
+ description: 'Snyk vulnerability scanning — dependency checks, container scanning, and IaC analysis',
458
+ author: 'snyk-labs',
459
+ version: '0.3.0',
460
+ category: 'mcp',
461
+ tags: ['snyk', 'security', 'vulnerability', 'dependencies'],
462
+ stars: 780,
463
+ installs: 34500,
464
+ repository: 'https://github.com/snyk-labs/snyk-mcp-server',
465
+ createdAt: '2025-04-15'
466
+ },
467
+ // ── Cloud Platforms ──
468
+ {
469
+ id: 'mcp-aws',
470
+ name: '@aws/mcp-server-aws',
471
+ description: 'AWS cloud management — EC2, S3, Lambda, IAM, and cost management across services',
472
+ author: 'Amazon Web Services',
473
+ version: '0.6.0',
474
+ category: 'mcp',
475
+ tags: ['aws', 'cloud', 'ec2', 's3', 'lambda', 'infrastructure'],
476
+ stars: 4500,
477
+ installs: 156000,
478
+ repository: 'https://github.com/awslabs/aws-mcp-server',
479
+ createdAt: '2025-02-01'
480
+ },
481
+ {
482
+ id: 'mcp-vercel',
483
+ name: '@vercel/mcp-server',
484
+ description: 'Vercel deployment management — projects, deployments, domains, and environment variables',
485
+ author: 'Vercel',
486
+ version: '0.4.0',
487
+ category: 'mcp',
488
+ tags: ['vercel', 'deployment', 'frontend', 'hosting'],
489
+ stars: 3400,
490
+ installs: 89000,
491
+ repository: 'https://github.com/vercel/vercel-mcp-server',
492
+ createdAt: '2025-03-01'
493
+ },
494
+ {
495
+ id: 'mcp-netlify',
496
+ name: '@netlify/mcp-server',
497
+ description: 'Netlify deployment management — sites, deploys, functions, and environment config',
498
+ author: 'Netlify',
499
+ version: '0.3.0',
500
+ category: 'mcp',
501
+ tags: ['netlify', 'deployment', 'hosting', 'jamstack'],
502
+ stars: 890,
503
+ installs: 23400,
504
+ repository: 'https://github.com/netlify/netlify-mcp-server',
505
+ npmPackage: '@netlify/mcp',
506
+ createdAt: '2025-04-01'
507
+ },
508
+ // ── Communication & Community ──
509
+ {
510
+ id: 'mcp-discord',
511
+ name: 'discord-mcp-server',
512
+ description: 'Discord integration — messages, channels, server management, and webhook control',
513
+ author: 'discord-community',
514
+ version: '0.6.0',
515
+ category: 'mcp',
516
+ tags: ['discord', 'chat', 'community', 'messaging'],
517
+ stars: 3456,
518
+ installs: 98700,
519
+ repository: 'https://github.com/discord-community/discord-mcp-server',
520
+ npmPackage: 'discord-mcp-server',
521
+ createdAt: '2025-03-05'
522
+ },
523
+ {
524
+ id: 'mcp-email',
525
+ name: '@sendgrid/mcp-server',
526
+ description: 'Email delivery via SendGrid — send transactional emails, manage templates, and analytics',
527
+ author: 'sendgrid-community',
528
+ version: '0.3.0',
529
+ category: 'mcp',
530
+ tags: ['email', 'sendgrid', 'communication', 'notifications'],
531
+ stars: 450,
532
+ installs: 23400,
533
+ repository: 'https://github.com/sendgrid-community/sendgrid-mcp-server',
534
+ npmPackage: 'sendgrid-mcp',
535
+ createdAt: '2025-04-15'
536
+ },
537
+ // ── Productivity & Office ──
317
538
  {
318
539
  id: 'mcp-slack',
319
540
  name: '@modelcontextprotocol/server-slack',
@@ -385,6 +606,90 @@ export const samplePackages = [
385
606
  npmPackage: '@21st-dev/magic',
386
607
  createdAt: '2025-03-11'
387
608
  },
609
+ // ── Containers & Virtualisation ──
610
+ {
611
+ id: 'mcp-docker',
612
+ name: 'mcp-docker-server',
613
+ description: 'Docker container management — images, containers, compose, logs, and exec',
614
+ author: 'docker-labs',
615
+ version: '1.2.0',
616
+ category: 'mcp',
617
+ tags: ['docker', 'containers', 'devops', 'infrastructure'],
618
+ stars: 8456,
619
+ installs: 234500,
620
+ repository: 'https://github.com/docker-labs/mcp-docker-server',
621
+ npmPackage: 'mcp-docker-server',
622
+ createdAt: '2025-01-20'
623
+ },
624
+ {
625
+ id: 'mcp-sqlite',
626
+ name: '@sqlite/mcp-server',
627
+ description: 'SQLite database management — queries, schema inspection, and data migration',
628
+ author: 'sqlite-community',
629
+ version: '0.8.2',
630
+ category: 'mcp',
631
+ tags: ['sqlite', 'database', 'sql', 'data'],
632
+ stars: 3200,
633
+ installs: 128000,
634
+ repository: 'https://github.com/sqlite-community/sqlite-mcp',
635
+ npmPackage: '@easy-mcps/sqlite-mcp-server',
636
+ createdAt: '2025-02-15'
637
+ },
638
+ {
639
+ id: 'mcp-pinecone',
640
+ name: 'pinecone-mcp-server',
641
+ description: 'Pinecone vector database — index management, upsert, query, and namespace ops',
642
+ author: 'pinecone-io',
643
+ version: '0.4.0',
644
+ category: 'mcp',
645
+ tags: ['pinecone', 'vector', 'database', 'ai', 'embeddings'],
646
+ stars: 890,
647
+ installs: 23450,
648
+ repository: 'https://github.com/pinecone-io/pinecone-mcp-server',
649
+ npmPackage: 'pinecone-mcp',
650
+ createdAt: '2025-03-10'
651
+ },
652
+ {
653
+ id: 'mcp-qdrant',
654
+ name: 'qdrant-mcp-server',
655
+ description: 'Qdrant vector search — collection management, point operations, and filtering',
656
+ author: 'qdrant',
657
+ version: '0.6.0',
658
+ category: 'mcp',
659
+ tags: ['qdrant', 'vector', 'database', 'search', 'ai'],
660
+ stars: 670,
661
+ installs: 18900,
662
+ repository: 'https://github.com/qdrant/qdrant-mcp-server',
663
+ npmPackage: 'qdrant-mcp-server',
664
+ createdAt: '2025-03-15'
665
+ },
666
+ {
667
+ id: 'mcp-chromadb',
668
+ name: 'chromadb-mcp-server',
669
+ description: 'ChromaDB vector store — collections, document embeddings, and similarity search',
670
+ author: 'chroma-core',
671
+ version: '0.3.1',
672
+ category: 'mcp',
673
+ tags: ['chromadb', 'vector', 'database', 'embeddings', 'ai'],
674
+ stars: 1560,
675
+ installs: 45600,
676
+ repository: 'https://github.com/chroma-core/chromadb-mcp-server',
677
+ npmPackage: 'chromadb-mcp',
678
+ createdAt: '2025-04-01'
679
+ },
680
+ {
681
+ id: 'mcp-neo4j',
682
+ name: 'neo4j-mcp-server',
683
+ description: 'Neo4j graph database — Cypher queries, schema management, and graph analytics',
684
+ author: 'neo4j',
685
+ version: '0.5.0',
686
+ category: 'mcp',
687
+ tags: ['neo4j', 'graph', 'database', 'cypher'],
688
+ stars: 2100,
689
+ installs: 56700,
690
+ repository: 'https://github.com/neo4j/neo4j-mcp-server',
691
+ createdAt: '2025-02-20'
692
+ },
388
693
  // ── Cloud, Infra & DevOps ──
389
694
  {
390
695
  id: 'mcp-cloudflare',
@@ -455,7 +760,61 @@ export const samplePackages = [
455
760
  npmPackage: 'mcp-remote',
456
761
  createdAt: '2025-03-17'
457
762
  },
458
- // ── Monitoring & Payments ──
763
+ // ── Monitoring & Observability ──
764
+ {
765
+ id: 'mcp-datadog',
766
+ name: '@datadog/mcp-server',
767
+ description: 'Datadog monitoring — dashboards, monitors, logs, traces, and incident management',
768
+ author: 'DataDog',
769
+ version: '0.5.0',
770
+ category: 'mcp',
771
+ tags: ['datadog', 'monitoring', 'observability', 'apm'],
772
+ stars: 1200,
773
+ installs: 45600,
774
+ repository: 'https://github.com/DataDog/datadog-mcp-server',
775
+ npmPackage: 'datadog-mcp',
776
+ createdAt: '2025-03-10'
777
+ },
778
+ {
779
+ id: 'mcp-grafana',
780
+ name: 'grafana-mcp-server',
781
+ description: 'Grafana dashboards — query metrics, manage alerts, and explore observability data',
782
+ author: 'grafana-community',
783
+ version: '0.4.0',
784
+ category: 'mcp',
785
+ tags: ['grafana', 'monitoring', 'dashboards', 'observability'],
786
+ stars: 2340,
787
+ installs: 67800,
788
+ repository: 'https://github.com/grafana-community/grafana-mcp-server',
789
+ createdAt: '2025-02-20'
790
+ },
791
+ {
792
+ id: 'mcp-pagerduty',
793
+ name: 'pagerduty-mcp-server',
794
+ description: 'PagerDuty incident management — incidents, on-call schedules, and escalation policies',
795
+ author: 'PagerDuty',
796
+ version: '0.3.5',
797
+ category: 'mcp',
798
+ tags: ['pagerduty', 'incidents', 'on-call', 'alerting'],
799
+ stars: 560,
800
+ installs: 18900,
801
+ repository: 'https://github.com/PagerDuty/pagerduty-mcp-server',
802
+ createdAt: '2025-04-01'
803
+ },
804
+ {
805
+ id: 'mcp-newrelic',
806
+ name: '@newrelic/mcp-server',
807
+ description: 'New Relic observability — APM, infrastructure, logs, and query NRQL across services',
808
+ author: 'New Relic',
809
+ version: '0.3.0',
810
+ category: 'mcp',
811
+ tags: ['newrelic', 'apm', 'observability', 'monitoring'],
812
+ stars: 340,
813
+ installs: 12300,
814
+ repository: 'https://github.com/newrelic/newrelic-mcp-server',
815
+ createdAt: '2025-04-10'
816
+ },
817
+ // ── Payments & Commerce ──
459
818
  {
460
819
  id: 'mcp-sentry',
461
820
  name: '@sentry/mcp-server',
@@ -484,6 +843,19 @@ export const samplePackages = [
484
843
  npmPackage: '@stripe/mcp',
485
844
  createdAt: '2025-02-19'
486
845
  },
846
+ {
847
+ id: 'mcp-sequelize',
848
+ name: '@anthropic/mcp-server-sequelize',
849
+ description: 'Sequelize ORM integration — model management, migrations, query inspection',
850
+ author: 'Anthropic, PBC',
851
+ version: '0.1.0',
852
+ category: 'mcp',
853
+ tags: ['database', 'sequelize', 'orm', 'sql'],
854
+ stars: 2840,
855
+ installs: 12400,
856
+ repository: 'https://github.com/modelcontextprotocol/servers',
857
+ createdAt: '2025-03-10'
858
+ },
487
859
  // ── Prompts ──
488
860
  {
489
861
  id: 'prompt-code-review',
@@ -520,6 +892,42 @@ export const samplePackages = [
520
892
  stars: 780,
521
893
  installs: 4500,
522
894
  createdAt: '2025-03-01'
895
+ },
896
+ {
897
+ id: 'prompt-debug-session',
898
+ name: 'Structured Debugging',
899
+ description: 'Systematic root-cause analysis — form hypotheses, gather evidence, identify the bug',
900
+ author: 'agora-community',
901
+ version: '1.0.0',
902
+ category: 'prompt',
903
+ tags: ['debug', 'root-cause', 'analysis', 'troubleshooting'],
904
+ stars: 920,
905
+ installs: 6200,
906
+ createdAt: '2025-04-10'
907
+ },
908
+ {
909
+ id: 'prompt-test-strategy',
910
+ name: 'Test Strategy Planner',
911
+ description: 'Design a comprehensive testing strategy covering unit, integration, e2e, and property-based tests',
912
+ author: 'agora-community',
913
+ version: '1.0.0',
914
+ category: 'prompt',
915
+ tags: ['testing', 'strategy', 'quality', 'coverage'],
916
+ stars: 410,
917
+ installs: 2100,
918
+ createdAt: '2025-04-20'
919
+ },
920
+ {
921
+ id: 'prompt-migration-plan',
922
+ name: 'Migration Plan Generator',
923
+ description: 'Plan safe, phased migrations — framework upgrades, database migrations, cloud provider moves',
924
+ author: 'agora-community',
925
+ version: '1.0.0',
926
+ category: 'prompt',
927
+ tags: ['migration', 'planning', 'safety', 'rollback'],
928
+ stars: 340,
929
+ installs: 1800,
930
+ createdAt: '2025-05-01'
523
931
  }
524
932
  ];
525
933
  export const sampleWorkflows = [
@@ -640,6 +1048,46 @@ Provide a score (1-10) for each dimension with actionable improvements.`,
640
1048
  forks: 42,
641
1049
  createdAt: '2025-03-10'
642
1050
  },
1051
+ {
1052
+ id: 'wf-doc-generator',
1053
+ name: 'Documentation Generator',
1054
+ description: 'Generate comprehensive documentation for codebases — API docs, README, and inline comments',
1055
+ author: 'doc-master',
1056
+ prompt: `Generate thorough documentation for the codebase:
1057
+ 1. Create or update README with setup, usage, and architecture
1058
+ 2. Document all public APIs with parameter descriptions
1059
+ 3. Add inline code comments for complex logic
1060
+ 4. Generate API reference docs from TypeScript types
1061
+ 5. Create changelog from git history
1062
+ 6. Add contributing guide
1063
+ 7. Document environment variables and configuration
1064
+
1065
+ Focus on clarity and completeness. The docs should help new contributors onboard quickly.`,
1066
+ tags: ['documentation', 'readme', 'api-docs', 'onboarding'],
1067
+ stars: 245,
1068
+ forks: 38,
1069
+ createdAt: '2025-04-05'
1070
+ },
1071
+ {
1072
+ id: 'wf-postmortem',
1073
+ name: 'Incident Post-Mortem',
1074
+ description: 'Structured incident analysis — timeline, root cause, impact, and action items',
1075
+ author: 'sre-team',
1076
+ prompt: `Conduct a blameless post-mortem analysis:
1077
+ 1. Establish incident timeline from logs and metrics
1078
+ 2. Identify root cause and contributing factors
1079
+ 3. Document impact (users affected, downtime duration, data loss)
1080
+ 4. Analyze detection and response time
1081
+ 5. Identify systemic issues beyond the immediate cause
1082
+ 6. Propose specific action items with owners
1083
+ 7. Define monitoring to detect recurrence
1084
+
1085
+ The goal is learning, not blame. Every action item should be specific and testable.`,
1086
+ tags: ['postmortem', 'incident', 'sre', 'analysis'],
1087
+ stars: 189,
1088
+ forks: 45,
1089
+ createdAt: '2025-04-20'
1090
+ },
643
1091
  {
644
1092
  id: 'wf-dependency-audit',
645
1093
  name: 'Dependency Audit',
@@ -884,6 +1332,82 @@ npx tsx src/my-server.ts
884
1332
  }
885
1333
  ]
886
1334
  },
1335
+ {
1336
+ id: 'tut-docker-dev',
1337
+ title: 'Docker Development with MCP',
1338
+ description: 'Manage Docker containers, images, and compose files from your AI assistant',
1339
+ level: 'intermediate',
1340
+ duration: '20 min',
1341
+ steps: [
1342
+ {
1343
+ title: 'Install the Docker MCP Server',
1344
+ content: 'First, install the Docker MCP server globally. This lets your AI assistant manage containers.',
1345
+ code: `npm install -g mcp-docker-server`
1346
+ },
1347
+ {
1348
+ title: 'Configure in OpenCode',
1349
+ content: 'Add the Docker MCP server to your opencode.json:',
1350
+ code: `{
1351
+ "mcp": {
1352
+ "docker": {
1353
+ "type": "local",
1354
+ "command": ["npx", "mcp-docker-server"]
1355
+ }
1356
+ }
1357
+ }`
1358
+ },
1359
+ {
1360
+ title: 'Common Docker Tasks',
1361
+ 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.'
1362
+ }
1363
+ ]
1364
+ },
1365
+ {
1366
+ id: 'tut-api-testing',
1367
+ title: 'API Testing with MCP Tools',
1368
+ description: 'Learn to test and debug APIs using MCP servers and OpenCode workflows',
1369
+ level: 'beginner',
1370
+ duration: '15 min',
1371
+ steps: [
1372
+ {
1373
+ title: 'Set Up API Testing Tools',
1374
+ content: 'Install the necessary MCP servers for API testing. The Brave Search and GitHub servers are useful for testing external APIs.',
1375
+ code: `agora install mcp-github`
1376
+ },
1377
+ {
1378
+ title: 'Test REST Endpoints',
1379
+ 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."'
1380
+ },
1381
+ {
1382
+ title: 'Automate API Tests',
1383
+ 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."'
1384
+ }
1385
+ ]
1386
+ },
1387
+ {
1388
+ id: 'tut-vector-search',
1389
+ title: 'Vector Search with MCP',
1390
+ description: 'Set up and query vector databases for semantic search and RAG applications',
1391
+ level: 'advanced',
1392
+ duration: '30 min',
1393
+ steps: [
1394
+ {
1395
+ title: 'Choose a Vector Database',
1396
+ content: 'Agora supports several vector databases. For local development, ChromaDB is the easiest to start with. For production, Pinecone or Qdrant are recommended.',
1397
+ code: `agora search vector
1398
+ agora browse mcp-chromadb`
1399
+ },
1400
+ {
1401
+ title: 'Install and Configure',
1402
+ content: 'Install your chosen vector database MCP server and add it to OpenCode:',
1403
+ code: `npm install -g chromadb-mcp-server`
1404
+ },
1405
+ {
1406
+ title: 'Semantic Search in Action',
1407
+ 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.'
1408
+ }
1409
+ ]
1410
+ },
887
1411
  {
888
1412
  id: 'tut-opencode-tips',
889
1413
  title: 'OpenCode Power User Tips',
@@ -905,6 +1429,146 @@ npx tsx src/my-server.ts
905
1429
  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
1430
  }
907
1431
  ]
1432
+ },
1433
+ {
1434
+ id: 'tut-agora-auth',
1435
+ title: 'Agora Auth & Login',
1436
+ description: 'Authenticate with the Agora API using the device-code login flow',
1437
+ level: 'beginner',
1438
+ duration: '10 min',
1439
+ steps: [
1440
+ {
1441
+ title: 'Why Authenticate?',
1442
+ 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.'
1443
+ },
1444
+ {
1445
+ title: 'Device-Code Login',
1446
+ 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.',
1447
+ code: `agora auth login --api-url https://api.agora.example.com`
1448
+ },
1449
+ {
1450
+ title: 'Check Your Status',
1451
+ 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.',
1452
+ code: `agora auth status --json`
1453
+ },
1454
+ {
1455
+ title: 'Headless / CI Login',
1456
+ 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.',
1457
+ code: `agora auth login --token $AGORA_TOKEN --api-url https://api.agora.example.com`
1458
+ }
1459
+ ]
1460
+ },
1461
+ {
1462
+ id: 'tut-catalog-contrib',
1463
+ title: 'Contributing to the Catalog',
1464
+ description: 'Add MCP servers, workflows, and tutorials to the Agora ecosystem',
1465
+ level: 'intermediate',
1466
+ duration: '20 min',
1467
+ steps: [
1468
+ {
1469
+ title: 'The Offline Catalog',
1470
+ 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.'
1471
+ },
1472
+ {
1473
+ title: 'Add an MCP Server',
1474
+ 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.',
1475
+ code: `{
1476
+ id: 'mcp-my-server',
1477
+ name: '@you/mcp-server',
1478
+ description: 'Description of what it does',
1479
+ author: 'You',
1480
+ version: '1.0.0',
1481
+ category: 'mcp',
1482
+ tags: ['your-tag', 'tool'],
1483
+ stars: 100,
1484
+ installs: 500,
1485
+ npmPackage: '@you/mcp-server',
1486
+ createdAt: '2026-05-15'
1487
+ }`
1488
+ },
1489
+ {
1490
+ title: 'Add a Workflow',
1491
+ 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.',
1492
+ code: `{
1493
+ id: 'wf-my-workflow',
1494
+ name: 'My Workflow Name',
1495
+ description: 'What this workflow does',
1496
+ author: 'you',
1497
+ prompt: 'Step-by-step instructions for the AI to follow...',
1498
+ tags: ['your-tag'],
1499
+ stars: 1,
1500
+ forks: 0,
1501
+ createdAt: '2026-05-15'
1502
+ }`
1503
+ },
1504
+ {
1505
+ title: 'Add a Tutorial',
1506
+ 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.',
1507
+ code: `{
1508
+ id: 'tut-my-topic',
1509
+ title: 'My Tutorial',
1510
+ description: 'What users will learn',
1511
+ level: 'beginner',
1512
+ duration: '15 min',
1513
+ steps: [
1514
+ { title: 'First Step', content: 'Explanation...' },
1515
+ { title: 'Second Step', content: 'More details...', code: 'example command' }
1516
+ ]
1517
+ }`
1518
+ },
1519
+ {
1520
+ title: 'Submit a Pull Request',
1521
+ 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.'
1522
+ }
1523
+ ]
1524
+ },
1525
+ {
1526
+ id: 'tut-deploy-backend',
1527
+ title: 'Deploy the Agora Backend',
1528
+ description: 'Self-host the Agora API on Cloudflare Workers with D1',
1529
+ level: 'advanced',
1530
+ duration: '30 min',
1531
+ steps: [
1532
+ {
1533
+ title: 'Prerequisites',
1534
+ 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).'
1535
+ },
1536
+ {
1537
+ title: 'Set Up D1 Database',
1538
+ content: 'Create a D1 database and apply the schema. Note the database ID for the wrangler.toml configuration.',
1539
+ code: `wrangler login
1540
+ wrangler d1 create agora
1541
+ wrangler d1 execute agora --file=backend/schema.sql`
1542
+ },
1543
+ {
1544
+ title: 'Configure Secrets',
1545
+ content: 'Set the required secrets for GitHub OAuth and JWT signing. Create a GitHub OAuth App first at https://github.com/settings/developers.',
1546
+ code: `wrangler secret put GITHUB_CLIENT_ID
1547
+ wrangler secret put GITHUB_CLIENT_SECRET
1548
+ wrangler secret put AUTH_SECRET`
1549
+ },
1550
+ {
1551
+ title: 'Update wrangler.toml',
1552
+ 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.',
1553
+ code: `[[d1_databases]]
1554
+ binding = "DB"
1555
+ database_name = "agora"
1556
+ database_id = "<your-database-id-here>"`
1557
+ },
1558
+ {
1559
+ title: 'Deploy',
1560
+ 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`',
1561
+ code: `cd backend
1562
+ npm run deploy`
1563
+ },
1564
+ {
1565
+ title: 'Local Development with Docker',
1566
+ 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.',
1567
+ code: `docker compose up --build
1568
+ # API available at http://localhost:8787
1569
+ curl http://localhost:8787/health`
1570
+ }
1571
+ ]
908
1572
  }
909
1573
  ];
910
1574
  export const trendingTags = [