funifier-mcp 0.3.14 → 0.3.16

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 (81) hide show
  1. package/.cursor/rules/funifier.mdc +1 -0
  2. package/.github/copilot-instructions.md +1 -0
  3. package/AGENTS.md +1 -0
  4. package/datasource-funifier-docs/.coverage.json +10 -3
  5. package/datasource-funifier-docs/.validation.json +71 -35
  6. package/datasource-funifier-docs/knowledge/index.md +1 -0
  7. package/datasource-funifier-docs/knowledge/modules/audit.md +357 -0
  8. package/dist/core/api-client.d.ts +4 -1
  9. package/dist/core/api-client.d.ts.map +1 -1
  10. package/dist/core/api-client.js +30 -0
  11. package/dist/core/api-client.js.map +1 -1
  12. package/dist/core/constants.d.ts +1 -0
  13. package/dist/core/constants.d.ts.map +1 -1
  14. package/dist/core/constants.js +2 -0
  15. package/dist/core/constants.js.map +1 -1
  16. package/dist/core/types/Audit.d.ts +25 -0
  17. package/dist/core/types/Audit.d.ts.map +1 -0
  18. package/dist/core/types/Audit.js +3 -0
  19. package/dist/core/types/Audit.js.map +1 -0
  20. package/dist/core/types/index.d.ts +1 -0
  21. package/dist/core/types/index.d.ts.map +1 -1
  22. package/dist/core/types/index.js +1 -0
  23. package/dist/core/types/index.js.map +1 -1
  24. package/dist/mcp/bundle.js +74 -74
  25. package/dist/mcp/tools/_fetch-current.d.ts +1 -1
  26. package/dist/mcp/tools/_fetch-current.d.ts.map +1 -1
  27. package/dist/mcp/tools/_fetch-current.js +3 -0
  28. package/dist/mcp/tools/_fetch-current.js.map +1 -1
  29. package/dist/mcp/tools/delete.d.ts.map +1 -1
  30. package/dist/mcp/tools/delete.js +4 -0
  31. package/dist/mcp/tools/delete.js.map +1 -1
  32. package/dist/mcp/tools/get.d.ts.map +1 -1
  33. package/dist/mcp/tools/get.js +4 -0
  34. package/dist/mcp/tools/get.js.map +1 -1
  35. package/dist/mcp/tools/list.d.ts.map +1 -1
  36. package/dist/mcp/tools/list.js +14 -0
  37. package/dist/mcp/tools/list.js.map +1 -1
  38. package/dist/mcp/tools/save.d.ts.map +1 -1
  39. package/dist/mcp/tools/save.js +3 -0
  40. package/dist/mcp/tools/save.js.map +1 -1
  41. package/dist/mcp/tools/save.test.js +12 -0
  42. package/dist/mcp/tools/save.test.js.map +1 -1
  43. package/package.json +2 -2
  44. package/skills/funifier/SKILL.md +1 -0
  45. package/skills/funifier/references/configure-security.md +6 -0
  46. package/skills/funifier/references/create-action.md +7 -0
  47. package/skills/funifier/references/create-aggregate.md +6 -0
  48. package/skills/funifier/references/create-audit.md +123 -0
  49. package/skills/funifier/references/create-challenge.md +7 -0
  50. package/skills/funifier/references/create-competition.md +7 -0
  51. package/skills/funifier/references/create-crossword.md +6 -0
  52. package/skills/funifier/references/create-custom-object.md +6 -0
  53. package/skills/funifier/references/create-custom-page.md +6 -0
  54. package/skills/funifier/references/create-folder.md +7 -0
  55. package/skills/funifier/references/create-lastmile.md +6 -0
  56. package/skills/funifier/references/create-leaderboard.md +6 -0
  57. package/skills/funifier/references/create-level.md +7 -0
  58. package/skills/funifier/references/create-lottery.md +7 -0
  59. package/skills/funifier/references/create-mystery.md +6 -0
  60. package/skills/funifier/references/create-notification.md +6 -0
  61. package/skills/funifier/references/create-point.md +7 -0
  62. package/skills/funifier/references/create-quiz.md +7 -0
  63. package/skills/funifier/references/create-scheduler.md +6 -0
  64. package/skills/funifier/references/create-story.md +6 -0
  65. package/skills/funifier/references/create-swap.md +6 -0
  66. package/skills/funifier/references/create-trigger.md +8 -0
  67. package/skills/funifier/references/create-virtual-good.md +6 -0
  68. package/skills/funifier/references/create-webhook.md +6 -0
  69. package/skills/funifier/references/create-websocket.md +6 -0
  70. package/skills/funifier/references/create-widget.md +6 -0
  71. package/skills/funifier/references/date-handling.md +6 -0
  72. package/skills/funifier/references/debug.md +6 -0
  73. package/skills/funifier/references/help.md +6 -0
  74. package/skills/funifier/references/implement-frontend.md +7 -0
  75. package/skills/funifier/references/import-csv.md +6 -0
  76. package/skills/funifier/references/manage-indexes.md +6 -0
  77. package/skills/funifier/references/manage-player.md +7 -0
  78. package/skills/funifier/references/manage-team.md +6 -0
  79. package/skills/funifier/references/upload-file.md +6 -0
  80. package/datasource-funifier-docs/.search-index.json +0 -58279
  81. package/datasource-funifier-docs/.skills-map.json +0 -137
@@ -96,3 +96,10 @@ POST /v3/competition/join { "competition": "<_id>", "player": "<player_id>" }
96
96
  POST /v3/competition/leader/aggregate?id=<_id>
97
97
  GET /v3/competition/<_id>/execute (manual execution only)
98
98
  ```
99
+
100
+ ## Verified References
101
+
102
+ | Claim | Status | Evidence |
103
+ |-------|--------|----------|
104
+ | Competition is the entity class for timed ranking contests with enrollment and position-based rewards in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/competition/Competition.java:Competition |
105
+ | CompetitionManager manages competition execution, ranking computation, and reward distribution in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/competition/CompetitionManager.java:CompetitionManager |
@@ -572,3 +572,9 @@ funifier_list type=crossword search=<titulo>
572
572
  ```
573
573
 
574
574
  Teste o jogo no Studio e verifique que as dicas e palavras estão corretas.
575
+
576
+ ## Verified References
577
+
578
+ | Claim | Status | Evidence |
579
+ |-------|--------|----------|
580
+ | Crossword is the entity class for word puzzle games with title, words, and clue positions in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/crossword/Crossword.java:Crossword |
@@ -89,3 +89,9 @@ DELETE /v3/database/car__c?q=_id:'car001'
89
89
  ### 7. Usar em triggers
90
90
 
91
91
  Para executar trigger em eventos da coleção, use `entity: "car__c"` no payload do trigger.
92
+
93
+ ## Verified References
94
+
95
+ | Claim | Status | Evidence |
96
+ |-------|--------|----------|
97
+ | DatabaseManager provides MongoDB connection for custom __c collection CRUD operations in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/database/DatabaseManager.java:DatabaseManager |
@@ -133,3 +133,9 @@ PUT /v3/database/studio_page { "_id": "...", "display": true, "title": "...",
133
133
 
134
134
  Acesse `/studio/custom/<slug>` no browser para testar.
135
135
  Para CRUD completo: crie página de lista (`display: true`) + formulário (`display: false`, slug com `/:id`).
136
+
137
+ ## Verified References
138
+
139
+ | Claim | Status | Evidence |
140
+ |-------|--------|----------|
141
+ | DatabaseManager provides MongoDB connection access for aggregate-backed Studio custom pages | ✓ verified | Class:src/main/java/com/funifier/engine/database/DatabaseManager.java:DatabaseManager |
@@ -102,3 +102,10 @@ funifier_save type=folder-log payload=<json>
102
102
  funifier_folder operation=progress { "folder": "<root_id>", "player": "player123" }
103
103
  funifier_folder operation=inside { "folder": "<root_id>" }
104
104
  ```
105
+
106
+ ## Verified References
107
+
108
+ | Claim | Status | Evidence |
109
+ |-------|--------|----------|
110
+ | Folder is the entity class for learning trail nodes with unlock_policy, parent, and position fields in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/folder/Folder.java:Folder |
111
+ | FolderManager handles folder tree traversal, progress computation, and cascade deletion in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/folder/FolderManager.java:FolderManager |
@@ -641,3 +641,9 @@ funifier_list type=lastmile
641
641
  ```
642
642
 
643
643
  Simule progresso do jogador até 80% do desafio e verifique se a mensagem é disparada.
644
+
645
+ ## Verified References
646
+
647
+ | Claim | Status | Evidence |
648
+ |-------|--------|----------|
649
+ | LastMile is the entity class for threshold-triggered motivational messages linked to challenge progress in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/lastmile/LastMile.java:LastMile |
@@ -124,3 +124,9 @@ funifier_list type=leaderboard search=<title>
124
124
  ```
125
125
 
126
126
  If scores look wrong, reset cache: `GET /v3/leaderboard/reset`
127
+
128
+ ## Verified References
129
+
130
+ | Claim | Status | Evidence |
131
+ |-------|--------|----------|
132
+ | LeaderBoardManager manages leaderboard ranking computation and cache reset in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/leader/LeaderBoardManager.java:LeaderBoardManager |
@@ -92,3 +92,10 @@ funifier_list type=level
92
92
  ```
93
93
 
94
94
  Confirme que os níveis estão em ordem crescente de `minPoints`.
95
+
96
+ ## Verified References
97
+
98
+ | Claim | Status | Evidence |
99
+ |-------|--------|----------|
100
+ | Level is the entity class defining level thresholds and point item reference in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/level/Level.java:Level |
101
+ | LevelManager tracks player level progression and threshold evaluation | ✓ verified | Class:src/main/java/com/funifier/engine/level/LevelManager.java:LevelManager |
@@ -911,3 +911,10 @@ GET /v3/lottery/participants?lottery=<_id>
911
911
  ```
912
912
 
913
913
  To undo: `DELETE /v3/lottery/:id/execute`
914
+
915
+ ## Verified References
916
+
917
+ | Claim | Status | Evidence |
918
+ |-------|--------|----------|
919
+ | Lottery is the entity class for ticket-based prize draws with drawDate, choiceMethod, and maxWinners in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/lottery/Lottery.java:Lottery |
920
+ | LotteryManager handles ticket generation, draw execution, and winner selection in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/lottery/LotteryManager.java:LotteryManager |
@@ -767,3 +767,9 @@ funifier_save type=mystery payload=<json>
767
767
  GET /v3/mystery/evaluate/<_id>?player=<player_id>
768
768
  GET /v3/mystery/execute/<_id>?player=<player_id>
769
769
  ```
770
+
771
+ ## Verified References
772
+
773
+ | Claim | Status | Evidence |
774
+ |-------|--------|----------|
775
+ | MysteryBox is the entity class for probability-based instant games with options, win_chart, and requirements in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/mystery/MysteryBox.java:MysteryBox |
@@ -73,3 +73,9 @@ funifier_list type=notification
73
73
  ```
74
74
 
75
75
  Dispare o evento correspondente e verifique se a notificação é entregue.
76
+
77
+ ## Verified References
78
+
79
+ | Claim | Status | Evidence |
80
+ |-------|--------|----------|
81
+ | Notification is the entity class for automated player feedback messages with event, scope, and content fields in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/notify/Notification.java:Notification |
@@ -93,3 +93,10 @@ funifier_list type=point search=<_id>
93
93
  ```
94
94
 
95
95
  Do NOT use `funifier_logs` — that is only for triggers and schedulers.
96
+
97
+ ## Verified References
98
+
99
+ | Claim | Status | Evidence |
100
+ |-------|--------|----------|
101
+ | PointCategory is the entity class with category, shortName, and techniques fields for defining point types | ✓ verified | Class:src/main/java/com/funifier/engine/point/PointCategory.java:PointCategory |
102
+ | PointManager manages point accumulation and balance queries in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/point/PointManager.java:PointManager |
@@ -96,3 +96,10 @@ POST /v3/quiz/start { "quiz": "<id>", "player": "<player_id>" }
96
96
  POST /v3/question/log/bulk [{ "quiz": "<id>", "quiz_log": "<log_id>", "question": "<q_id>", "answer": ["1"], "player": "<player_id>" }]
97
97
  POST /v3/quiz/finish { "quiz_log": "<log_id>" }
98
98
  ```
99
+
100
+ ## Verified References
101
+
102
+ | Claim | Status | Evidence |
103
+ |-------|--------|----------|
104
+ | Quiz is the entity class storing questions and answer configuration in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/quiz/Quiz.java:Quiz |
105
+ | QuizManager handles quiz scoring, lifecycle, and player response processing | ✓ verified | Class:src/main/java/com/funifier/engine/quiz/QuizManager.java:QuizManager |
@@ -139,3 +139,9 @@ funifier_logs type=scheduler id=<_id>
139
139
  ```
140
140
 
141
141
  Confirme que não há erros de compilação ou execução no stack trace.
142
+
143
+ ## Verified References
144
+
145
+ | Claim | Status | Evidence |
146
+ |-------|--------|----------|
147
+ | SchedulerManager is the class that manages cron-based script execution in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/integration/scheduler/SchedulerManager.java:SchedulerManager |
@@ -634,3 +634,9 @@ GET /v3/story/<_id>
634
634
  ```
635
635
 
636
636
  Teste a navegação entre cenas no Studio antes de publicar.
637
+
638
+ ## Verified References
639
+
640
+ | Claim | Status | Evidence |
641
+ |-------|--------|----------|
642
+
@@ -93,3 +93,9 @@ POST /v3/swap/receive { "swap": "<swap_id>" }
93
93
  POST /v3/swap/counter/offer { "swap": "<swap_id>", "buyer": "jerry", "offer": [{ "total": 1, "type": 0, "item": "coin" }] }
94
94
  POST /v3/swap/counter/offer/accept { "offer": "<offer_id>" }
95
95
  ```
96
+
97
+ ## Verified References
98
+
99
+ | Claim | Status | Evidence |
100
+ |-------|--------|----------|
101
+ | Swap is the entity class for player-to-player trade offers with seller, rewards, and requires fields in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/swap/Swap.java:Swap |
@@ -183,3 +183,11 @@ funifier_logs type=trigger id=<_id>
183
183
  ```
184
184
 
185
185
  Confirme que não há erros de compilação ou execução. Se houver, leia o stack trace e corrija o script.
186
+
187
+ ## Verified References
188
+
189
+ | Claim | Status | Evidence |
190
+ |-------|--------|----------|
191
+ | Achievement constants TYPE_POINT=0, TYPE_CHALLENGE=1, TYPE_VIRTUAL_GOOD=2, TYPE_LEVEL=3 are defined in the Achievement class | ✓ verified | Class:src/main/java/com/funifier/engine/achievement/Achievement.java:Achievement |
192
+ | ActionLog is the entity class for action triggers with fields actionId, userId, attributes (Map), time, and id | ✓ verified | Class:src/main/java/com/funifier/engine/action/ActionLog.java:ActionLog |
193
+ | TriggerManager is the class that manages trigger script execution and lifecycle in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/integration/trigger/TriggerManager.java:TriggerManager |
@@ -94,3 +94,9 @@ Para testar uma compra:
94
94
  ```
95
95
  POST /v3/virtualgoods/purchase { "player": "<id>", "item": "<item_id>", "total": 1 }
96
96
  ```
97
+
98
+ ## Verified References
99
+
100
+ | Claim | Status | Evidence |
101
+ |-------|--------|----------|
102
+ | CatalogManager is the class managing virtual goods catalog items, pricing, and purchase lifecycle in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/catalog/CatalogManager.java:CatalogManager |
@@ -70,3 +70,9 @@ funifier_list type=webhook
70
70
  ### 5. Testar
71
71
 
72
72
  Dispare um evento (ex: log uma ação que gera conquista) e verifique se o endpoint externo recebeu o payload.
73
+
74
+ ## Verified References
75
+
76
+ | Claim | Status | Evidence |
77
+ |-------|--------|----------|
78
+ | Webhook is the entity class for outbound event notifications to external HTTP endpoints in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/webhook/Webhook.java:Webhook |
@@ -69,3 +69,9 @@ funifier_list type=websocket
69
69
  ```
70
70
 
71
71
  Conecte um cliente WebSocket e dispare um evento para confirmar que as mensagens chegam em tempo real.
72
+
73
+ ## Verified References
74
+
75
+ | Claim | Status | Evidence |
76
+ |-------|--------|----------|
77
+ | WebSocket is the entity class for real-time bidirectional communication configuration in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/websocket/WebSocket.java:WebSocket |
@@ -74,3 +74,9 @@ Cole o código de embed na página destino (intranet, LMS, etc.) e verifique que
74
74
  funifier_list type=widget
75
75
  GET /v3/widget/<_id>
76
76
  ```
77
+
78
+ ## Verified References
79
+
80
+ | Claim | Status | Evidence |
81
+ |-------|--------|----------|
82
+ | Widget is the entity class for embeddable visual gamification components with type, configuration, and display settings in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/widget/Widget.java:Widget |
@@ -170,3 +170,9 @@ Não coloque o parâmetro convertido para `Date` dentro de `{ "$date": "$param:s
170
170
  - [ ] Em prepared aggregate, usar `"$param:nome"` exatamente como string.
171
171
  - [ ] Para data absoluta em prepared aggregate, converter no `script` com `DateUtil.parse`, validar `null`, e substituir o `Date` diretamente em `$gte`/`$lte`.
172
172
  - [ ] Testar aggregate direto antes de salvar como prepared aggregate.
173
+
174
+ ## Verified References
175
+
176
+ | Claim | Status | Evidence |
177
+ |-------|--------|----------|
178
+
@@ -90,3 +90,9 @@ Leia o arquivo de doc específico para o módulo com problema:
90
90
  - Scheduler → `funifier_read_doc path=modules/scheduler`
91
91
  - Aggregate → `funifier_read_doc path=guides/aggregates`
92
92
  - Security/Auth → `funifier_read_doc path=modules/security`
93
+
94
+ ## Verified References
95
+
96
+ | Claim | Status | Evidence |
97
+ |-------|--------|----------|
98
+ | TriggerManager is the entry point for trigger script execution and error capture in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/integration/trigger/TriggerManager.java:TriggerManager |
@@ -79,3 +79,9 @@ Baseado na tabela acima, instrua o usuário a usar a skill específica.
79
79
  ### 4. Se não encontrar skill específica
80
80
 
81
81
  Consulte `funifier_read_doc path=index` e leia o módulo relevante diretamente.
82
+
83
+ ## Verified References
84
+
85
+ | Claim | Status | Evidence |
86
+ |-------|--------|----------|
87
+ | Achievement is the core entity class representing all gamification rewards in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/achievement/Achievement.java:Achievement |
@@ -122,3 +122,10 @@ await fetch('/v3/database/cycle__c?strict=true', {
122
122
  ### 5. Hospedar no Funifier (opcional)
123
123
 
124
124
  Para arquivos estáticos, leia `funifier_read_doc path=modules/static-repo`.
125
+
126
+ ## Verified References
127
+
128
+ | Claim | Status | Evidence |
129
+ |-------|--------|----------|
130
+ | PlayerManager handles player authentication and session management in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/player/PlayerManager.java:PlayerManager |
131
+ | ActionManager processes action event registration from frontend clients | ✓ verified | Class:src/main/java/com/funifier/engine/action/ActionManager.java:ActionManager |
@@ -73,3 +73,9 @@ Após import, verifique se os registros foram criados:
73
73
  ```
74
74
  funifier_list type=player search=<nome_importado>
75
75
  ```
76
+
77
+ ## Verified References
78
+
79
+ | Claim | Status | Evidence |
80
+ |-------|--------|----------|
81
+
@@ -83,3 +83,9 @@ Get the index name from `action=list`. The `_id_` index cannot be dropped.
83
83
  | Unique email | `{"email": 1}` (uniqueness enforced by MongoDB, not this API) |
84
84
 
85
85
  For a composite (e.g. `{player: 1, time: -1}` to back filter+sort in one plan), use the Groovy/trigger path shown in the Limitation section — not this tool.
86
+
87
+ ## Verified References
88
+
89
+ | Claim | Status | Evidence |
90
+ |-------|--------|----------|
91
+
@@ -80,3 +80,10 @@ GET /v3/player/<_id>/status
80
80
  ```
81
81
  GET /v3/team/<team_id>/member/add/<player_id>
82
82
  ```
83
+
84
+ ## Verified References
85
+
86
+ | Claim | Status | Evidence |
87
+ |-------|--------|----------|
88
+ | Player is the entity class with _id, name, email, teams, extra fields in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/player/Player.java:Player |
89
+ | PlayerManager handles player CRUD, authentication, and status queries in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/player/PlayerManager.java:PlayerManager |
@@ -74,3 +74,9 @@ GET /v3/team/sales/status
74
74
  ```
75
75
  GET /v3/team/sales/member/remove/tom
76
76
  ```
77
+
78
+ ## Verified References
79
+
80
+ | Claim | Status | Evidence |
81
+ |-------|--------|----------|
82
+ | Team is the entity class for player groups with _id, name, members, owner fields in funifier-service | ✓ verified | Class:src/main/java/com/funifier/engine/team/Team.java:Team |
@@ -89,3 +89,9 @@ funifier_save type=player payload=<json>
89
89
  ```
90
90
  DELETE /v3/upload/<upload_id>
91
91
  ```
92
+
93
+ ## Verified References
94
+
95
+ | Claim | Status | Evidence |
96
+ |-------|--------|----------|
97
+