@smartytalent/mcp-tools 0.1.33-dev.24 → 0.1.33-dev.25

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 (2) hide show
  1. package/dist/tools.json +198 -63
  2. package/package.json +1 -1
package/dist/tools.json CHANGED
@@ -11342,6 +11342,7 @@
11342
11342
  "attributes": {
11343
11343
  "title": "ChatAttributesSchema",
11344
11344
  "type": "object",
11345
+ "description": "Cross-protocol chat message attributes. One row per direction:\ninbound and outbound replies on the same conversation are separate\nrows, joined by relationships.conversation. `protocol` is the wire\nformat (sms/whatsapp/teams/googlechat/webapp). `fromIdentifier`\nand `toIdentifier` are protocol-native handles (E.164 phone for\nSMS/WhatsApp, Teams AAD object id, Google Chat user id, etc.) so\nthe row carries the literal sender/receiver without joins. The\nresolved principals (candidate / talent / user) live in\nrelationships - direction tells you which side of the\nconversation each principal is on (inbound: from-side is the\nexternal party; outbound: to-side is the external party, plus an\noptional user relationship for the boe agent that signed it).\n`body` is a multilingual dict {locale: text} mirroring the email\npattern - the chat AI step function translates user-facing\ncontent into the tenant's active locales for admin display.",
11345
11346
  "properties": {
11346
11347
  "direction": {
11347
11348
  "type": "string",
@@ -11349,41 +11350,81 @@
11349
11350
  "inbound",
11350
11351
  "outbound"
11351
11352
  ],
11352
- "description": "Message direction"
11353
+ "description": "Message direction relative to boe (inbound from external, outbound to external)."
11353
11354
  },
11354
- "senderNumber": {
11355
+ "protocol": {
11355
11356
  "type": "string",
11356
- "description": "Sender phone number in E.164 format"
11357
+ "enum": [
11358
+ "sms",
11359
+ "whatsapp",
11360
+ "teams",
11361
+ "googlechat",
11362
+ "webapp"
11363
+ ],
11364
+ "description": "Wire protocol. Adapter Lambdas set this on write so downstream code can branch on rendering / status callback handling."
11357
11365
  },
11358
- "recipientNumber": {
11366
+ "fromIdentifier": {
11359
11367
  "type": "string",
11360
- "description": "Recipient phone number in E.164 format"
11368
+ "description": "Sender's protocol-native handle (E.164 phone for SMS/WhatsApp, AAD object id for Teams, etc.)."
11361
11369
  },
11362
- "messageSid": {
11370
+ "fromName": {
11363
11371
  "type": "string",
11364
- "description": "Twilio message SID"
11372
+ "description": "Display name of the sender at write time. Denormalised from the resolved principal."
11365
11373
  },
11366
- "body": {
11374
+ "fromType": {
11367
11375
  "type": "string",
11368
- "description": "SMS message body"
11376
+ "enum": [
11377
+ "user",
11378
+ "candidate",
11379
+ "talent",
11380
+ "guest"
11381
+ ],
11382
+ "description": "Principal type of the sender. Maps the platform's principal tables. `guest` for unknown senders (typically rejected by the inbound gate)."
11369
11383
  },
11370
- "aiResponse": {
11384
+ "toIdentifier": {
11371
11385
  "type": "string",
11372
- "description": "AI-generated response text"
11386
+ "description": "Recipient's protocol-native handle."
11373
11387
  },
11374
- "shortCode": {
11388
+ "toName": {
11375
11389
  "type": "string",
11376
- "description": "Unique short identifier"
11390
+ "description": "Display name of the recipient at write time."
11391
+ },
11392
+ "toType": {
11393
+ "type": "string",
11394
+ "enum": [
11395
+ "user",
11396
+ "candidate",
11397
+ "talent",
11398
+ "guest"
11399
+ ],
11400
+ "description": "Principal type of the recipient."
11401
+ },
11402
+ "body": {
11403
+ "type": "object",
11404
+ "description": "Multilingual message body keyed by BCP 47 locale (e.g. {`en-US`: `Hi`, `pl-PL`: `Cześć`}). Inbound writers stamp a single locale; the chat AI step function fills the rest.",
11405
+ "additionalProperties": {
11406
+ "type": "string"
11407
+ }
11377
11408
  },
11378
11409
  "status": {
11379
11410
  "type": "string",
11380
11411
  "enum": [
11381
- "active",
11382
- "pending",
11383
- "archived",
11384
- "failed"
11412
+ "received",
11413
+ "queued",
11414
+ "sent",
11415
+ "delivered",
11416
+ "failed",
11417
+ "archived"
11385
11418
  ],
11386
- "description": "Current status"
11419
+ "description": "Lifecycle state. Inbound rows go straight to `received`. Outbound progresses queued -> sent -> delivered (or failed). `archived` is a terminal soft-delete for both directions."
11420
+ },
11421
+ "languageCode": {
11422
+ "type": "string",
11423
+ "description": "BCP 47 locale of the original message (the locale key initially populated in `body`). Detected at the inbound gate, set by the writer on outbound."
11424
+ },
11425
+ "shortCode": {
11426
+ "type": "string",
11427
+ "description": "Unique short identifier (provider/lookup correlation)."
11387
11428
  },
11388
11429
  "timestamps": {
11389
11430
  "title": "ResourceTimestampsSchema",
@@ -11404,45 +11445,98 @@
11404
11445
  "relationships": {
11405
11446
  "title": "ChatRelationshipsSchema",
11406
11447
  "type": "object",
11448
+ "description": "Relationship slots for a chat row. All to-one. Direction +\nattributes.fromType / toType tell you which side of the\nconversation each principal is on - we don't duplicate that\ninto directional relationship names. For boe-mediated flows\nat most two of {user, candidate, talent} are populated per\nrow: the external party (candidate or talent) and, on outbound,\nthe boe user that signed the message.",
11407
11449
  "properties": {
11408
- "translations": {
11409
- "title": "ChatRelationshipsTranslationsSchema",
11450
+ "conversation": {
11451
+ "title": "ChatRelationshipsConversationSchema",
11452
+ "description": "Thread the chat row belongs to. SMS replies on the same boe\nnumber share a conversation; the workflow engine parks runs\non the conversation's meta and reads parkedRunContext to\nresume on inbound. The conversation id is denormalised onto\nthe chat row's internal `conversationId` attribute (indexed\nby ConversationIdIndex) for cheap per-thread history queries\n- API consumers should read it from this relationship, not\nfrom attributes.",
11410
11453
  "type": "object",
11411
11454
  "properties": {
11412
11455
  "data": {
11413
- "type": "array",
11414
- "items": {
11415
- "title": "ChatRelationshipsTranslationsDataSchema",
11416
- "type": "object",
11417
- "properties": {
11418
- "type": {
11419
- "type": "string"
11420
- },
11421
- "id": {
11422
- "type": "string"
11423
- }
11456
+ "title": "ChatRelationshipsConversationDataSchema",
11457
+ "type": "object",
11458
+ "properties": {
11459
+ "type": {
11460
+ "type": "string"
11461
+ },
11462
+ "id": {
11463
+ "type": "string"
11424
11464
  }
11425
11465
  }
11426
11466
  }
11427
11467
  }
11428
11468
  },
11429
- "conversations": {
11430
- "title": "ChatRelationshipsConversationsSchema",
11431
- "description": "Thread the chat row belongs to. SMS replies on the same boe\nnumber share a conversation; the workflow engine parks runs\non the conversation's meta and reads parkedRunContext to\nresume on inbound. Mirror of EmailRelationshipsConversations.\nThe conversation id is also denormalised onto the chat row's\ninternal `conversationId` attribute (indexed by\nConversationIdIndex) for cheap per-thread history queries -\nAPI consumers should read it from this relationship, not\nfrom attributes.",
11469
+ "candidate": {
11470
+ "title": "ChatRelationshipsCandidateSchema",
11471
+ "description": "External candidate principal. Set when fromType=candidate (inbound) or toType=candidate (outbound).",
11432
11472
  "type": "object",
11433
11473
  "properties": {
11434
11474
  "data": {
11435
- "type": "array",
11436
- "items": {
11437
- "title": "ChatRelationshipsConversationsDataSchema",
11438
- "type": "object",
11439
- "properties": {
11440
- "type": {
11441
- "type": "string"
11442
- },
11443
- "id": {
11444
- "type": "string"
11445
- }
11475
+ "title": "ChatRelationshipsCandidateDataSchema",
11476
+ "type": "object",
11477
+ "properties": {
11478
+ "type": {
11479
+ "type": "string"
11480
+ },
11481
+ "id": {
11482
+ "type": "string"
11483
+ }
11484
+ }
11485
+ }
11486
+ }
11487
+ },
11488
+ "talent": {
11489
+ "title": "ChatRelationshipsTalentSchema",
11490
+ "description": "External talent principal. Set when fromType=talent (inbound) or toType=talent (outbound).",
11491
+ "type": "object",
11492
+ "properties": {
11493
+ "data": {
11494
+ "title": "ChatRelationshipsTalentDataSchema",
11495
+ "type": "object",
11496
+ "properties": {
11497
+ "type": {
11498
+ "type": "string"
11499
+ },
11500
+ "id": {
11501
+ "type": "string"
11502
+ }
11503
+ }
11504
+ }
11505
+ }
11506
+ },
11507
+ "user": {
11508
+ "title": "ChatRelationshipsUserSchema",
11509
+ "description": "Internal human user (employee). Reserved for user-to-user webapp/Teams chat counterparties. Today this is typically null - boe-signed outbound rows put the boe AI in `boeUser`, not here.",
11510
+ "type": "object",
11511
+ "properties": {
11512
+ "data": {
11513
+ "title": "ChatRelationshipsUserDataSchema",
11514
+ "type": "object",
11515
+ "properties": {
11516
+ "type": {
11517
+ "type": "string"
11518
+ },
11519
+ "id": {
11520
+ "type": "string"
11521
+ }
11522
+ }
11523
+ }
11524
+ }
11525
+ },
11526
+ "boeUser": {
11527
+ "title": "ChatRelationshipsBoeUserSchema",
11528
+ "description": "Boe AI agent involved in this message. Mirror of tenant.relationships.boeUser - always populated when boe is on either side of the conversation (today: every row). Splitting this from the generic `user` slot keeps the semantics clean: `user` is for human counterparties, `boeUser` is the AI agent.",
11529
+ "type": "object",
11530
+ "properties": {
11531
+ "data": {
11532
+ "title": "ChatRelationshipsBoeUserDataSchema",
11533
+ "type": "object",
11534
+ "properties": {
11535
+ "type": {
11536
+ "type": "string"
11537
+ },
11538
+ "id": {
11539
+ "type": "string"
11446
11540
  }
11447
11541
  }
11448
11542
  }
@@ -11521,6 +11615,7 @@
11521
11615
  "attributes": {
11522
11616
  "title": "ChatAttributesSchema",
11523
11617
  "type": "object",
11618
+ "description": "Cross-protocol chat message attributes. One row per direction:\ninbound and outbound replies on the same conversation are separate\nrows, joined by relationships.conversation. `protocol` is the wire\nformat (sms/whatsapp/teams/googlechat/webapp). `fromIdentifier`\nand `toIdentifier` are protocol-native handles (E.164 phone for\nSMS/WhatsApp, Teams AAD object id, Google Chat user id, etc.) so\nthe row carries the literal sender/receiver without joins. The\nresolved principals (candidate / talent / user) live in\nrelationships - direction tells you which side of the\nconversation each principal is on (inbound: from-side is the\nexternal party; outbound: to-side is the external party, plus an\noptional user relationship for the boe agent that signed it).\n`body` is a multilingual dict {locale: text} mirroring the email\npattern - the chat AI step function translates user-facing\ncontent into the tenant's active locales for admin display.",
11524
11619
  "properties": {
11525
11620
  "direction": {
11526
11621
  "type": "string",
@@ -11528,41 +11623,81 @@
11528
11623
  "inbound",
11529
11624
  "outbound"
11530
11625
  ],
11531
- "description": "Message direction"
11626
+ "description": "Message direction relative to boe (inbound from external, outbound to external)."
11532
11627
  },
11533
- "senderNumber": {
11628
+ "protocol": {
11534
11629
  "type": "string",
11535
- "description": "Sender phone number in E.164 format"
11630
+ "enum": [
11631
+ "sms",
11632
+ "whatsapp",
11633
+ "teams",
11634
+ "googlechat",
11635
+ "webapp"
11636
+ ],
11637
+ "description": "Wire protocol. Adapter Lambdas set this on write so downstream code can branch on rendering / status callback handling."
11536
11638
  },
11537
- "recipientNumber": {
11639
+ "fromIdentifier": {
11538
11640
  "type": "string",
11539
- "description": "Recipient phone number in E.164 format"
11641
+ "description": "Sender's protocol-native handle (E.164 phone for SMS/WhatsApp, AAD object id for Teams, etc.)."
11540
11642
  },
11541
- "messageSid": {
11643
+ "fromName": {
11542
11644
  "type": "string",
11543
- "description": "Twilio message SID"
11645
+ "description": "Display name of the sender at write time. Denormalised from the resolved principal."
11544
11646
  },
11545
- "body": {
11647
+ "fromType": {
11546
11648
  "type": "string",
11547
- "description": "SMS message body"
11649
+ "enum": [
11650
+ "user",
11651
+ "candidate",
11652
+ "talent",
11653
+ "guest"
11654
+ ],
11655
+ "description": "Principal type of the sender. Maps the platform's principal tables. `guest` for unknown senders (typically rejected by the inbound gate)."
11548
11656
  },
11549
- "aiResponse": {
11657
+ "toIdentifier": {
11550
11658
  "type": "string",
11551
- "description": "AI-generated response text"
11659
+ "description": "Recipient's protocol-native handle."
11552
11660
  },
11553
- "shortCode": {
11661
+ "toName": {
11554
11662
  "type": "string",
11555
- "description": "Unique short identifier"
11663
+ "description": "Display name of the recipient at write time."
11664
+ },
11665
+ "toType": {
11666
+ "type": "string",
11667
+ "enum": [
11668
+ "user",
11669
+ "candidate",
11670
+ "talent",
11671
+ "guest"
11672
+ ],
11673
+ "description": "Principal type of the recipient."
11674
+ },
11675
+ "body": {
11676
+ "type": "object",
11677
+ "description": "Multilingual message body keyed by BCP 47 locale (e.g. {`en-US`: `Hi`, `pl-PL`: `Cześć`}). Inbound writers stamp a single locale; the chat AI step function fills the rest.",
11678
+ "additionalProperties": {
11679
+ "type": "string"
11680
+ }
11556
11681
  },
11557
11682
  "status": {
11558
11683
  "type": "string",
11559
11684
  "enum": [
11560
- "active",
11561
- "pending",
11562
- "archived",
11563
- "failed"
11685
+ "received",
11686
+ "queued",
11687
+ "sent",
11688
+ "delivered",
11689
+ "failed",
11690
+ "archived"
11564
11691
  ],
11565
- "description": "Current status"
11692
+ "description": "Lifecycle state. Inbound rows go straight to `received`. Outbound progresses queued -> sent -> delivered (or failed). `archived` is a terminal soft-delete for both directions."
11693
+ },
11694
+ "languageCode": {
11695
+ "type": "string",
11696
+ "description": "BCP 47 locale of the original message (the locale key initially populated in `body`). Detected at the inbound gate, set by the writer on outbound."
11697
+ },
11698
+ "shortCode": {
11699
+ "type": "string",
11700
+ "description": "Unique short identifier (provider/lookup correlation)."
11566
11701
  },
11567
11702
  "timestamps": {
11568
11703
  "title": "ResourceTimestampsSchema",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartytalent/mcp-tools",
3
- "version": "0.1.33-dev.24",
3
+ "version": "0.1.33-dev.25",
4
4
  "description": "MCP tool definitions for SmartyTalent API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",