Disclosure: some links in this post are affiliate links. If you sign up through them I may earn a commission, at no extra cost to you.

Want to go deeper? I run a live Claude Code workshop — check the latest dates and see if you can still grab a seat.

Connecting Claude Code to GitHub and Vercel isn’t complicated once you’ve seen it done — you generate a scoped GitHub token, store it as an environment variable so it never gets exposed, then wire up Vercel the same way. After that, you can deploy a live app with one command. This same setup is a core building block if you’re using Claude Code GoHighLevel workflows together, so here’s the exact sequence, the gotcha with the token, and where it fits if you’re also building out GoHighLevel and AI as one connected system.

Here’s the thing about Claude Code — it’s genuinely powerful, but two setup steps trip up almost everyone I teach: connecting GitHub so Claude has somewhere to store your code, and connecting Vercel so you can actually put an app live on the web. Neither one is hard once you understand what’s happening under the hood. So let’s break it down piece by piece.

What are skills, MCPs, plugins, and agents in Claude Code?

A skill is a step-by-step recipe Claude follows for one task, an MCP is the connector that lets Claude reach outside tools like GitHub or Vercel, a plugin bundles a skill, MCP, and agent together, and an agent combines MCPs and skills to handle a job on its own. Each plays a different role in how Claude actually gets work done.

Before you install anything, you need these four terms straight, because Claude’s interface throws all of them at you at once.

Skill

A skill is a recipe card for Claude. It tells Claude exactly how to do one specific job, step by step. You write it once, or download one, and Claude follows it every time that task comes up.

MCP

An MCP is a connector. Think of it like a phone charger — Claude can only reach the outside world when it’s plugged in, and the MCP is the cable. It’s what lets Claude actually go do something inside GitHub or Vercel instead of just talking about it.

Plugin

A plugin bundles an MCP, a skill, and sometimes an agent into one downloadable package. It’s convenient, but in my experience the packaged MCP connections are less reliable than installing the MCP directly — authentication through the browser sometimes fails, and it creates problems that a direct install avoids.

Agent

An agent can use MCP connections and multiple skills together, and gets deployed whenever you need it. That’s a deeper topic for another day — for this walkthrough, just know it sits on top of the other three.

My honest gotcha here: if you install a plugin after you’ve already installed the MCP directly, Claude will often show the plugin’s version as “disconnected” or “failed.” That’s not actually broken — as long as your direct MCP connection and skill are working, you’re fine. It just looks alarming the first time you see it.

Mask group 40

How do you connect Claude Code to GitHub with an MCP?

You connect Claude Code to GitHub by generating a scoped access token in GitHub’s settings, storing that token as an environment variable so it’s never exposed in a chat, then installing the GitHub MCP so Claude can read and act on your repos. Once connected, Claude can list, push to, and manage your repositories directly.

GitHub is where you push your code so it’s backed up, version-controlled, and shareable — it becomes the foundation you build every app on top of. Here’s how to wire it up.

Step 1: Generate a scoped token in GitHub

Go to github.com/settings/tokens, click “Generate new token,” and name it something like “Claude terminal.” Set the expiration short — seven days is what I use, because I rotate and delete these keys anyway. Choose “all repositories,” then go carefully through permissions:

  • Contents
  • Issues
  • Pull requests
  • Workflows
  • Actions
  • Commit statuses

Set these to read/write except metadata, which stays read-only. Don’t grant administration or delete permissions — that’s how one mistake wipes out an entire repository, or how a compromised account grabs everything. Keep the token narrow on purpose.

Step 2: Store the token as an environment variable

Once GitHub generates the token (it’ll start with a GitHub PAT prefix followed by a long string), don’t paste it into a chat conversation with Claude. Open VS Code, open a new PowerShell terminal, and run the storage command with your token inside quotation marks. That last part matters:

“That’s the most important piece because if those quotations are not there, it won’t read right.”

Hit enter, then type “clear” to wipe the terminal so the key isn’t sitting on your screen. The token is now stored as a system variable, so Claude can use it without it ever showing up in a conversation.

Step 3: Install the MCP and verify the connection

Run the install command, then open Claude Code and type “MCP.” If it worked, you’ll see GitHub listed as connected. Test it by asking Claude to list all your repos — it’ll ask permission to reach the MCP, you approve it, and it returns every repo you have, what language it’s in, and when it was last updated.

Mask group 41

How do you deploy an app to Vercel through Claude Code?

Once your GitHub token and MCP are set up, you create a Vercel account, install the Vercel MCP, authenticate it, and approve access for all teams and projects. From there, typing “deploy to Vercel” inside Claude Code pushes your project live in one step.

Once your code is in GitHub and you’ve run basic security checks, the next step is getting it live so friends, testers, or collaborators can actually see it.

Set up your Vercel account and connect the MCP

Create a Vercel account if you don’t have one — there’s a free hobby tier to start, with paid tiers later if you need them. Back in your terminal, run the Vercel MCP install command (these commands update over time, so check for the current version if this one looks off). Open Claude, trust the folder, and type “MCP” again.

Vercel requires authentication the first time. Hit enter to authenticate, choose “all teams, all projects,” and approve access. Check MCP again and you’ll see Vercel listed as connected.

Deploy with one command

Open the project folder you want to ship, and inside Claude Code just type “deploy to Vercel” and hit enter. Claude will walk through the necessary permissions (unless you’ve already bypassed permissions) and push the deployment on your behalf. That’s the whole point of setting this up correctly:

“The main point of it is giving it the access it needs to go out there and do its own job without you having to do any of this stuff in GitHub or in Vercel, especially if you don’t know it.”

Mask group 42

Claude Code GoHighLevel workflows: MCP vs. plugin installs — which should you actually use?

Installing MCPs directly, rather than through a bundled plugin, tends to authenticate more reliably in the browser and avoids the false “disconnected” warnings that plugins can trigger. If you already have an MCP installed directly, Claude recognizes the existing connection and won’t duplicate it when you add the plugin.

You’ll notice Claude offers both a direct MCP install and a plugin that bundles a GitHub skill, agent, and MCP together. If you already have the MCP installed directly and then install the plugin, the plugin’s MCP piece will stay uninstalled automatically — Claude recognizes you already have a working connection and won’t duplicate it. I still recommend installing MCPs directly rather than through the plugin, purely because the authentication tends to be cleaner and more consistent.

This same discipline — connect the right tool the right way, understand what each piece actually does before you touch it — is exactly the mindset we teach across GoHighLevel and AI. If you’re newer to this kind of setup work generally, it’s worth reading what Automated Marketer is and how the free training library is organized.

Frequently asked questions

Do I need to know how to code to connect Claude Code to GitHub and Vercel?

No. You’re following a sequence of commands and permissions, not writing code. If you can copy a token, paste it inside quotation marks, and follow a checklist, you can do this.

Why should the GitHub token expire in seven days?

A short expiration limits your exposure if the key is ever compromised. Since you’re rotating and deleting these tokens anyway as you move between projects, there’s no reason to issue one that lasts months.

What permissions should I avoid giving my GitHub token?

Skip administration and delete permissions. Those let a mistake — or a compromised account — wipe out an entire repository or take over the whole account. Stick to contents, issues, pull requests, workflows, actions, and commit statuses.

Should I use the MCP install or the plugin for GitHub and Vercel?

Either can work, but installing the MCP directly tends to authenticate more reliably through the browser. If you already have the MCP installed, the plugin will detect that and skip reinstalling it.

Where does this fit if I’m also learning GoHighLevel?

The same foundation-first approach applies. If you want the fuller path with GoHighLevel and AI built as one connected system, the GoHighLevel Masterclass covers it step by step, and the FAQ answers common setup questions.