{
  "video_id": "fdt8LfaZlT8",
  "channel_slug": "deeplearningai",
  "channel_handle": "deeplearningai",
  "title": "AI Dev 25 x NYC | Scott Hurrey: Scaling Enterprise AI with MCP and A2A",
  "duration_seconds": 1658.0,
  "url": "https://www.youtube.com/watch?v=fdt8LfaZlT8",
  "upload_date": "",
  "transcript": "My name is Scott Hurry and I am the\ndirector of developer relations at\nBucks. And so one of the things that my\nteam gets to do is really experiment\nwith AI. Anytime something new and cool\ncomes out, we get to build a demo, maybe\ndo a video. So, um, it's been a lot of\nfun for us the last year or so, really\ndiving deep into some of these, uh, some\nof these advanced concepts that we're\nseeing every day coming to us through\nthe AI ecosystem.\nSo, um, one of the questions that I get\na lot as I am talking at conferences\nlike this or going to hackathons,\nuh, why is Box here? Um, if you're not\nfamiliar with Box, we are a content\nstorage engine that lives in the cloud.\nBut because we have all of that content,\nwe have a lot of insights that you can\nget from across things that before the\ngenerative AI revolution were really\nhard to get. So IDC did a a survey a few\nyears ago to really dig into the\nenterprise and what is the makeup of the\ndata that they have. And as you can see,\n10% of it is structured. So that's your\ntypical things that live in a snowflake\ndatabase or Postgress or things that you\ncan easily query. But 90% of the things\nthat the enterprise has access to is\nunstructured data. That's Word\ndocuments, PowerPoints, things that\nhistorically have been pretty hard to\nget insights into without somebody\nsitting there and reading through it and\npulling them out.\nAnd for us, I we think AI is super\nimportant because we have more than\n120,000 customers. We have more than an\nexabyte of content that lives in our\nstorage system. And so, how do we get\ncompanies from large banks to small loan\norigination firms the power that they\nneed to get from their from their\ncontent?\nAnd so one of the things that we've did\nobviously we built our own AI engine\nthat sits at the heart of Box but we\nalso realized developers like you are\nthe ones who are really building the\ncool things and whether you're using\neverything in box or you are building\nsome cool thing where Box is just one\nsmall part of it we want to make it sure\nthat you could get everything that you\nneed from your content\nAnd so this is kind of where we're\nseeing people now. Um, a year ago, maybe\ntwo years ago, people started to build\nassistants. Everybody was talking about\nchat bots.\nNow we're seeing people building AI\nagents for specific tasks. I have this\nrepetitive thing that I'm constantly\ndoing. I can use AI to automate that\nthing and make my life a little bit\neasier. And I think that's where we are\ntoday in the enterprise space.\nBut where we see people going is these\nautonomous AI agents. They've got a\nwhole workforce that can do tasks, make\ndecisions, do all the things that you\nhave a bunch of people sitting around in\na meeting trying to decide, let AI and\nthe power of generative AI do that.\nSo, as I mentioned,\nobviously, if you're using Box, if all\nyour content is in Box, we've got you\ncovered. We have uh a thing called box\nhubs where you can have 20,000 files in\na hub and we maintain the vector store\nunderneath it for you. Update a new\nfile, change a file, we sync that\nautomatically. Simple API call, you can\nget an insight.\nWe have compose agent where you can\ncompose text. We have a question and\nanswer agent where you can ask a\nquestion and get your answer.\nBut what if Box is only one of your\nsystems?\nIn enterprise, you might have a hundred\ndifferent systems. Salesforce, Workday,\nBox. Maybe you're using Google Drive\nalso. Maybe you've got some other\nsystems and you want to ask a question\nand you want to get your answer and you\ndon't care where the answer comes from.\nBecause of this, we've spent a lot of\ntime building partnerships with many AI\ncompanies, many enterprise companies.\nHow do we get box data and your data\ntogether so that you can get your\ninsights?\nJust today, we launched a cookbook with\nGrock. They've got a responses API. Our\ncookbook will help you bring the Box MC\nMCP server into that environment so that\nyou can easily get those answers.\nWe've done a ton of work with Pine Cone,\nwhich you might think is a little weird.\nWe've got all the content. Why would we\ngive that content to Pine Cone? But\nagain,\nif you've got 10 different systems and\nyou want all that data together so that\nyou can easily search, then while we\nwould love for you to keep all your\ncontent in box, we also realize it's\nyour content. You should be able to put\nit where you where you need it.\nUm, and then finally, u, I just want to\nmention langchain.\nWe built a Python langchain library,\nuh, last year, July. I think we just\nreleased a JavaScript version. So, if\nyou're building on lang chain, you need\naccess to Box, we've got you covered.\n[clears throat] Excuse me. So, let's\ntalk a little bit about what we're going\nto talk about today. You saw in the\ntitle, we're talking about A2A and MCP\nand how you can use those tools to scale\nyour AI for the enterprise. And so\ntoday, we're going to look at a very\nspecific example.\nWe've got some invoices in Box. We need\nto extract key data from those invoices\nso that we can then process them down\nthe line. We can check to make sure\nevery invoice has a PO associated with.\nwe can push that data into a third-party\nsystem so that you can run your\nreporting things like that.\nSo I think where a lot of people start,\nyou can build that yourself, right? Uh,\nyou can build a tool that uses the Box\nAPI, goes out and downloads those files,\na PDF reader that will allow you to pull\nthose together, get the information out.\nYou can extract it with an LLM, then you\ncan store it in your database.\nThis is cool if you're building a proof\nof concept. This is cool if every\ndocument is always the same. So when\nyou're extracting, you don't have to\nhave all of these complex rules that say\nfind this here, find this here, and then\nyou get a different invoice and it's\ndifferent and it breaks your whole\nsystem.\nIt's also not scalable. Every time the\nAPI changes, you have to go in, you have\nto update your code. It's fragile for\nthe reasons that I just mentioned.\nIt's also inflexible.\nYou've built this thing specifically for\nthis one task and that's all it can do.\nAnd it's also pretty slow. If your PDF\nis a scan PDF, you have to perform OCR\non it to transform it into something\nthat the LLM can use.\nSo, one step that you can take to make\nit a little bit more scalable is is\ninstitute MCP.\nUh, we're probably all familiar with MCP\nin this room. It's something that I've\ngrown to fall in love with. As I\nmentioned, we do demos constantly,\nsometimes two or three a week. With the\nMCP server, it's a matter of configuring\none connector. And now I've got the\npower of Box already in my AI agent.\nSo, you can do this without having to\nwrite a single line of of custom\nintegration code.\nAlso, by using MCP, you automatically\nget new things as they hit the MCP\nserver. We have uh two MCP servers. One\nis open source. That's the one my team\nuses a lot and it's got a ton of stuff\nin it because every time we want to demo\nsomething, we add it. We also have a\nremote official product MCP\nand that follows all of the engineering\nbest practices that we follow for all of\nour products. So obviously we recommend\nin the enterprise you use the remote\none. Uh but we do have the open source\navailable.\nThe other thing by using Box sort of our\ncore value proposition is the\nenterprisegrade security and compliance\nthat you get and by using our MCP server\nwe maintain that no one can accidentally\nget access to the files they're not\nsupposed to see and we do that through\nuh token and users and any permission\nmanagement you add inside the product\nflows through the API to the MCP server.\nAnd this allows you to focus your code\non the interesting problem that you're\nactually trying to solve. You don't have\nto worry about how do I find files in\nbox. We got a tool for that. You don't\nhave to worry about how do I extract key\nvalue pairs. We have a tool for that.\nSo by doing that you can focus on the\nsurrounding bits that makes your\nintegration or your application unique.\nAnd then finally, I think what we're\nseeing is to truly scale ATA is is the\nbest option.\nAnd so this is the ability to create a\nbunch of agents. Each of those agents is\npurpose-built.\nThose agents have one job and one job\nonly. And then you have an orchestrator\nsitting on top that decides what agent\ndoes what and in what order. Sometimes\nit might not use all your agents.\nSometimes it might use them twice.\nBut by doing this it allows you to\nmodularize everything. So this agent is\nreally good at this one thing and this\none thing only.\nUm\none uh I think other interesting bit of\nthis\nis you can solve really complex problems\nbut you can also add new agents as you\nrun into new things. you want to add\nsomething, you want to do this new\nthing, build a new agent, you don't have\nto adjust your other agents, they still\ndo their one job.\nUm, and then with A2A, the orchestrator\nagent can dynamically discover other\nagents. So as you add, you don't have to\ndo any glue code to tie it all together.\nUm and then one thing I think uh\nparticularly with MCP server uh in in\nthe A2A space and thinking about how we\nscale this\none thing I can't stress enough is make\nsure you are limiting your agent to the\nMCP tools that it needs.\nUm, I think we've all probably put too\nmany MCP servers in our in our cloud\ncode or um in our code generation tool\nand then found that the agent couldn't\nfigure out which one to use. So, always\nbe thoughtful about which specific tools\nare available to that agent that they\nneed\nto accomplish the one goal that they\nhave.\nAnd so now I'm going to tempt the live\ndemo gods\nand we are going to\ntake a look at a very simple um\nimplementation of A2A. Again thinking\nback to what I said we're going trying\nto accomplish. We've got invoices. We\nneed to extract\nsome uh key value pairs from that.\nAnd so what we've built is essentially\nthree agents. So, we've got our\norchestrator agent. Basically, with the\ndoc string for this orchestrator agent,\nwe're telling the LLM how great of an\norchestrator agent it is. Um, and then\nwe're giving it some instructions on\nwhat agents are are available to it, how\nto use those agents,\num, and some examples of prompts that it\nmight expect to see.\nSo, pretty straightforward. We're using\nthe um the agent cards through A2A from\nGoogle.\nWe've also got a files agent and this\nagent's job is very simple. Based on the\nuh the prompt that it's given, it needs\nto go into Box and it needs to find the\nfiles in a specific folder. This folder\ncould have a billion\nuh invoices in it. In this case, it has\nfive for ease of demo. Um, but it allows\nyou to very quickly find just the files\nthat you need and then and then process\nthem. So this agent returns a an array.\nThe array contains file IDs and file\nnames and then the orchestrator will\npass it to the extraction agent\nwhich again is purpose-built. We telling\nthe LLM how great it is as is at data\nextraction. We're telling it which tools\nto use from the box MCP server. And by\ndoing so, we're able to quickly extract\nkey value pairs from our uh from our\ninvoice. Again, for simplicity of demo,\nwe're not pulling a whole ton of\ninformation. We're getting the client\nname, who submitted the invoice, the\ninvoice amount, and the product name of\nthe product. And then at the end we'll\ndo a little bit of a\nuh sort of rounding up reporting very\nbasic but shows the the capabilities of\nA2A and how you can build these\npurpose-built agents.\nSo fingers crossed\nwe're going to run it. And so the first\nthing you should see is it's validating\nsome of the information. It's got the\nAPI key. you can see what model we're\nusing. We're starting up our agent\nservers um that are available through\nlocal host and a specific port. And so\nnow if the internet is working,\nyou can see we've gotten a JSON object\nthat has our file ID, file names, and so\nthat will be passed to our extract\nagent, which you can now see is slowly\nextracting uh the data that we need. Uh\nwe're getting the client the amount in\nthe product as we mentioned\nand\nwe're now on document four.\nAnd now on document five. I should have\ndone three for the demo.\nAnd now we're complete. And you can see\nthe all of these were for the same\nclient, Acme Incorporated. You can see\nthe total amount. Um and you can see\nthat it processed five documents.\nNow again this was a very\nsimple demonstration just so that we\ncould show how it can work with very\nspecific parameters but you can imagine\nhaving an LLM as a judge agent. Uh you\ncould build in human in the loop so that\nsomebody can check these values before\nit gets written to your database. You\ncould have a reporting agent that builds\na a report. Um,\nthinking of box um ideas, we've got a\ndocument generation API. You could take\nthis information and generate a PDF that\nhas a report that then gets shared to\nyour CFO so that they can check to make\nsure that you've done your work. There's\na ton of things that you can do with\nA2A.\nAnd again, it allows you to focus on\nthose very specific bits. So you can\nhave one team who only cares about the\ndata extraction piece. You can have\nanother engineering team that only cares\nabout writing the report and generating\nthe file. And so by modularizing\neverything into custom and specifically\nbuilt agents,\nyou make it much easier for your team to\niterate quickly. So there's a couple of\num architecture patterns that I think we\nthink about when we think about um A2A\nand the power that it can give your your\norganization. Number one, it gives you\nthe capability to add pluggable tools\nand models. Um if there's a new AI\ncapability you want to add, you just\nplug it in. If the MCP server gets some\nnew cool tool that you want to take\nadvantage of, it's plugged in. You just\nadd that to the list of tools that your\nyour agent needs. If you want to build\nanother agent, you build another agent.\nIt's uh it's a great way to continue to\niterate, to continue to innovate without\nmessing too much with what you know\nalready works.\nMCP also gives you a single integration\npoint. So again, you don't have to write\na bunch of custom API calls to do the\nthings you want. Um, for instance, in\nour MCP server, there's a tool that\nallows you to get a markdown version of\na file. In reality, that's like five API\ncalls that you have to make in order to\nget to that part where you can get that\nmarkdown file. In this case, it's a it's\na tool. So, you just call the tool. You\ndon't have to worry about having all of\nthose different uh pieces. Also, I'll\nsay if you're building MCP servers, I've\nseen a lot of people, they build it\nwhere it's basically a mapping of their\nAPI spec.\nWe don't think that's the right way to\ndo it. We you should think about what\nthe agent might need to do and provide\nthe tools that allow it to do that.\nSometimes that means it's a single API\npoint, but there's three different tools\nthat call it in slightly different ways.\nSometimes you're combining a bunch of\nMCP or sorry, a bunch of API calls into\none tool. It it's really a chance for\nyou to think about how it can best work\nrather than let me just map everything\nin my API to a tool.\nExcuse me. As I mentioned, it also\nallows you to separate concerns.\nYou got a you've got an agent that does\none thing, it does it really well.\nNobody else has to know how that agent\nworks except for the team that's\nmaintaining that agent, but they can\ntake advantage of it from their tool or\nfrom their agent or from some other\nworkflow that they're building using the\nsame agents that you've made available.\nAnd so with agents, you can really\nseparate those concerns so that you\ndon't have to worry about um people\ntweaking your stuff and messing up your\nstuff because they're trying to make\ntheir stuff work.\nIt also allows you to build security and\ngovernance. Um, like I said, one of the\ncore value propositions of Box is just\nhow much we focus on security and\ncompliance. Many of our customers are in\nhighly regulated industries that have\nvery specific\nuh security features that they need. And\nif you're making the call from your\nagent through the box MCP server, we are\nmaintaining that security for you.\nYou send us a token. That token is\nassociated with either a user or a\nservice account. And that user or\nservice account can only ever access the\ndata that belongs to that user or that\nservice account. And that way the same\npeople can use the same set of agents,\nbut they only get the data that they\nhave access to.\nFinally, for scaling and load\nmanagement, um I don't know if any of\nyou have worked with a company called\nAutonomy.\nUm but we did some pretty interesting\nexperiments with Autonomy and a couple\nof our customers. With Autonomy, you\nactually build one agent. You configure\na YAML file and you can scale that agent\nalmost infinitely.\nAnd so imagine having a thousand files.\nYou use autonomy. You spin up a thousand\nagents. Though each agent is assigned to\none file and it all runs in parallel. So\ninstead of 30 minutes, it takes like\nfour minutes.\nThese are things that you can do with\nagents in today's modern infrastructure\nthat can really help you. Um\nwhat happened?\nThere we go.\nuh that can really help you scale and\nget your work done much quicker. And\nthen finally, upgradability and\niteration uh sort of ties into the other\nthings we've talked about, but\nessentially anytime something new comes\nup, you can easily add it to the agent\nthat needs it. You can easily plug in\nnew architectures, new products, new\ntechnologies\nwithout having to mess with the core of\nyour AI agent system.\nSo if you are interested in this stuff,\nwe do have a course uh on deep learning.\nThank you deep learning for inviting us.\nUm Ben Cous is our chief technology\nofficer. He might be the smartest person\nI've ever met in my life and uh he does\na very good job of going through u those\nthe stuff that we just talked about but\nwith hands-on exercises. Um we're hoping\nto do a followup to take it kind of to\nthe next level. Um and hopefully that'll\nbe coming soon.\nBut with that, any questions.\n[applause]\nThanks, Scott. You have five minutes for\nquestions.\nAll right. I must have been so clear\nthat there's no questions.\nOh,\nin the back.\nUm, sorry, this may not be so specific\nto your talk in particular, but you\ntalked a lot about A2A in the previous\ntalk talked about Strand's SDK.\nThere's also an open AI agents SDK. As\ndevelopers, how do we weigh the benefits\nor drawbacks of all these open-source\nagents SDKs? Why do you prefer A2A over\nthe other options out there?\nSure, it's a great question. Um, I think\na little bit of it is personal\npreference.\nUh, certainly in technology, you might\nwork at a company that only loves Open\nAI, which case the agents SDK is the the\nbest way to go. Um, maybe you're using\nGrock and so you can use Grock's new\nresponses API to make a bunch of of\nagents. Um, I've certainly used Strands.\nI've used agents SDK from OpenAI. I've\nused Responses API from Anthropic. Um,\nI've used them all and I think they're\nall pretty great.\nSo, a lot of it I think is personal\npreference and what works best in your\nenvironment.\nLike I don't think you should switch to\none just because you saw a talk on it if\nyou're building everything in somewhere\nelse.\nUm so I was attracted to this topic\nbecause that enterprise AI\num what the the demo or um do you have\nany experience or I I bet you guys have\nthe like enterprise level agents running\nin your you know enterprise uh in\ninfrastructure. So any thing to share\nabout the challenges risks when you\nrunning such a you know I I suppose\nthere's a a towards customer right\ncustomer facing\nsure\nno I think um\none of the biggest risk is around\nsecurity if I build a chatbot and my\ncustomer uses that chatbot and they get\nthe wrong answer I'm in trouble\num and so you need to build in things\nthat help you ensure that an answer you\ngive is the right answer. I I think it's\nsuper helpful to provide citations that\ntell you where that answer came from so\nyou can validate that yourself. And then\nI think also um again making sure that\nthe agent is built in such a way that it\ndoes one job really well. Uh, one of the\nthings that we do constantly anytime a\nnew model comes out, we have a stat a\nset evval set that we run. And so it\nhelps us understand what is this model\nreally good at specifically to the kind\nof content that's in box versus what is\nit not as good at. And so then we're\nable to build agents on the right model\ndepending on what the use case is. Um,\nand then finally, I think again it's\nabout making sure nobody ever accesses\nanything that they're not supposed to\naccess.\nUm,\nif I've got a document in my box account\nand that document has a bunch of\npersonal information about the person I\njust hired and somebody from finance\nasks a question and gets that person's\npersonal information,\nthat's a no-go. That's instant death to\nAI. And so as you're building these\nthings, security has to be at the top of\nmind. Make sure that nobody can ever\naccess accidentally access something\nthat doesn't belong to them.\nUm so [clears throat] excuse me. So for\nBox, um there's a number of different\nsteps that we take. Number one, when you\nask a question, the first thing we do is\ncheck, does that user, does that service\naccount have access to that file? And if\nnot, we reject it out of hand.\nUm, once that has been done, then we we\nfeel like you're only getting access to\nthe content that you're supposed to\nhave. Like, but that's the very first\nstep is access control.\nIt's it's by code. Yeah.\nOkay. We'll take one last question over\nhere.\nFantastic talk. Thank you so much. Uh I\nwant to stress on the same point on\nsecurity and governance built in\nespecially I'm coming from Europe in\nGermany and uh it's the head\nwhen you talk about enterprise AI. So\ncan you tell us more more is it only\naccess control you're having or more\ngovernance stuff?\nUm excuse me. So with box you get\ngovernance out of the box. So, anything\nthat could negatively affect how it's\ngoverned, we also take into account.\nAI part,\nI'm sorry.\nHave the AI act as well part of it or\nnot really.\nSo, we do all of our security checks\nbefore AI gets involved.",
  "transcript_chars": 22083,
  "ingested_at": "2026-05-15T10:45:27.936128+00:00",
  "source": "channel",
  "yt_meta": {
    "view_count": 544,
    "like_count": 5,
    "channel_id": "UCcIXc5mJsHVYTZR1maL5l9w",
    "categories": [
      "Education"
    ],
    "tags": []
  }
}