read-only demo

Videos s4r6nk5WsZw

MCP Tasks (async): Why Aren't Any Agents Supporting Them? — Cornelia Davis, Temporal

index_state ready data_status ok

AI Engineer· published 2026-08-02· 0:23:54· en-US· indexed 2026-08-10 19:36

Open on YouTube

Scene timeline

  1. Shot 0, 0:00 to 0:03, 1 of 1 keyframes kept
  2. Shot 1, 0:03 to 0:05, 1 of 1 keyframes kept
  3. Shot 2, 0:05 to 0:12, 1 of 1 keyframes kept
  4. Shot 3, 0:12 to 0:22, 1 of 1 keyframes kept
  5. Shot 4, 0:22 to 0:30, 1 of 1 keyframes kept
  6. Shot 5, 0:30 to 1:09, 1 of 1 keyframes kept
  7. Shot 6, 1:09 to 1:31, 1 of 1 keyframes kept
  8. Shot 7, 1:31 to 2:00, 1 of 1 keyframes kept
  9. Shot 8, 2:00 to 2:28, 0 of 1 keyframes kept
  10. Shot 9, 2:28 to 2:57, 1 of 1 keyframes kept
  11. Shot 10, 2:57 to 3:30, 1 of 1 keyframes kept
  12. Shot 11, 3:30 to 4:16, 1 of 1 keyframes kept
  13. Shot 12, 4:16 to 4:18, 1 of 1 keyframes kept
  14. Shot 13, 4:18 to 4:43, 1 of 1 keyframes kept
  15. Shot 14, 4:43 to 5:09, 0 of 1 keyframes kept
  16. Shot 15, 5:09 to 5:34, 1 of 1 keyframes kept
  17. Shot 16, 5:34 to 5:59, 1 of 1 keyframes kept
  18. Shot 17, 5:59 to 6:25, 0 of 1 keyframes kept
  19. Shot 18, 6:25 to 6:56, 1 of 1 keyframes kept
  20. Shot 19, 6:56 to 7:02, 0 of 1 keyframes kept
  21. Shot 20, 7:02 to 7:37, 1 of 1 keyframes kept
  22. Shot 21, 7:37 to 7:49, 1 of 1 keyframes kept
  23. Shot 22, 7:49 to 7:55, 1 of 1 keyframes kept
  24. Shot 23, 7:55 to 7:58, 0 of 1 keyframes kept
  25. Shot 24, 7:58 to 8:01, 0 of 1 keyframes kept
  26. Shot 25, 8:01 to 8:05, 0 of 1 keyframes kept
  27. Shot 26, 8:05 to 8:07, 1 of 1 keyframes kept
  28. Shot 27, 8:07 to 8:34, 1 of 1 keyframes kept
  29. Shot 28, 8:34 to 8:50, 1 of 1 keyframes kept
  30. Shot 29, 8:50 to 9:04, 1 of 1 keyframes kept
  31. Shot 30, 9:04 to 9:17, 1 of 1 keyframes kept
  32. Shot 31, 9:17 to 9:56, 1 of 1 keyframes kept
  33. Shot 32, 9:56 to 9:58, 1 of 1 keyframes kept
  34. Shot 33, 9:58 to 10:03, 0 of 1 keyframes kept
  35. Shot 34, 10:03 to 10:39, 1 of 1 keyframes kept
  36. Shot 35, 10:39 to 10:41, 1 of 1 keyframes kept
  37. Shot 36, 10:41 to 10:43, 1 of 1 keyframes kept
  38. Shot 37, 10:43 to 10:46, 1 of 1 keyframes kept
  39. Shot 38, 10:46 to 11:10, 0 of 1 keyframes kept
  40. Shot 39, 11:10 to 11:11, 1 of 1 keyframes kept
  41. Shot 40, 11:11 to 11:18, 1 of 1 keyframes kept
  42. Shot 41, 11:18 to 11:43, 1 of 1 keyframes kept
  43. Shot 42, 11:43 to 12:09, 0 of 1 keyframes kept
  44. Shot 43, 12:09 to 12:35, 1 of 1 keyframes kept
  45. Shot 44, 12:35 to 13:01, 0 of 1 keyframes kept
  46. Shot 45, 13:01 to 13:28, 0 of 1 keyframes kept
  47. Shot 46, 13:28 to 13:54, 0 of 1 keyframes kept
  48. Shot 47, 13:54 to 14:21, 0 of 1 keyframes kept
  49. Shot 48, 14:21 to 14:44, 1 of 1 keyframes kept
  50. Shot 49, 14:44 to 14:53, 0 of 1 keyframes kept
  51. Shot 50, 14:53 to 15:18, 1 of 1 keyframes kept
  52. Shot 51, 15:18 to 15:43, 0 of 1 keyframes kept
  53. Shot 52, 15:43 to 16:00, 0 of 1 keyframes kept
  54. Shot 53, 16:00 to 16:13, 1 of 1 keyframes kept
  55. Shot 54, 16:13 to 16:33, 0 of 1 keyframes kept
  56. Shot 55, 16:33 to 17:03, 1 of 1 keyframes kept
  57. Shot 56, 17:03 to 17:31, 1 of 1 keyframes kept
  58. Shot 57, 17:31 to 17:58, 0 of 1 keyframes kept
  59. Shot 58, 17:58 to 18:25, 0 of 1 keyframes kept
  60. Shot 59, 18:25 to 18:53, 0 of 1 keyframes kept
  61. Shot 60, 18:53 to 19:20, 1 of 1 keyframes kept
  62. Shot 61, 19:20 to 19:47, 0 of 1 keyframes kept
  63. Shot 62, 19:47 to 19:52, 0 of 1 keyframes kept
  64. Shot 63, 19:52 to 19:54, 1 of 1 keyframes kept
  65. Shot 64, 19:54 to 20:21, 1 of 1 keyframes kept
  66. Shot 65, 20:21 to 20:48, 1 of 1 keyframes kept
  67. Shot 66, 20:48 to 20:54, 1 of 1 keyframes kept
  68. Shot 67, 20:54 to 21:01, 0 of 1 keyframes kept
  69. Shot 68, 21:01 to 21:04, 1 of 1 keyframes kept
  70. Shot 69, 21:04 to 21:07, 1 of 1 keyframes kept
  71. Shot 70, 21:07 to 21:08, 1 of 1 keyframes kept
  72. Shot 71, 21:08 to 21:29, 0 of 1 keyframes kept
  73. Shot 72, 21:29 to 21:33, 1 of 1 keyframes kept
  74. Shot 73, 21:33 to 21:34, 0 of 1 keyframes kept
  75. Shot 74, 21:34 to 21:47, 1 of 1 keyframes kept
  76. Shot 75, 21:47 to 21:53, 1 of 1 keyframes kept
  77. Shot 76, 21:53 to 21:59, 1 of 1 keyframes kept
  78. Shot 77, 21:59 to 22:17, 1 of 1 keyframes kept
  79. Shot 78, 22:17 to 22:44, 1 of 1 keyframes kept
  80. Shot 79, 22:44 to 23:10, 1 of 1 keyframes kept
  81. Shot 80, 23:10 to 23:37, 1 of 1 keyframes kept
  82. Shot 81, 23:37 to 23:53, 0 of 1 keyframes kept

82 shot(s).

keyframes kept every frame deduplicated

What was stored

cues
248
whisperx 248
chunks
42
from 248 cues
keyframes
55
kept of 82 captured
frames with text
55
2,174 lines read
chapters
12
from the source metadata
keyframe bytes
11.4 MB
word timings on 248 cues

Provenance

Each pipeline stage, its state and the model that produced it
stage state model started took
fetch done 2026-08-09 21:24 0s
stt done 2026-08-09 00:43 25s
chunk done 2026-08-09 00:44 0s
text_embed done 2026-08-10 19:36 1s
keyframe done 2026-08-09 00:44 3m 20s
ocr done 2026-08-09 00:47 31s
frame_embed done 2026-08-10 19:36 9s

Frames, and what the machine read

  • 0:02 #0 done2 line(s)

    shot 0·sharpness 459.9

    1. AlEngineer0.96
    2. World's Fair1.00
  • 0:03 #1 done2 line(s)

    shot 1·sharpness 662.1

    1. AlEngineer0.95
    2. World's Fair0.99
  • 0:10 #2 done24 line(s)

    shot 2·sharpness 2744.8

    1. LAB & PLATINUM SPONSORS0.99
    2. Amazon AGI Lab0.98
    3. ANTHROP\C1.00
    4. Google DeepMind1.00
    5. MINIMAX0.94
    6. OpenAI0.92
    7. Akamai1.00
    8. arize1.00
    9. aws1.00
    10. Braintrust bright data0.98
    11. B1.00
    12. Browserbase1.00
    13. docker1.00
    14. :neo4j0.92
    15. ORACLE1.00
    16. PayPal1.00
    17. qodo1.00
    18. reducto1.00
    19. Sonar1.00
    20. Makers of1.00
    21. togetherai1.00
    22. Unblocked1.00
    23. WorkOS1.00
    24. SonarQube1.00
  • 0:15 #3 done2 line(s)

    shot 3·sharpness 181.4

    1. AlEngineer0.99
    2. World's Fair1.00
  • 0:29 #4 done13 line(s)

    shot 4·sharpness 2281.8

    1. Temporal1.00
    2. AlEngineer0.99
    3. World's Fair0.97
    4. Why the heck aren't0.98
    5. PRESENTED BY1.00
    6. any agents supporting1.00
    7. Microsoft1.00
    8. MĆP tasks?0.98
    9. Well..0.96
    10. Cornelia Davis, Temporal1.00
    11. July 20261.00
    12. World's Fair0.97
    13. Engineering the future of Al0.99
  • 0:53 #5 done10 line(s)

    shot 5·sharpness 1204.2

    1. Why the heck aren't any agents supporting MCP tasks?0.99
    2. AlEngineer0.98
    3. World'sFair0.96
    4. PRESENTED BY0.98
    5. Microsoft1.00
    6. Because the builders are all pretty smart1.00
    7. 80.97
    8. World's Fair0.99
    9. TRACK 8· JULY 1, 20260.93
    10. Context Engineering0.99
  • 1:18 #6 done20 line(s)

    shot 6·sharpness 3135.6

    1. Designing change-tolerant software1.00
    2. AlEngineer0.98
    3. World's Fair0.96
    4. Developer (wasn't Ops)1.00
    5. Cloud Native0.99
    6. Web architectures for 20+ years0.99
    7. Patterns0.96
    8. Cloud-native for more than a0.99
    9. PRESENTED BY1.00
    10. decade1.00
    11. Microsoft1.00
    12. Cloud Foundry for 8+ years0.98
    13. Cornelia Davis1.00
    14. Kubernetes for nearly 100.99
    15. Author1.00
    16. Principal Technologist, Temporal1.00
    17. MANNING1.00
    18. World's Fair0.98
    19. TRACK 8· JULY 1, 20260.95
    20. Context Engineering1.00
  • 1:51 #7 done17 line(s)

    shot 7·sharpness 1873.8

    1. AlEngineer0.98
    2. World's Fair0.97
    3. Today's Agenda1.00
    4. 011.00
    5. A concrete example - Purchase Order Processing0.98
    6. 021.00
    7. MCP Tasks - Overview1.00
    8. 031.00
    9. MCP Tasks v11.00
    10. 041.00
    11. MCP Tasks v21.00
    12. 051.00
    13. Takeaways1.00
    14. 80.99
    15. World's Fair0.98
    16. TRACK 8 • JULY 1, 20260.94
    17. Context Engineering1.00
  • 2:03 #8 skipped

    shot 8·duplicate of #7

  • 2:53 #9 done18 line(s)

    shot 9·sharpness 1581.7

    1. Example: PO processing1.00
    2. AlEngineer0.98
    3. World's Fair0.99
    4. Submit Purchase Order1.00
    5. record goods0.98
    6. receipt1.00
    7. update1.00
    8. Invoice1.00
    9. inventory1.00
    10. pay invoice0.99
    11. MCP Server1.00
    12. Processor1.00
    13. notify1.00
    14. requestor1.00
    15. close PO1.00
    16. World's Fair0.97
    17. TRACK 8 · JULY 1, 20260.93
    18. Context Engineering1.00
  • 3:07 #10 done34 line(s)

    shot 10·sharpness 2434.3

    1. AlEngineer0.98
    2. Example: PO processing1.00
    3. Invoice1.00
    4. invoice1.00
    5. Processing1.00
    6. World's Fair0.98
    7. Submit Purchase Order0.99
    8. MCP1.00
    9. validate1.00
    10. Server1.00
    11. against erp1.00
    12. record goods1.00
    13. receipt1.00
    14. Request1.00
    15. approval1.00
    16. inventory1.00
    17. update1.00
    18. pay invoice1.00
    19. MCP Server1.00
    20. Processor1.00
    21. Invoice1.00
    22. reconcile1.00
    23. against erp1.00
    24. notify1.00
    25. requestor1.00
    26. Solicit cost0.98
    27. center1.00
    28. close PO0.99
    29. Pay Line1.00
    30. Items1.00
    31. 81.00
    32. World's Fair0.97
    33. TRACK 8· JULY 1, 20260.96
    34. Context Engineering0.98
  • 4:06 #11 done37 line(s)

    shot 11·sharpness 1883.2

    1. Example: Invoice processing1.00
    2. AlEngineer0.98
    3. World's Fair0.97
    4. invoice1.00
    5. Start1.00
    6. validate1.00
    7. @workflow.defn1.00
    8. against erp0.97
    9. class InvoiceWorkflow:1.00
    10. def __init__(self) -> None:0.98
    11. here is that this is an0.99
    12. self.invoice: dict = {}0.97
    13. Request1.00
    14. @workflow.run1.00
    15. synchronous process!!1.00
    16. approval0.95
    17. async def run(self, invoice:1.00
    18. str:1.00
    19. Reject or1.00
    20. approve1.00
    21. @workflow.signal1.00
    22. against erp1.00
    23. reconcile1.00
    24. async def ApproveInvoice(self) -> None:0.99
    25. self.approved = True1.00
    26. Solicit cost1.00
    27. Querying1.00
    28. center1.00
    29. status1.00
    30. @workflow.query1.00
    31. def GetInvoiceStatus(self) -> str:0.98
    32. return self.status1.00
    33. Pay Line1.00
    34. Items1.00
    35. World's Fair0.95
    36. TRACK 8· JULY 1, 20260.95
    37. Context Engineering0.98
  • 4:17 #12 done7 line(s)

    shot 12·sharpness 1192.5

    1. AlEngineer0.97
    2. World'sFair1.00
    3. MCP Tasks Protocol Overview1.00
    4. 111.00
    5. World's Fair0.94
    6. TRACK 8· JULY 1, 20260.95
    7. Context Engineering1.00
  • 4:35 #13 done23 line(s)

    shot 13·sharpness 1262.2

    1. AlEngineer0.98
    2. You get a handle (ofc)0.99
    3. World's Fair0.99
    4. Agent1.00
    5. MCP Server0.99
    6. Human1.00
    7. - please process this0.95
    8. -tools/call (process_invoice0.93
    9. task handle0.94
    10. check on the task (using the0.99
    11. handle)1.00
    12. needs human input0.97
    13. —approve?0.95
    14. …approve …….0.82
    15. submit decision (using the0.98
    16. handle)1.00
    17. Agent1.00
    18. MCP Server0.99
    19. Human1.00
    20. 121.00
    21. World's Fair0.97
    22. TRACK 8· JULY 1, 20260.95
    23. Context Engineering1.00
  • 4:49 #14 skipped

    shot 14·duplicate of #13

  • 5:31 #15 done29 line(s)

    shot 15·sharpness 2371.7

    1. AlEngineer0.99
    2. World'sFair1.00
    3. Agent1.00
    4. MCP Server1.00
    5. Human1.00
    6. - please process this0.96
    7. Looks easy1.00
    8. -tools/call (process_invoice)0.95
    9. Network0.99
    10. enough1.00
    11. PRESENTED BY1.00
    12. check on the task (using the0.97
    13. handle)1.00
    14. Microsoft1.00
    15. approve?1.00
    16. But it gets0.99
    17. interesting when1.00
    18. submit decision (using the0.99
    19. handle)1.00
    20. you actually want1.00
    21. it to work.1.00
    22. Agent1.00
    23. MCP Server0.99
    24. Human1.00
    25. 81.00
    26. 131.00
    27. World's Fair0.96
    28. TRACK 8· JULY 1, 20260.95
    29. Context Engineering1.00
  • 5:47 #16 done14 line(s)

    shot 16·sharpness 2681.4

    1. AlEngineer0.98
    2. World'sFair1.00
    3. Tasks are durable state machines0.99
    4. PRESENTED BY1.00
    5. that carry information about the0.99
    6. Microsoft1.00
    7. underlying execution state of the0.99
    8. request they wrap1.00
    9. 991.00
    10. 80.98
    11. 141.00
    12. World's Fair0.98
    13. TRACK 8· JULY 1, 20260.94
    14. Context Engineering1.00
  • 6:02 #17 skipped

    shot 17·duplicate of #16

  • 6:32 #18 done14 line(s)

    shot 18·sharpness 2728.4

    1. AlEngineer0.99
    2. M0.85
    3. MCP1.00
    4. Talk: Durable, Asynchronous, and Tricky:0.99
    5. World'sFair1.00
    6. Implementing MCP Tasks in Practice1.00
    7. Dev Summit0.99
    8. This talk was focused on the0.98
    9. server side1.00
    10. https://bit.ly/4gTA86S1.00
    11. 151.00
    12. World'sFair0.99
    13. TRACK 8· JULY 1, 20260.94
    14. Context Engineering1.00
  • 7:01 #19 skipped

    shot 19·duplicate of #12

  • 7:26 #20 done32 line(s)

    shot 20·sharpness 1277.4

    1. History1.00
    2. Bookmarks1.00
    3. Window1.00
    4. Help1.00
    5. 40.57
    6. AlEngineer1.00
    7. lecalhost:80800.98
    8. 0.56
    9. Finish update1.00
    10. World'sFair1.00
    11. 0.89
    12. Git Repos0.96
    13. Recipes1.00
    14. Personal1.00
    15. Coaching Resour..0.94
    16. My Drive - Google..0.93
    17. ToolsMyfemporal0.94
    18. All ookmarks0.96
    19. Purchase Orders - invoice task lifecycle0.98
    20. screenshots1.00
    21. Select an 'input_required' task to answer its question.0.98
    22. Purchase order1.00
    23. PO workflow1.00
    24. Invoice task1.00
    25. No purchase orders yet.0.98
    26. Submit a new purchase order0.97
    27. SUBMIT SIMPLE0.98
    28. SUBMIT LARGE1.00
    29. Submitted purchase order for invoice INV-18801.00
    30. World's Fair0.98
    31. TRACK 8· JULY 1, 20260.93
    32. Context Engineering1.00
  • 7:42 #21 done22 line(s)

    shot 21·sharpness 925.2

    1. iTerm20.97
    2. Shell0.99
    3. Edit0.87
    4. Session1.00
    5. Scripts1.00
    6. Profilles0.95
    7. Window1.00
    8. Help1.00
    9. Wed Jul 1 3:26 PM0.97
    10. MCP async working0.99
    11. AlEngineer1.00
    12. -bash 0170.71
    13. World'sFair1.00
    14. ± Itemporal-client-v1mcp 1 y python -m bizservice.worker0.94
    15. Mac in ~/Projects/Temporal/AI/MCP/durable-async-mcp0.99
    16. Mac in ~/Projects/Temporal/AI/MCP/durable-async-mcp1.00
    17. ± Itemporal-client-v1mcp l → python -m invoice_processing_mcp.client.worker0.97
    18. transport::Error(Transport,1.00
    19. ConnectError(ConnectError("tcp connect error", 127.0.0.1:7233, 0s { code: 61, kind: ConnectionRefused, message: "Connection refused" })))) }0.99
    20. World's Fair0.96
    21. TRACK 8·JULY 1,20260.97
    22. Context Engineering1.00
  • 7:54 #22 done21 line(s)

    shot 22·sharpness 895.4

    1. iTerm20.96
    2. Shell0.99
    3. Scripts1.00
    4. Profilles0.90
    5. Window1.00
    6. Help1.00
    7. Wed Jul 1 3:26 PM0.97
    8. MCP async working0.99
    9. AlEngineer0.99
    10. python 3610.86
    11. World'sFair1.00
    12. Mac in ~/Projects/Temporal/AI/MCP/durable-async-mcp1.00
    13. python0.94
    14. Itemporal-client-v1mcp | → python -m bizservice.worker0.95
    15. Mac in~/Projects/Temporal/AI/MCP/durable-async-mcp1.00
    16. ± Itemporal-client-vlmcp I python -m invoice_processing_mcp.client.worker0.97
    17. :transport::Error(Transport1.00
    18. 127.0.0.1:7233, 0s { code: 61, kind: ConnectionRefused, message: "Connection refused" })))) }0.97
    19. World's Fair0.95
    20. TRACK 8· JULY 1, 20260.95
    21. Context Engineering1.00
  • 7:58 #23 skipped

    shot 23·duplicate of #21

Transcript

248 cues· 3,840 words· 20,192 chars

  1. 0:12 I know it's one minute ahead, but these 20 minute sessions are really short, so I'm gonna get started.
  2. 0:18 So, title of my talk you all have seen, because you're all here, which is why the heck aren't any agents supporting MCP tasks?
  3. 0:25 If you don't know what tasks are, don't worry, you will know in just a moment.
  4. 0:30 The first answer to that question is, well, because they're smart.
  5. 0:34 The people who are building those clients are smart.
  6. 0:37 What I mean by that is that the MCP tasks specification that came out in November was marked as experimental.
  7. 0:45 You might shrug and say, well, gosh, those clients and servers, they're all supporting a whole bunch of experimental things.
  8. 0:52 Why not MCP tasks?
  9. 0:54 Well, again, you'll see the answer to that as we move forward.
  10. 0:59 The next answer to that question is, well, they're pretty involved.
  11. 1:04 There's a lot of complexity in here and that's what I wanna do over the next 20 minutes is teach you some of that complexity.
  12. 1:11 Quick intro, my name is Cornelia Davis.
  13. 1:14 I'm a technologist at Temporal.
  14. 1:17 We're distributed systems stuff.
  15. 1:19 I have a long history in distributed systems, did a whole bunch of stuff in the microservices era, including Cloud Foundry, Kubernetes, GitOps, Weaveworks, all of that stuff, and I even wrote a book about that.
  16. 1:31 That's who I am.
  17. 1:32 Today's agenda in the next 19 minutes is that rather than just talking about things in the abstract, I'm gonna ground us in a very concrete example.
  18. 1:42 So I'm gonna give you the lay of the land of that concrete example.
  19. 1:45 Then I'm gonna give you an overview of MCP tasks.
  20. 1:48 Quick question, who here wants to do things with tasks?
  21. 1:53 Async MCP tools, okay.
  22. 1:56 So I'm gonna give you a little bit of an overview.
  23. 1:58 Then we're gonna talk about MCP tasks V1.
  24. 2:01 That's the spec that came out in November.
  25. 2:03 And spoiler alert, there's a new one coming out in July.
  26. 2:07 So that comment that I made about them being smart about not implementing it yet, well, there's some pretty radical changes.
  27. 2:14 So I'm gonna show you what's happening with V2, and I actually have some live demos to show all this working.
  28. 2:20 And then we'll have some takeaways at the end.
  29. 2:23 So the use case that we're gonna talk about here is a simple purchase order use case.
  30. 2:29 So the use case is you're gonna get in a purchase order and then it's gonna go through a number of steps.
  31. 2:35 It's gonna record the fact that the goods were received and then it's gonna do in parallel, it's gonna do some back office stuff, updating inventory, sending out notifications, and then in parallel to that, it's going to pay some invoices.
  32. 2:51 The invoicing is going to happen via an MCP tool.
  33. 2:56 That MCP tool has itself a number of steps.
  34. 3:01 It's going to validate against an ERP, then it's going to have a little human in the loop to request approval, maybe.
  35. 3:08 Then it's going to reconcile against the ERP again, do a little bit more human in the loop and so on.
  36. 3:14 You can see that on the right hand side, that MCP server, it's a tool that's going to be doing the invoice processing for us.
  37. 3:23 It is long running.
  38. 3:25 It's not going to work in a request response style.
  39. 3:28 That's what MCP tasks are all about.
  40. 3:32 And what we're gonna do, and today's talk is not about temporal, but really what I did here was just showed you a couple of snippets of the code, and yes, I will be sharing all the code for what I'm showing today.
  41. 3:44 Couple of snippets here, and the real point that I want you to look at is that reject or approve, that is showing you that there is a mechanism for signaling into a long-running process.
  42. 3:56 And that's really the point and that's what we need is that this is all about asynchronous.
  43. 4:02 So you understand what MCP tasks are now?
  44. 4:05 MCP tasks are allowing you to have an MCP tool that you can invoke and then it is long running in the background and then eventually you can get back some response.
  45. 4:17 So let's talk about that MCP tasks overview.
  46. 4:21 This is a very simple sequence diagram.
  47. 4:24 It's exactly what you all would expect when I tell you that MCP tasks are long running tasks.
  48. 4:30 You're going to invoke a tool and instead of getting back a response, you're gonna get a handle.
  49. 4:36 and you can interact with that handle, right?
  50. 4:39 Obvious, right?

Chapters

  1. 0:00 What MCP tasks are, and why they're hard
  2. 1:29 A distributed systems point of view
  3. 2:34 A first look at a task running
  4. 4:03 What a task actually allows
  5. 4:43 Why long running work breaks
  6. 6:02 Durability across disconnections
  7. 7:04 Demo: invoice processing dashboard
  8. 9:10 Waiting for human input
  9. 11:18 What changed in tasks V1
  10. 12:35 The stateless core
  11. 16:37 Extensions and server pushed updates
  12. 20:09 V2 and what you need to implement

Open at this second