Model Context Protocol enables you as a developer to integrate directly with the AI tools that your users are using. I took advantage of this as an educator by integrating a Model Context Protocol server with the Epic Workshop app. This will help learners ask their AI-assisted code editors about the specific exercise they are working on.
To use this, you configure your editor with the following command:
npx-y@epic-web/workshop-mcp@latest
Here's what that configuration looks like in Cursor (check docs):
With that set up, you can simply ask your AI-enabled editor about your progress in the current exercise, and it will be able to compare your work-in-progress with the solution, giving you tips on how to get to the solution and answering any questions you have about the solution.
You can even have the AI quiz you on the material 🔥 Watch this.
MCP is pretty rad!!
P.S. The source code for the MCP server can be found here.
Share
One of the things that I really love about the Epic Workshop environment is how many features it has to help hold your hand and guide you as you're accumulating all of this knowledge. For example, we have the Playground environment that allows you to work in your own code editor so that you're using the tools that you're familiar with and it runs the application right here just as you would expect from a normal work environment and of course you can open it up in its own tab and work just as if you're working on the job. To take that even further we have the product manager who's giving you instructions just as if you're on the job. We also have videos from me to help you understand what exactly is expected of you as well as the instructions. And if you get really stuck, you have the tests and the diff tab.
And what's interesting about the diff tab is it really can tell you exactly the difference between where you're at right now and where the solution is trying to take you to. But it doesn't exactly show you why those changes are significant and important. And if you read through all the instructions and everything, hopefully that helps get you there. But we can do even better with what we have now with MCPs and AIs. So if you are using cursor or WinSurf or VS Code or any other editor that has support for MCPs, you can configure it to use the new Epic Workshop app MCP.
So to do that I'm in cursor so I'm going to go over to my editor settings. So under cursor, full settings here, we'll go to MCP, and I'm going to paste that config right here, so I'm going to call it Epic Shop. Here's our command, it's npx args is epicweb workshop mcp at latest. You could specify a version right there if you want to, but you always want to get the latest, right? So with just that now, we have two tools, getExerciseStepProgressDiff and getExerciseStepInstructions.
There could be different ones by the time that you actually use this or new ones, but this is enough to get us to where we need to be. So I've been working on this exercise a little bit and now I want to know what I've got left. So I can just ask cursor in chat, what do I have left in this exercise? And now it's going to decide, oh, okay, I need to run the progress diff tool, and we'll also get the instructions. And based on the different instructions, this is what you have left.
And I could say, yeah, go ahead and make that change, or I could just go and make that myself. But if I say, yeah, let's go ahead and make that change, then it's able to find the code where that's supposed to happen and make that change for us. And we could actually take it a little further. Why does this change matter? What is this actually doing for us?
Why is this necessary? And because it has the context of the instructions and it understands a lot of things about software, it can help us get a good idea of what this is actually doing for us. So this is just another one of the things that can help guide you as you're going through your learning experience because of all of the material that whatever workshop you're going through has, it will just allow you to ask questions of that material, which I think, and not just of the material, but even your progress on the material and where you're at. And you could even say, hey, I've done it this way. How does that differ from the solution?
And which way is better? Lots of really cool things that we can do with this model context protocol server that I've written for the Epic Workshop app. I hope you totally love it. See you around.