@fuul/mcp-server 1.2.0 → 1.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.
package/README.md CHANGED
@@ -288,6 +288,7 @@ Environment variables are read from `process.env` and, when present, a `.env` fi
288
288
  | `FUUL_OAUTH_CLIENT_ID` | `fuul-agent` | OAuth client ID |
289
289
  | `FUUL_OAUTH_REDIRECT_URI` | `http://127.0.0.1:8765/callback` | OAuth callback URL |
290
290
  | `FUUL_MCP_TOOL_TIMEOUT_MS` | `90000` | Per-tool timeout in milliseconds |
291
+ | `FUUL_MCP_PROJECT_API_KEY` | _(unset)_ | Project API key (Bearer) for public API tools: managed affiliates and Events |
291
292
  | `FUUL_MCP_DEBUG` | `false` | Set to `1` or `true` for debug logging |
292
293
 
293
294
  ### Example `.env` file
@@ -312,6 +313,8 @@ FUUL_MCP_DEBUG=1
312
313
  | **Projects** | `list_projects`, `get_project` |
313
314
  | **Incentives** | `list_incentives`, `get_incentive`, `get_trigger` |
314
315
  | **Affiliate Analytics** | `get_affiliate_portal_stats`, `get_project_affiliate_total_stats`, `get_project_affiliates_breakdown` |
316
+ | **Managed Affiliates** (project API key) | `get_project_affiliate_public`, `create_project_affiliate_public`, `update_project_affiliate_public` |
317
+ | **Events** (project API key) | `send_event`, `send_batch_events`, `check_event_status` |
315
318
  | **Payouts (Read)** | `list_payouts_pending_approval`, `list_rewards_payouts` |
316
319
  | **Payouts (Write)** | `approve_payouts`, `reject_payouts` |
317
320
  | **Tiers** | `update_project_tier` |
@@ -390,6 +393,42 @@ All tools receive JSON arguments. Use real UUIDs from your tenant.
390
393
 
391
394
  `dateRange` options: `7d`, `30d`, `90d`, `MTD`, `QTD`, `custom`, `all`
392
395
 
396
+ #### Events (project API key)
397
+
398
+ Requires `FUUL_MCP_PROJECT_API_KEY` or `project_api_key` on each call. Writes use `dry_run` then `confirmed`.
399
+
400
+ ```json
401
+ // check_event_status
402
+ {
403
+ "user_identifier": "0x80Fe27F878d2d42BD8b387F3cA4b96CBDEc05326",
404
+ "user_identifier_type": "evm_address",
405
+ "event_name": "trade"
406
+ }
407
+
408
+ // send_event (dry_run preview)
409
+ {
410
+ "name": "trade",
411
+ "user_identifier": "0x80Fe27F878d2d42BD8b387F3cA4b96CBDEc05326",
412
+ "user_identifier_type": "evm_address",
413
+ "dedup_id": "4bdabf2c-271a-4d66-afd0-a9f24119810a",
414
+ "args": { "volume": 1000 },
415
+ "dry_run": true
416
+ }
417
+
418
+ // send_batch_events (confirmed)
419
+ {
420
+ "events": [
421
+ {
422
+ "name": "trade",
423
+ "user_identifier": "0x80Fe27F878d2d42BD8b387F3cA4b96CBDEc05326",
424
+ "user_identifier_type": "evm_address",
425
+ "dedup_id": "batch-id-1"
426
+ }
427
+ ],
428
+ "confirmed": true
429
+ }
430
+ ```
431
+
393
432
  #### Payout operations
394
433
 
395
434
  ```json
@@ -0,0 +1,7 @@
1
+ import type { FuulApiClient } from '../http/fuul-api-client.js';
2
+ import type { CheckEventStatusInput, SendBatchEventsInput, SendEventInput, SendEventPayload } from '../tools/tool-schemas.js';
3
+ export declare function buildSendEventBody(fields: SendEventPayload): Record<string, unknown>;
4
+ export declare function runSendEvent(api: FuulApiClient, bearer: string, input: SendEventInput): Promise<unknown>;
5
+ export declare function runSendBatchEvents(api: FuulApiClient, bearer: string, input: SendBatchEventsInput): Promise<unknown>;
6
+ export declare function runCheckEventStatus(api: FuulApiClient, bearer: string, input: CheckEventStatusInput): Promise<unknown>;
7
+ //# sourceMappingURL=events-handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events-handlers.d.ts","sourceRoot":"","sources":["../../src/events/events-handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE9H,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBpF;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAW9G;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAU1H;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAS5H"}
@@ -0,0 +1,48 @@
1
+ import { assertWriteConfirmedOrDryRun } from '../agent/write-confirmation.js';
2
+ export function buildSendEventBody(fields) {
3
+ const body = {
4
+ name: fields.name,
5
+ dedup_id: fields.dedup_id,
6
+ user: {
7
+ identifier: fields.user_identifier,
8
+ identifier_type: fields.user_identifier_type,
9
+ },
10
+ };
11
+ if (fields.args != null) {
12
+ body.args = fields.args;
13
+ }
14
+ if (fields.timestamp != null) {
15
+ body.timestamp = fields.timestamp;
16
+ }
17
+ return body;
18
+ }
19
+ export async function runSendEvent(api, bearer, input) {
20
+ assertWriteConfirmedOrDryRun(input);
21
+ const body = buildSendEventBody(input);
22
+ const path = '/api/v1/events';
23
+ if (input.dry_run === true) {
24
+ return { dry_run: true, would_post: path, body };
25
+ }
26
+ const data = await api.postJson(path, body, { bearerToken: bearer });
27
+ return data ?? { status: 'created' };
28
+ }
29
+ export async function runSendBatchEvents(api, bearer, input) {
30
+ assertWriteConfirmedOrDryRun(input);
31
+ const body = input.events.map((e) => buildSendEventBody(e));
32
+ const path = '/api/v1/events/batch';
33
+ if (input.dry_run === true) {
34
+ return { dry_run: true, would_post: path, event_count: body.length, body };
35
+ }
36
+ return api.postJson(path, body, { bearerToken: bearer });
37
+ }
38
+ export async function runCheckEventStatus(api, bearer, input) {
39
+ return api.getJson('/api/v1/events/status', {
40
+ bearerToken: bearer,
41
+ query: {
42
+ user_identifier: input.user_identifier,
43
+ user_identifier_type: input.user_identifier_type,
44
+ event_name: input.event_name,
45
+ },
46
+ });
47
+ }
48
+ //# sourceMappingURL=events-handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events-handlers.js","sourceRoot":"","sources":["../../src/events/events-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAI9E,MAAM,UAAU,kBAAkB,CAAC,MAAwB;IACzD,MAAM,IAAI,GAA4B;QACpC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,IAAI,EAAE;YACJ,UAAU,EAAE,MAAM,CAAC,eAAe;YAClC,eAAe,EAAE,MAAM,CAAC,oBAAoB;SAC7C;KACF,CAAC;IACF,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAkB,EAAE,MAAc,EAAE,KAAqB;IAC1F,4BAA4B,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,gBAAgB,CAAC;IAE9B,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnD,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACrE,OAAO,IAAI,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAkB,EAAE,MAAc,EAAE,KAA2B;IACtG,4BAA4B,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,sBAAsB,CAAC;IAEpC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;IAC7E,CAAC;IAED,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAkB,EAAE,MAAc,EAAE,KAA4B;IACxG,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,EAAE;QAC1C,WAAW,EAAE,MAAM;QACnB,KAAK,EAAE;YACL,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B;KACF,CAAC,CAAC;AACL,CAAC"}
package/dist/index.js CHANGED
@@ -6,12 +6,13 @@ import { assertWriteConfirmedOrDryRun, WriteNotConfirmedError } from './agent/wr
6
6
  import { OAuthClient } from './auth/oauth-client.js';
7
7
  import { TokenStore } from './auth/token-store.js';
8
8
  import { loadEnv } from './config/env.js';
9
+ import { runCheckEventStatus, runSendBatchEvents, runSendEvent } from './events/events-handlers.js';
9
10
  import { ApiRequestError, FuulApiClient, NotLoggedInError } from './http/fuul-api-client.js';
10
11
  import { MissingProjectApiKeyError, resolveProjectApiKeyBearer } from './http/project-api-key-bearer.js';
11
12
  import { MetadataService } from './metadata/metadata-service.js';
12
13
  import { runPayoutBatchAction } from './payouts/payout-batch-handlers.js';
13
- import { APPROVE_PAYOUTS_DESCRIPTION, CREATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION, GET_AFFILIATE_PORTAL_STATS_DESCRIPTION, GET_INCENTIVE_DESCRIPTION, GET_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION, GET_PROJECT_AFFILIATE_TOTAL_STATS_DESCRIPTION, GET_PROJECT_AFFILIATES_BREAKDOWN_DESCRIPTION, GET_PROJECT_DESCRIPTION, GET_TRIGGER_DESCRIPTION, LIST_CHAINS_DESCRIPTION, LIST_INCENTIVES_DESCRIPTION, LIST_PAYOUT_SCHEMAS_DESCRIPTION, LIST_PAYOUTS_PENDING_APPROVAL_DESCRIPTION, LIST_PROJECTS_DESCRIPTION, LIST_REWARDS_PAYOUTS_DESCRIPTION, LIST_TRIGGER_TYPES_DESCRIPTION, PING_DESCRIPTION, REJECT_PAYOUTS_DESCRIPTION, UPDATE_AUDIENCE_DESCRIPTION, UPDATE_PAYOUT_TERM_DESCRIPTION, UPDATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION, UPDATE_PROJECT_TIER_DESCRIPTION, UPDATE_TRIGGER_DESCRIPTION, WHOAMI_DESCRIPTION, } from './tools/tool-descriptions.js';
14
- import { createProjectAffiliatePublicFieldsSchema, createProjectAffiliatePublicInputSchema, getAffiliatePortalStatsSchema, getIncentiveInputSchema, getProjectAffiliatePublicInputSchema, getProjectAffiliatesBreakdownSchema, getProjectAffiliateTotalStatsSchema, getTriggerInputSchema, listPayoutsPendingApprovalSchema, listProjectsInputSchema, listRewardsPayoutsSchema, payoutBatchActionInputSchema, projectIdParamSchema, updateAudienceFieldsSchema, updateAudienceInputSchema, updatePayoutTermInputSchema, updateProjectAffiliatePublicFieldsSchema, updateProjectAffiliatePublicInputSchema, updateProjectTierFieldsSchema, updateProjectTierInputSchema, updateTriggerFieldsSchema, updateTriggerInputSchema, } from './tools/tool-schemas.js';
14
+ import { APPROVE_PAYOUTS_DESCRIPTION, CHECK_EVENT_STATUS_DESCRIPTION, CREATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION, GET_AFFILIATE_PORTAL_STATS_DESCRIPTION, GET_INCENTIVE_DESCRIPTION, GET_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION, GET_PROJECT_AFFILIATE_TOTAL_STATS_DESCRIPTION, GET_PROJECT_AFFILIATES_BREAKDOWN_DESCRIPTION, GET_PROJECT_DESCRIPTION, GET_TRIGGER_DESCRIPTION, LIST_CHAINS_DESCRIPTION, LIST_INCENTIVES_DESCRIPTION, LIST_PAYOUT_SCHEMAS_DESCRIPTION, LIST_PAYOUTS_PENDING_APPROVAL_DESCRIPTION, LIST_PROJECTS_DESCRIPTION, LIST_REWARDS_PAYOUTS_DESCRIPTION, LIST_TRIGGER_TYPES_DESCRIPTION, PING_DESCRIPTION, REJECT_PAYOUTS_DESCRIPTION, SEND_BATCH_EVENTS_DESCRIPTION, SEND_EVENT_DESCRIPTION, UPDATE_AUDIENCE_DESCRIPTION, UPDATE_PAYOUT_TERM_DESCRIPTION, UPDATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION, UPDATE_PROJECT_TIER_DESCRIPTION, UPDATE_TRIGGER_DESCRIPTION, WHOAMI_DESCRIPTION, } from './tools/tool-descriptions.js';
15
+ import { checkEventStatusInputSchema, createProjectAffiliatePublicFieldsSchema, createProjectAffiliatePublicInputSchema, getAffiliatePortalStatsSchema, getIncentiveInputSchema, getProjectAffiliatePublicInputSchema, getProjectAffiliatesBreakdownSchema, getProjectAffiliateTotalStatsSchema, getTriggerInputSchema, listPayoutsPendingApprovalSchema, listProjectsInputSchema, listRewardsPayoutsSchema, payoutBatchActionInputSchema, projectIdParamSchema, sendBatchEventsFieldsSchema, sendBatchEventsInputSchema, sendEventFieldsSchema, sendEventInputSchema, updateAudienceFieldsSchema, updateAudienceInputSchema, updatePayoutTermInputSchema, updateProjectAffiliatePublicFieldsSchema, updateProjectAffiliatePublicInputSchema, updateProjectTierFieldsSchema, updateProjectTierInputSchema, updateTriggerFieldsSchema, updateTriggerInputSchema, } from './tools/tool-schemas.js';
15
16
  import { compactQuery } from './util/compact-query.js';
16
17
  import { ToolTimeoutError, withTimeout } from './util/with-timeout.js';
17
18
  function toolErrorPayload(e, httpDetail = 'Request failed') {
@@ -233,6 +234,39 @@ async function main() {
233
234
  return toolErrorPayload(e, 'Failed to update managed project affiliate');
234
235
  }
235
236
  });
237
+ server.tool('send_event', SEND_EVENT_DESCRIPTION, sendEventFieldsSchema.shape, async (args) => {
238
+ try {
239
+ const parsed = sendEventInputSchema.parse(args);
240
+ const bearer = resolveProjectApiKeyBearer(env, parsed.project_api_key);
241
+ const data = await withTimeout(runSendEvent(api, bearer, parsed), toolTimeoutMs, 'send_event');
242
+ return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
243
+ }
244
+ catch (e) {
245
+ return toolErrorPayload(e, 'Failed to send event');
246
+ }
247
+ });
248
+ server.tool('send_batch_events', SEND_BATCH_EVENTS_DESCRIPTION, sendBatchEventsFieldsSchema.shape, async (args) => {
249
+ try {
250
+ const parsed = sendBatchEventsInputSchema.parse(args);
251
+ const bearer = resolveProjectApiKeyBearer(env, parsed.project_api_key);
252
+ const data = await withTimeout(runSendBatchEvents(api, bearer, parsed), toolTimeoutMs, 'send_batch_events');
253
+ return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
254
+ }
255
+ catch (e) {
256
+ return toolErrorPayload(e, 'Failed to send batch events');
257
+ }
258
+ });
259
+ server.tool('check_event_status', CHECK_EVENT_STATUS_DESCRIPTION, checkEventStatusInputSchema.shape, async (args) => {
260
+ try {
261
+ const parsed = checkEventStatusInputSchema.parse(args);
262
+ const bearer = resolveProjectApiKeyBearer(env, parsed.project_api_key);
263
+ const data = await withTimeout(runCheckEventStatus(api, bearer, parsed), toolTimeoutMs, 'check_event_status');
264
+ return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
265
+ }
266
+ catch (e) {
267
+ return toolErrorPayload(e, 'Failed to check event status');
268
+ }
269
+ });
236
270
  server.tool('list_payouts_pending_approval', LIST_PAYOUTS_PENDING_APPROVAL_DESCRIPTION, listPayoutsPendingApprovalSchema.shape, async (args) => {
237
271
  try {
238
272
  const parsed = listPayoutsPendingApprovalSchema.parse(args);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -25,4 +25,7 @@ export declare const GET_PROJECT_AFFILIATES_BREAKDOWN_DESCRIPTION: string;
25
25
  export declare const GET_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION: string;
26
26
  export declare const CREATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION: string;
27
27
  export declare const UPDATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION: string;
28
+ export declare const SEND_EVENT_DESCRIPTION: string;
29
+ export declare const SEND_BATCH_EVENTS_DESCRIPTION: string;
30
+ export declare const CHECK_EVENT_STATUS_DESCRIPTION: string;
28
31
  //# sourceMappingURL=tool-descriptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-descriptions.d.ts","sourceRoot":"","sources":["../../src/tools/tool-descriptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,gBAAgB,qHAAmH,CAAC;AAEjJ,eAAO,MAAM,kBAAkB,oLACoJ,CAAC;AAEpL,eAAO,MAAM,uBAAuB,qdACgb,CAAC;AAErd,eAAO,MAAM,8BAA8B,iKACqH,CAAC;AAEjK,eAAO,MAAM,+BAA+B,uGAAuG,CAAC;AAEpJ,eAAO,MAAM,yBAAyB,mKACsH,CAAC;AAE7J,eAAO,MAAM,uBAAuB,4HACmF,CAAC;AAExH,eAAO,MAAM,2BAA2B,0IAC6F,CAAC;AAEtI,eAAO,MAAM,yBAAyB,qJACsG,CAAC;AAE7I,eAAO,MAAM,uBAAuB,2LAC8I,CAAC;AAEnL,eAAO,MAAM,8BAA8B,QAGwF,CAAC;AAEpI,eAAO,MAAM,+BAA+B,QAEyF,CAAC;AAEtI,eAAO,MAAM,2BAA2B,QAEgF,CAAC;AAEzH,eAAO,MAAM,0BAA0B,QAEgE,CAAC;AAExG,eAAO,MAAM,yCAAyC,0LAC2H,CAAC;AAElL,eAAO,MAAM,gCAAgC,mMAC+I,CAAC;AAE7L,eAAO,MAAM,2BAA2B,oQACiN,CAAC;AAE1P,eAAO,MAAM,0BAA0B,2GAA2G,CAAC;AAInJ,eAAO,MAAM,sCAAsC,QAKlC,CAAC;AAElB,eAAO,MAAM,6CAA6C,QAIzC,CAAC;AAElB,eAAO,MAAM,4CAA4C,QAIxC,CAAC;AAKlB,eAAO,MAAM,wCAAwC,QAGuC,CAAC;AAE7F,eAAO,MAAM,2CAA2C,QAG6G,CAAC;AAEtK,eAAO,MAAM,2CAA2C,QAG0D,CAAC"}
1
+ {"version":3,"file":"tool-descriptions.d.ts","sourceRoot":"","sources":["../../src/tools/tool-descriptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,gBAAgB,qHAAmH,CAAC;AAEjJ,eAAO,MAAM,kBAAkB,oLACoJ,CAAC;AAEpL,eAAO,MAAM,uBAAuB,qdACgb,CAAC;AAErd,eAAO,MAAM,8BAA8B,iKACqH,CAAC;AAEjK,eAAO,MAAM,+BAA+B,uGAAuG,CAAC;AAEpJ,eAAO,MAAM,yBAAyB,mKACsH,CAAC;AAE7J,eAAO,MAAM,uBAAuB,4HACmF,CAAC;AAExH,eAAO,MAAM,2BAA2B,0IAC6F,CAAC;AAEtI,eAAO,MAAM,yBAAyB,qJACsG,CAAC;AAE7I,eAAO,MAAM,uBAAuB,2LAC8I,CAAC;AAEnL,eAAO,MAAM,8BAA8B,QAGwF,CAAC;AAEpI,eAAO,MAAM,+BAA+B,QAEyF,CAAC;AAEtI,eAAO,MAAM,2BAA2B,QAEgF,CAAC;AAEzH,eAAO,MAAM,0BAA0B,QAEgE,CAAC;AAExG,eAAO,MAAM,yCAAyC,0LAC2H,CAAC;AAElL,eAAO,MAAM,gCAAgC,mMAC+I,CAAC;AAE7L,eAAO,MAAM,2BAA2B,oQACiN,CAAC;AAE1P,eAAO,MAAM,0BAA0B,2GAA2G,CAAC;AAInJ,eAAO,MAAM,sCAAsC,QAKlC,CAAC;AAElB,eAAO,MAAM,6CAA6C,QAIzC,CAAC;AAElB,eAAO,MAAM,4CAA4C,QAIxC,CAAC;AAKlB,eAAO,MAAM,wCAAwC,QAGuC,CAAC;AAE7F,eAAO,MAAM,2CAA2C,QAG6G,CAAC;AAEtK,eAAO,MAAM,2CAA2C,QAG0D,CAAC;AAKnH,eAAO,MAAM,sBAAsB,QAY2G,CAAC;AAE/I,eAAO,MAAM,6BAA6B,QASsH,CAAC;AAEjK,eAAO,MAAM,8BAA8B,QAKyD,CAAC"}
@@ -48,4 +48,32 @@ export const CREATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION = 'Creates a managed pr
48
48
  export const UPDATE_PROJECT_AFFILIATE_PUBLIC_DESCRIPTION = 'Updates a managed project affiliate: PATCH /api/v1/project-affiliates/:projectAffiliateId. Partial body (alias, region, status, note, audiences, tier_protection including null to clear, approve_project_tier_ids with reviewed_by_user_id).' +
49
49
  PROJECT_API_KEY_HINT +
50
50
  ' dry_run then confirmed. Example dry_run: {"project_affiliate_id":"<uuid>","alias":"New name","dry_run":true}.';
51
+ const EVENTS_SEND_RATE_LIMIT = ' Rate limit: 100 requests/minute.';
52
+ const EVENTS_BATCH_RATE_LIMIT = ' Rate limit: 10 requests/minute.';
53
+ export const SEND_EVENT_DESCRIPTION = 'Send one conversion event: POST /api/v1/events. Triggers real-time reward attribution. Required: name (trigger name), user_identifier, user_identifier_type, dedup_id. Optional: args, timestamp (ms). ' +
54
+ 'Duplicate dedup_id returns HTTP 409. Use check_event_status before resending. dry_run then confirmed.' +
55
+ PROJECT_API_KEY_HINT +
56
+ EVENTS_SEND_RATE_LIMIT +
57
+ RATE_LIMIT_HINT +
58
+ '\n\n**args shape for value/revenue:** For non-tracking events (swaps, deposits), args can include `value` and/or `revenue`, each as `{ amount: string, currency: {...} }`. ' +
59
+ '`amount` is a string integer in the smallest unit (e.g. "1000000" for 1 USDC with 6 decimals); decimals only for fiat. ' +
60
+ '`currency` accepts two forms: (1) Official symbol: `{ "name": "USDC" }` or `{ "name": "USD" }` or `{ "name": "POINT" }`, ' +
61
+ '(2) Token identifier: `{ "identifier": "0xa0b...", "identifier_type": "evm_contract", "chain_identifier": "evm:1" }`. ' +
62
+ '\n\nExample with value/revenue: {"name":"swap","user_identifier":"0x...","user_identifier_type":"evm_address","dedup_id":"swap-123",' +
63
+ '"args":{"value":{"amount":"1000000","currency":{"name":"USDC"}},"revenue":{"amount":"3000","currency":{"name":"USDC"}}},"dry_run":true}. ' +
64
+ '\n\nSimple dry_run: {"name":"trade","user_identifier":"0x...","user_identifier_type":"evm_address","dedup_id":"uuid-here","dry_run":true}.';
65
+ export const SEND_BATCH_EVENTS_DESCRIPTION = 'Send up to 100 conversion events: POST /api/v1/events/batch. For backfills and bulk ingestion; processing is atomic (all succeed or all fail). Duplicate dedup_id values are silently ignored; response includes ingested_events count.' +
66
+ PROJECT_API_KEY_HINT +
67
+ ' dry_run then confirmed.' +
68
+ EVENTS_BATCH_RATE_LIMIT +
69
+ RATE_LIMIT_HINT +
70
+ '\n\n**args shape for value/revenue:** Same as send_event — each event in the batch can include `args.value` and/or `args.revenue` as `{ amount: string, currency: {...} }`. ' +
71
+ 'See send_event description for currency formats and amount encoding. ' +
72
+ '\n\nExample dry_run: {"events":[{"name":"swap","user_identifier":"0x...","user_identifier_type":"evm_address","dedup_id":"id-1",' +
73
+ '"args":{"value":{"amount":"5000000000","currency":{"identifier":"0xa0b...","identifier_type":"evm_contract","chain_identifier":"evm:1"}}}}],"dry_run":true}.';
74
+ export const CHECK_EVENT_STATUS_DESCRIPTION = 'Check if an event exists for a user: GET /api/v1/events/status. Query: user_identifier, user_identifier_type, event_name (case-sensitive). Returns {"created":true} or {"created":false}.' +
75
+ PROJECT_API_KEY_HINT +
76
+ EVENTS_SEND_RATE_LIMIT +
77
+ RATE_LIMIT_HINT +
78
+ ' Example: {"user_identifier":"0x...","user_identifier_type":"evm_address","event_name":"trade"}.';
51
79
  //# sourceMappingURL=tool-descriptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-descriptions.js","sourceRoot":"","sources":["../../src/tools/tool-descriptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,gHAAgH,CAAC;AAEjJ,MAAM,CAAC,MAAM,kBAAkB,GAC7B,iLAAiL,CAAC;AAEpL,MAAM,CAAC,MAAM,uBAAuB,GAClC,kdAAkd,CAAC;AAErd,MAAM,CAAC,MAAM,8BAA8B,GACzC,8JAA8J,CAAC;AAEjK,MAAM,CAAC,MAAM,+BAA+B,GAAG,oGAAoG,CAAC;AAEpJ,MAAM,CAAC,MAAM,yBAAyB,GACpC,0JAA0J,CAAC;AAE7J,MAAM,CAAC,MAAM,uBAAuB,GAClC,qHAAqH,CAAC;AAExH,MAAM,CAAC,MAAM,2BAA2B,GACtC,mIAAmI,CAAC;AAEtI,MAAM,CAAC,MAAM,yBAAyB,GACpC,0IAA0I,CAAC;AAE7I,MAAM,CAAC,MAAM,uBAAuB,GAClC,gLAAgL,CAAC;AAEnL,MAAM,CAAC,MAAM,8BAA8B,GACzC,yIAAyI;IACzI,kIAAkI;IAClI,iIAAiI,CAAC;AAEpI,MAAM,CAAC,MAAM,+BAA+B,GAC1C,mKAAmK;IACnK,mIAAmI,CAAC;AAEtI,MAAM,CAAC,MAAM,2BAA2B,GACtC,sRAAsR;IACtR,sHAAsH,CAAC;AAEzH,MAAM,CAAC,MAAM,0BAA0B,GACrC,2NAA2N;IAC3N,qGAAqG,CAAC;AAExG,MAAM,CAAC,MAAM,yCAAyC,GACpD,+KAA+K,CAAC;AAElL,MAAM,CAAC,MAAM,gCAAgC,GAC3C,0LAA0L,CAAC;AAE7L,MAAM,CAAC,MAAM,2BAA2B,GACtC,uPAAuP,CAAC;AAE1P,MAAM,CAAC,MAAM,0BAA0B,GAAG,wGAAwG,CAAC;AAEnJ,MAAM,eAAe,GAAG,sFAAsF,CAAC;AAE/G,MAAM,CAAC,MAAM,sCAAsC,GACjD,2GAA2G;IAC3G,2HAA2H;IAC3H,kHAAkH;IAClH,iEAAiE;IACjE,eAAe,CAAC;AAElB,MAAM,CAAC,MAAM,6CAA6C,GACxD,0GAA0G;IAC1G,yHAAyH;IACzH,gFAAgF;IAChF,eAAe,CAAC;AAElB,MAAM,CAAC,MAAM,4CAA4C,GACvD,+IAA+I;IAC/I,4HAA4H;IAC5H,wEAAwE;IACxE,eAAe,CAAC;AAElB,MAAM,oBAAoB,GACxB,wKAAwK,CAAC;AAE3K,MAAM,CAAC,MAAM,wCAAwC,GACnD,gJAAgJ;IAChJ,oBAAoB;IACpB,0FAA0F,CAAC;AAE7F,MAAM,CAAC,MAAM,2CAA2C,GACtD,sRAAsR;IACtR,oBAAoB;IACpB,mKAAmK,CAAC;AAEtK,MAAM,CAAC,MAAM,2CAA2C,GACtD,+OAA+O;IAC/O,oBAAoB;IACpB,gHAAgH,CAAC"}
1
+ {"version":3,"file":"tool-descriptions.js","sourceRoot":"","sources":["../../src/tools/tool-descriptions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,gHAAgH,CAAC;AAEjJ,MAAM,CAAC,MAAM,kBAAkB,GAC7B,iLAAiL,CAAC;AAEpL,MAAM,CAAC,MAAM,uBAAuB,GAClC,kdAAkd,CAAC;AAErd,MAAM,CAAC,MAAM,8BAA8B,GACzC,8JAA8J,CAAC;AAEjK,MAAM,CAAC,MAAM,+BAA+B,GAAG,oGAAoG,CAAC;AAEpJ,MAAM,CAAC,MAAM,yBAAyB,GACpC,0JAA0J,CAAC;AAE7J,MAAM,CAAC,MAAM,uBAAuB,GAClC,qHAAqH,CAAC;AAExH,MAAM,CAAC,MAAM,2BAA2B,GACtC,mIAAmI,CAAC;AAEtI,MAAM,CAAC,MAAM,yBAAyB,GACpC,0IAA0I,CAAC;AAE7I,MAAM,CAAC,MAAM,uBAAuB,GAClC,gLAAgL,CAAC;AAEnL,MAAM,CAAC,MAAM,8BAA8B,GACzC,yIAAyI;IACzI,kIAAkI;IAClI,iIAAiI,CAAC;AAEpI,MAAM,CAAC,MAAM,+BAA+B,GAC1C,mKAAmK;IACnK,mIAAmI,CAAC;AAEtI,MAAM,CAAC,MAAM,2BAA2B,GACtC,sRAAsR;IACtR,sHAAsH,CAAC;AAEzH,MAAM,CAAC,MAAM,0BAA0B,GACrC,2NAA2N;IAC3N,qGAAqG,CAAC;AAExG,MAAM,CAAC,MAAM,yCAAyC,GACpD,+KAA+K,CAAC;AAElL,MAAM,CAAC,MAAM,gCAAgC,GAC3C,0LAA0L,CAAC;AAE7L,MAAM,CAAC,MAAM,2BAA2B,GACtC,uPAAuP,CAAC;AAE1P,MAAM,CAAC,MAAM,0BAA0B,GAAG,wGAAwG,CAAC;AAEnJ,MAAM,eAAe,GAAG,sFAAsF,CAAC;AAE/G,MAAM,CAAC,MAAM,sCAAsC,GACjD,2GAA2G;IAC3G,2HAA2H;IAC3H,kHAAkH;IAClH,iEAAiE;IACjE,eAAe,CAAC;AAElB,MAAM,CAAC,MAAM,6CAA6C,GACxD,0GAA0G;IAC1G,yHAAyH;IACzH,gFAAgF;IAChF,eAAe,CAAC;AAElB,MAAM,CAAC,MAAM,4CAA4C,GACvD,+IAA+I;IAC/I,4HAA4H;IAC5H,wEAAwE;IACxE,eAAe,CAAC;AAElB,MAAM,oBAAoB,GACxB,wKAAwK,CAAC;AAE3K,MAAM,CAAC,MAAM,wCAAwC,GACnD,gJAAgJ;IAChJ,oBAAoB;IACpB,0FAA0F,CAAC;AAE7F,MAAM,CAAC,MAAM,2CAA2C,GACtD,sRAAsR;IACtR,oBAAoB;IACpB,mKAAmK,CAAC;AAEtK,MAAM,CAAC,MAAM,2CAA2C,GACtD,+OAA+O;IAC/O,oBAAoB;IACpB,gHAAgH,CAAC;AAEnH,MAAM,sBAAsB,GAAG,mCAAmC,CAAC;AACnE,MAAM,uBAAuB,GAAG,kCAAkC,CAAC;AAEnE,MAAM,CAAC,MAAM,sBAAsB,GACjC,yMAAyM;IACzM,uGAAuG;IACvG,oBAAoB;IACpB,sBAAsB;IACtB,eAAe;IACf,6KAA6K;IAC7K,yHAAyH;IACzH,2HAA2H;IAC3H,wHAAwH;IACxH,sIAAsI;IACtI,2IAA2I;IAC3I,4IAA4I,CAAC;AAE/I,MAAM,CAAC,MAAM,6BAA6B,GACxC,yOAAyO;IACzO,oBAAoB;IACpB,0BAA0B;IAC1B,uBAAuB;IACvB,eAAe;IACf,8KAA8K;IAC9K,uEAAuE;IACvE,kIAAkI;IAClI,8JAA8J,CAAC;AAEjK,MAAM,CAAC,MAAM,8BAA8B,GACzC,2LAA2L;IAC3L,oBAAoB;IACpB,sBAAsB;IACtB,eAAe;IACf,kGAAkG,CAAC"}