@talqing/mcp 0.13.2 → 0.15.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/SKILL.md +36 -19
- package/package.json +1 -1
- package/tools.json +47 -1
package/SKILL.md
CHANGED
|
@@ -376,18 +376,20 @@ states what each entry supports: which channels, its language codes and default
|
|
|
376
376
|
language, whether it accepts a speed and within what range, and its default
|
|
377
377
|
voice. Read it before choosing; do not assume a model exists.
|
|
378
378
|
|
|
379
|
-
### Images
|
|
379
|
+
### Images and files
|
|
380
380
|
|
|
381
|
-
People can
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
381
|
+
People can send files on WhatsApp (Twilio senders) and in a web chat, and a photo
|
|
382
|
+
on a web voice or video call. Every file is stored on the conversation; photos,
|
|
383
|
+
PDFs and Word (`.docx`) files are also read by the agent, and anything else
|
|
384
|
+
(voice notes, videos, spreadsheets) is named to it as something it cannot open.
|
|
385
|
+
**There is no setting for this.** Whether the agent sees a photo or a scanned
|
|
386
|
+
PDF page is decided by the model it runs: `vision` on its catalog entry. Most
|
|
387
|
+
entries read images; `gemini-3.8-flash`, `gemini-3.7-flash`, `openai/gpt-live-1`
|
|
388
|
+
and the two `grok-voice-*` realtime entries do not — such an agent is told it
|
|
389
|
+
cannot view the image. Text PDFs and Word files are read on any model. If a user
|
|
390
|
+
wants image input, check `vision` before picking the model.
|
|
389
391
|
|
|
390
|
-
A phone call carries no files
|
|
392
|
+
A phone call carries no files.
|
|
391
393
|
|
|
392
394
|
### Vision input (screen share)
|
|
393
395
|
|
|
@@ -613,6 +615,9 @@ A tool is one capability the agent's LLM can call mid-conversation. It has:
|
|
|
613
615
|
to get it out of the conversation, and a bare `{"type": "string"}` is how a
|
|
614
616
|
tool ends up called with the wrong value. Mark the ones the tool cannot run
|
|
615
617
|
without as `required`, and use an `enum` wherever the set of values is closed.
|
|
618
|
+
A **File** parameter is `{"type": "string", "format": "attachment"}`: the agent
|
|
619
|
+
passes the id of a file the person sent, and the operation reads
|
|
620
|
+
`{{args.<name>.url}}` (a link that lives an hour) and `.filename`, `.mime_type`.
|
|
616
621
|
- **`long_running_task`** — voice and video agents keep talking while it runs and
|
|
617
622
|
share the result when it lands; a run finishing within a second answers inline
|
|
618
623
|
instead. Text agents wait either way. There is no fixed line — steer it from
|
|
@@ -1286,9 +1291,22 @@ recordings and cost.
|
|
|
1286
1291
|
|
|
1287
1292
|
## Email outbound
|
|
1288
1293
|
|
|
1289
|
-
To email a *list* rather than one person, create an **email batch**: a CSV,
|
|
1290
|
-
|
|
1291
|
-
|
|
1294
|
+
To email a *list* rather than one person, create an **email batch**: a CSV, a
|
|
1295
|
+
connected Resend account, and one of two writers for the emails:
|
|
1296
|
+
|
|
1297
|
+
- **A template** — `template: {to, subject, body}`, the same email for every
|
|
1298
|
+
row. `to` names the address column; `{{column}}` in the subject or body takes
|
|
1299
|
+
that row's cell (bare column names, no `vars.` prefix), HTML-escaped when
|
|
1300
|
+
`body_format` is `html`. No task, no drafting, no cost: the batch is created
|
|
1301
|
+
`drafted` and every row is ready to review at once. A row whose placeholder
|
|
1302
|
+
cell is blank is `draft_failed` ("first_name is empty") until the cell is
|
|
1303
|
+
filled with `patch_email_batch_recipient`. Before creating one, offer
|
|
1304
|
+
`send_test_email` — it mails the filled template to the signed-in user only.
|
|
1305
|
+
- **An agent task** — `task_id` + `field_map`, when each email should be
|
|
1306
|
+
written for its row (research, personalization). The rest of this section
|
|
1307
|
+
is mostly about this kind.
|
|
1308
|
+
|
|
1309
|
+
Pick the template when the wording is fixed and only names/fields change.
|
|
1292
1310
|
|
|
1293
1311
|
**Four things to say before creating one.** A user who discovers any of them
|
|
1294
1312
|
afterwards will not forgive us:
|
|
@@ -1298,7 +1316,7 @@ afterwards will not forgive us:
|
|
|
1298
1316
|
opted in. This runs on *their* Resend account under *their* agreement.
|
|
1299
1317
|
- **Creating a batch only drafts.** Nothing is sent until someone creates a
|
|
1300
1318
|
send — and a send of every row mails drafts nobody reviewed.
|
|
1301
|
-
- **
|
|
1319
|
+
- **In a task batch, every row runs the task's CURRENT PUBLISHED version**, re-read as drafting
|
|
1302
1320
|
goes, so publishing mid-batch changes every row drafted after that moment. Which version
|
|
1303
1321
|
wrote which rows is on the batch as `drafted_versions`, and
|
|
1304
1322
|
`redraft_email_batch_recipients` with `selection: "stale_version"` is how the
|
|
@@ -1620,11 +1638,10 @@ then is it analysed and its `session.completed` sent, so end the chats you start
|
|
|
1620
1638
|
On Telegram and WhatsApp a person's messages join one chat until it ends; the
|
|
1621
1639
|
next starts a new one.
|
|
1622
1640
|
|
|
1623
|
-
A message can carry `
|
|
1624
|
-
`message`, each a base64 `data
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
above) or the call is refused naming the model.
|
|
1641
|
+
A message can carry `files`: up to four `{data_url, filename}` entries beside
|
|
1642
|
+
`message`, each a base64 `data:` URL of any type up to 20 MB. The caption and the
|
|
1643
|
+
file arrive as one turn and one item, so send them together rather than as two
|
|
1644
|
+
messages. See *Images and files* above for what the agent reads.
|
|
1628
1645
|
|
|
1629
1646
|
**Reading it back.** A *conversation* is the thread with a person, on any
|
|
1630
1647
|
surface; a *call* is one voice or video session. A person is one **contact**
|
package/package.json
CHANGED
package/tools.json
CHANGED
|
@@ -1998,7 +1998,28 @@
|
|
|
1998
1998
|
"role": "read"
|
|
1999
1999
|
},
|
|
2000
2000
|
{
|
|
2001
|
-
"description": "
|
|
2001
|
+
"description": "Fill a template from `vars` and email it to yourself (the signed-in user) only.",
|
|
2002
|
+
"method": "POST",
|
|
2003
|
+
"name": "send_test_email",
|
|
2004
|
+
"parameters": {
|
|
2005
|
+
"additionalProperties": false,
|
|
2006
|
+
"description": "Arguments not inlined: call describe_function('send_test_email').",
|
|
2007
|
+
"properties": {
|
|
2008
|
+
"body": {
|
|
2009
|
+
"type": "object"
|
|
2010
|
+
}
|
|
2011
|
+
},
|
|
2012
|
+
"required": [
|
|
2013
|
+
"body"
|
|
2014
|
+
],
|
|
2015
|
+
"type": "object"
|
|
2016
|
+
},
|
|
2017
|
+
"path": "/v1/email/test-sends",
|
|
2018
|
+
"read_only": false,
|
|
2019
|
+
"role": "write"
|
|
2020
|
+
},
|
|
2021
|
+
{
|
|
2022
|
+
"description": "Create an email batch: a list, what writes each email, and a connected Resend account to send from.",
|
|
2002
2023
|
"method": "POST",
|
|
2003
2024
|
"name": "create_email_batch",
|
|
2004
2025
|
"parameters": {
|
|
@@ -3505,6 +3526,31 @@
|
|
|
3505
3526
|
"read_only": true,
|
|
3506
3527
|
"role": "read"
|
|
3507
3528
|
},
|
|
3529
|
+
{
|
|
3530
|
+
"description": "One file a person sent in this conversation, with a fresh link (it lives 1 hour).",
|
|
3531
|
+
"method": "GET",
|
|
3532
|
+
"name": "get_conversation_attachment",
|
|
3533
|
+
"parameters": {
|
|
3534
|
+
"additionalProperties": false,
|
|
3535
|
+
"description": "Arguments not inlined: call describe_function('get_conversation_attachment').",
|
|
3536
|
+
"properties": {
|
|
3537
|
+
"attachment_id": {
|
|
3538
|
+
"type": "string"
|
|
3539
|
+
},
|
|
3540
|
+
"conversation_id": {
|
|
3541
|
+
"type": "string"
|
|
3542
|
+
}
|
|
3543
|
+
},
|
|
3544
|
+
"required": [
|
|
3545
|
+
"conversation_id",
|
|
3546
|
+
"attachment_id"
|
|
3547
|
+
],
|
|
3548
|
+
"type": "object"
|
|
3549
|
+
},
|
|
3550
|
+
"path": "/v1/conversations/{conversation_id}/attachments/{attachment_id}",
|
|
3551
|
+
"read_only": true,
|
|
3552
|
+
"role": "read"
|
|
3553
|
+
},
|
|
3508
3554
|
{
|
|
3509
3555
|
"description": "The agent sessions behind a conversation, newest first.",
|
|
3510
3556
|
"method": "GET",
|