Upwork MCP Full Tutorial - Automate Your Entire Freelance Business

Michael Elliott shows how to connect Upwork's MCP server to Claude to automate your freelance business. He walks through setup, demonstrates triaging invitations and landing a $1,500/mo client with a 26% response rate, and stresses the importance of human approval before posting anything and staying within Upwork's rate limits.
Chapters
Yesterday, this system triaged 24 invitations, held the top proposal slot on 5 jobs, and it helped me close a $1,500 a month client. I personally approved every single thing that it sent, and today I'm going to delete the entire thing live on camera and rebuild it from one copy and paste using Upwork's own AI integration. By the end, you'll have the exact file that builds your version, your profile, your niche, your rules, plus the safety setting that I tripped so you don't have to. What am I talking about? Well, I'm talking about the Upwork MCP. If you don't know what an MCP is, it's just a way for you to connect AI to your tools and use them. And when Upwork released its official MCP server, I was a little bit skeptical because I understand the history on the Upwork platform and their AI processes. But with all the third-party tools launching AI and AI being the future, Upwork evidently saw this as an opportunity. What's important to note here is that this isn't really something that's optional at this stage. If you don't have this, you're going to be significantly hamstrung against what other freelancers are doing. You can apply for jobs. You can scan individual projects if you're a client, applications if you're a client, applications if you are a freelancer, invitations. Everything that you need to go through on both sides of the coin is available using the MCP server. And today we're going to install it together. This is just a snapshot, an example. There's a few bits of information that I can't share on screen because it's private from me, but this shows me my Connect balance, open proposals, jobs won, where I rank, a ranking tracker to see where you actually are in the, in the ranking system. Like, you know, I can see that I'm in the top positions for some major terms, pipelines and follow-ups, proposal counts, boost and connection, boost and connects logs, market demand, 1,856. Available jobs matching my search shows that I've got opportunity for growth and won projects here, and that's exactly what this tool was designed to do. Some of the other examples, I'm not going to show you every single one, but here, this is a daily boost report. It shows me the bid per click, it shows me the daily budgets, it shows me the connects spent lifetime, $14,000, effective cost, 274 connects per click. This gives us the availability badge anomaly watchers, and it gives you the ability to track exactly what you're spending where you're spending it, what is actually happening, and follow up with all the clients that you had calls with last week. This is what it did for me here. Now let's get into integrating this system. So I removed this individual connector. So let's set up our agent. This is the MCP URL, so we're going to grab it. Then we're going to head over to Claude, which is what I use. Now customize, and inside of customize we're gonna hit The connectors, add and custom connector. This we call Upwork. We paste in the MCP URL and we hit continue. It'll bring us to this page. We hit open Claude. We look at Upwork. This is our individual Upwork connection by the MCP. Once, because it took me away to that page to log in, that's the authentication done. And look at this. We can, the read-only tools that it has, find freelancers, get account, get client financials. Get job posting, get rate insights. These are in abundance. There's a lot of information in here. And here we go to the right tool, boosting profile, finalize uploaded files, invite freelancers. Everything you want to do on this platform is available inside of Upwork. Now, what is the caveat to this and what do I need to make you aware of? Well, Upwork does not publish the rate limits, and a rate limit is if you send requests to the Upwork system, it will bug out. And that is exactly what I did if the number is too high. Now they don't post the actual number, so you can't stay safe by following a specific guide. Upwork doesn't publish it. I hit the rate limit this morning, so I reined in on all of my individual platforms and I added it to this individual connection technique that we're gonna go through now so that we're in a position we can get this integrated. Properly. But that shows you that everything is there. Now head over to projects, hit new project, and then call it Upwork and head inside it. Here you can see mine. I just, I installed it and reinstalled it with you there. These are all of the individual runs that go. These are scheduled and live, and it's what your Claude will look like after we complete this process. So what do we need to do? Well, in the files that are going to be attached to this, I'm going to give you the individual briefings for exactly what you need to do. I've connected the MCP now, and what I'm going to do is open this on my computer. One second. So here we have this folder. So it gives you the clear outlines and steps that we're going to take. This is the— so we need a Claude account. This zip, unzip somewhere you can find it. Nothing else, no API keys, nothing's needed. But I'm gonna open a new Claude chat and I'm gonna paste this in. And this is effectively what we, what we need to kick the whole system off. So I'm gonna head back to Upwork. I'm gonna pop this in and I'm gonna send it. And this is your exact prompt that you need. This is gonna take you through a live questionnaire that asks you questions about your individual profile, system, services, and we're gonna answer each individual question so that we can get to the bottom of exactly what our output looks like. You know, I can't build you the exact technique inside of my Upwork profile because it's gonna pull information about the projects that I work on. It's gonna pull information about all of these individual client bases and target demographics, closed jobs that you've won, the applications that you sent that actually work so you can mirror them. to your own clients and what's working for you in your industry. And that is the most critical part of this step. I have a 26% response rate from my application, so I don't want to change anything about what I do. I applied for 50-something jobs last week. That video is coming. I applied for 50-something jobs last week, and that gives me a platform to be able to understand that I'll get 26 responses, 26% responses. It will equate to what, 12 individual responses to those applications with a little bit of variation. So that's how you win projects on Upwork. You go for volume, but at quality, like the ones in the week. There was a lot more than that. You could see it found 1,800 a minute ago, and that is not what you want. This is now listing my contracts, listing freelancer proposals, and getting the freelancer dashboard. All of this will happen based off of what we've got put into the system. So you can see here, who are you on paper? Michael Elliott, Skegness, number 1 ranked Google Ads expert, Google Ads management expert vetted. It's pulled all of my individual profile achievements in here, and then it tells me what I win: ongoing Google Ads management accounts, lead gen. It's pulled all of this information and it asks me, is the Phase A summary correct? So is what it's— is what the AI has pulled 4 to 5 lines maximum, blunt and direct. This is right in my wheelhouse, so I'm accepting your invite to take the free audit on. Evidently that's a phrase that works for me. One proof point per proposal, never the full list, picked for relevance. Yes, if it's e-com, if it's lead gen, whatever. Call to action is always the free 48-hour personalized Loom audit. Absolutely, no problem. It pulls all of this information and it's asked me whether it's right, so I'm going to confirm it. What do I do with the 12 existing Upwork scheduled tasks? When the new Fortas schedule goes live. Replace all. You won't have that, that will just go through that process. But I reduce the amount of scheduled, uh, runs because of the rate limit that I hit earlier. So that's the system, learning to keep your profile safe. This is all of the questions now, 10 questions, Phase B, 1 of 10. So what does a dream engagement look like and what's the smallest deal worth your time? Retainers first, audit funnel recommended. I'm gonna go with that. Hard skips. So what do we refuse? Current config: GMC suspensions, reinstated rescues, agency seats, white label, pure one-offs with no ongoing path. Anything to add? That's fine to me, so keep these current selection. And it's pulled all this from my profile, so this is what you're gonna see inside of yours based off of your win history. If you are in a position where your win history is a little bit light, then you won't see the depth here, but I've programmed it in a way that's going to allow you to get maximum output for what you have, and you can feed it any information you want. As we see, tier 1 countries, so that's all I want to go for from history and learning. As we know with Upwork, the best buyers are specifically in the US East Coast. However, if your industry is different or you target other locations, feel free to edit them. So I'm going to go with US East Coast for that question. Connects as investment, tracked as ROI equal value of connects. So I spend like 10,000 connects per month, if not more. So I'm going to go with this now, and 200 connects bid as a default. This is the default deal structure. I'm happy with that. I just accepted there the profile rate, which is £47.77, because 7's deliberate. Test it out. Rank keywords, propose 6 daily higher intent phrases. Google Ads expert, we can mix this up, but I'm going to confirm it as proposed. I've put voice guardrails in here. If your voice changes or if it pulls something you don't like into this system, you need to make sure that you take it out. But for me, this is happy. I don't want to go with generic stuff. I don't want to say, I hope you find— I find you well, or I'm passionate about this, as I've covered in all of my videos. You don't want that, so do not approve it. So this is getting me to approve the schedule now, and this is where your appetite for what you need to implement comes in, because I have gone for bog-standard spaced approaches with random timing. So I can make sure that I don't fall into categories of actually pushing these live. Now what it will do is it will only pull information. It cannot push information without you confirming, which is exactly what Upwork's terms of service is. There has to be a human steering the ship. 4 individual approaches to actually pulling information. Are there jobs available? Have I received any messages? All of those things are GET requests. They're not POST requests. which means you're receiving information, you're not sending it. So that's exactly where this triggers. And we then apply for each individual job manually. We confirm messages manually, or everything from the Upwork perspective, from a terms of service point of view is here. Now, how did I hit the rate limit? Well, I had this set up to run a multitude of searches. My cap was set at like 20 calls. 20 calls hit the rate limit. So I wouldn't go anywhere near 20, which is why I ran with the 5 searches a minute ago in terms of keyword rankings. And then we look at these individual options as timings. Now you could pull them every 15 minutes. You could pull them every hour, half an hour, every 3 hours, whatever you want. For me, I'm doing it once a day. And if I need to use the system more, I come into the project that we just created inside of Claude. And we are in a situation where we can now run it whenever we want. But again, it's at your own, uh, you have to determine your barometer. Now people are spamming this. I know people that are spamming this every 5 minutes to pull individual jobs. I don't advise it. I think that this is an official Upwork tool that you should be using. And evidently they have changed their thought process or have always planned to release this MCP that shut down third-party tools for, with applications. Now it's Upwork's official one. You can use it, but that doesn't stop you automatically triggering automated things from the Upwork side. So that's why I've kept it really clean. I get my updates in the morning so I can look at them. It pulls the individual jobs once a day in peak East Coast hours that pulls Europe, but obviously that does mean that the European applications are late, but I can pull that in the morning if I want to. So this is it. We're gonna ship it now. You've gone through these 10 questions, you've answered these individual questions how you need to from a necessary perspective to get exactly what you want, and this is going to be the final result. This has now produced me all of these individual files. So you watched it read my profile, it knows my rate, it knows my wins, it knows my voice, it knows my losses without being told. So I answered the 10 questions honestly, and I advise that you do the same. Hard skips, countries, connects, budget. This is where it becomes yours, not a copy of mine. If you then create the scheduled task that it outputs like this, then you're gonna be in a situation where you have the individual rules firing on a consistent basis every single day, once a day, random timing, and a human fires every single shot, which is what Upwork's MCP is designed to do. As promised, you saw me delete the MCP earlier, but this is me deleting the individual task that I already got set up. So this is a completely fresh run. And then what we're going to do is once I've deleted all these tasks, you can see how sticking true to its individual core, it's asking me to delete each individual step. And I ensure that I have needs approval on so that every single individual fire is actually from a human, which is exactly what they say. Now this is in Claude when it comes down to scheduled tasks, but it will do exactly the same thing to you. And I strongly advise that you keep it that way because you don't want to be sending Anything automatically. That is how you'll get banned. Now, how do you not get banned? You don't have auto-reply. You name every single job. You don't scrape the feed using Cowork or whatever. Back off if you ever get throttled. Never dodge a limit. I hit the wire, 90 seconds, learned, and I capped it. And there's a really important distinction here because this doesn't win jobs. It makes you systematic. Found faster, drafted sharper, followed up on time. Every time. Your skills do the winning of the projects. So now you have a full breakdown of the trigger schedule, the weekly review, the follow-up sweep, daily power run, and the morning briefing that you receive, plus the times that you actually receive them, which is brilliant. Now, when it comes down to these individual ones that were retired, these are still available. All of the files are going to be in the description so you can go and grab them. But this is really important because that's how you're going to pull the individual report, the ROI sweeps, Et cetera. But these are the individual exact prompt texts and the hard caps. Obviously it's been tailored to me because this is me, but it'll be your information and data when you have it, and it's gonna allow you. Now I've asked it for 5 individual prompts, and I'm gonna make an Upwork call here that's gonna pull the, the dashboard. So this is one Upwork call only, which is the amount of calls that we use for Upwork. Get freelancer dashboard, tell me what's new. There any messages, invitations, offers, connect balance, matching job count, and draft a reply for anything that needs one. This is now making a live call to Upwork, which is going to pull all of that information and give it me based off of what is happening. I can respond to clients' messages, chase them, get on top of invitations, get on top of messages, any follow-ups for clients that I have forgot about, or as my inbox became busy with all my booked calls, I've not shown the attention that they deserve. And all of those things are now taken care of inside of Claude. So you can speak, you can optimize your profile. I'm gonna be producing a lot more content on this as I get more and more detailed with the MCP usage. But what I wanted to do is give you a concrete guide that allows you to be able to reach out to your Upwork projects and efficiently win more projects by being systematic. This is critical. This is V1. So if you find any individual bugs inside of your system, then please do. But there's a full prompt list that goes through this. And to show you its power, one Upwork call exactly as budgeted. The state update went through to the project, not the API. No scheduled runs. 2 threads move. Mary Williams. And as you can see here, it's picked up a couple of calls that I have today with individual clients. It's pulled my manual messages that I've received, and I'm gonna push them, push them live. Now let's apply for a job. So I want to make this as efficient as possible. So let's say, hey, I'm interested in knowing if there's been any projects that fit my criteria posted. Make one call and pull me the individual project and I'll apply. Just do one please. So now I've asked it to find any projects that match my individual criteria. Make the call, one call, even though I got that wrong, and then pull the individual projects and I'll apply. This is now going out there finding any jobs that have come in that fit my criteria based off of my inbox, based off of the Upwork profile from a, a jobs perspective, which is all within the terms of service. And this is gonna give me the approach to be able to apply for this job inside of here. So this pulls the Upwork job, hourly expert rated, 6 months plus, 15 hours after the initial audit. That's your Loom funnel shape exactly. I'm going to do something I don't normally do and I'm going to send this without a Loom because I don't want you to watch that. Go and check the video out of me creating Looms that will give you the, the idea. Um, but let's apply. So I don't think it has my video testimonial anymore, so attach that and my— and I added the video testimonial to this, which I strongly advise that you do. It can upload files on your behalf, again with your permission. So by having this, if it doesn't have it, I'm going to upload it and I'm going to send this application live from the chat. And there you go, you can see the application submitted. What went out: the pool rule letter, $47 an hour, the numbers, 15 base connects plus 200 default bids, and it attached my video testimonial to the application as I request requested and instructed it to do. So we have all of these individual options for us to be able to go through. But what we also have is the ability to be able to run all of those individual downloads that we had earlier on in the video that give us a base understanding of exactly how we can go through these strategies and, and run through them. I showed you the report. I showed you the pulling of these applications. This video is everything that you need in order to get them, and I'm going to attach a file in the description. Go and grab it from my Gumroad that gives you the ability to be able to run all of those individual reports whenever you see fit. Just keep in mind the individual rate limits and the fact that Upwork doesn't publish them. That is your own responsibility to ensure that you do not cross any of those boundaries. If you use this, in the way that it's designed to do with it being Upwork official, then you're gonna be in a position where this changes everything for you from a perspective of Upwork. Honestly, if this video hasn't done it justice, being able to speak live inside of Claude, pull jobs that have been posted that match criteria that you set without having to manually scroll through and review is an absolute game changer. Like not having to just look through the jobs and actually score them or Look for these things because you've got a backlog of projects that you've won, applied for, how you've applied for them, the way that you speak, the locations you target. All of that is exactly what Upwork designed this for. You shouldn't be scared of using it, but be scared of over-engineering it. Never send anything without you being in there actively pulling this information, and you should be fine. That's exactly what I'm using it for. If you don't, you're going to get left behind. If you want me to continue working on the MCP, let me know in the comments. Finally, from my side, this is V1. If you hit any snags during the build phase, comment below, let me know what the snags are, and I'll go and fix them for you. Not a problem. You no longer have any excuse not to apply for Upwork jobs because you can come in here and you can actively find them with pinpoint accuracy at scale. My name's Michael Elliott. Hit like, hit subscribe, and I'll catch you in the next one.










