# Connect GitHub to your AI agent

> Yes — ClawLink is a hosted GitHub MCP server. 846 tools your agent can call from chat, with one-click hosted OAuth and nothing to run locally.

Web version: https://claw-link.dev/hub/github

ClawLink hosts a managed GitHub MCP server that exposes 846 tools to your AI agent. You connect GitHub in one click, and your agent can read, create, and update GitHub data from chat without you building or running a local MCP server.

## Quick facts

- 846 tools callable from chat
- One-click hosted OAuth
- Works with OpenClaw, Hermes, Claude Code, Cursor, Codex, and any MCP client
- No local server or config files

## Overview

The usual path is: build auth, handle token refresh, wire up the tools. With ClawLink you connect GitHub once and start using the real actions from the agent.

## Setup

GitHub uses OAuth. You connect it in the browser: click Connect, sign in, approve. ClawLink stores the token and refreshes it on its own. You never touch a key or wire up a redirect URL.

Authentication: hosted OAuth

## What you can do

- **Work without tab-switching** — Pull up GitHub issues, repos, tasks, or alerts without leaving the conversation.
- **Ship the routine stuff faster** — The agent grabs GitHub context, drafts the next step, and runs the common maintenance actions.
- **Debug with real data** — Ask for the current state from GitHub before the agent suggests a fix. No guessing.

## GitHub tools

846 GitHub tools, ready the moment you connect.

- `github_abort_repository_migration` — Tool to abort a repository migration that is queued or in progress. Use when you need to cancel an ongoing migration operation.
- `github_accept_repository_invitation` — Accepts a PENDING repository invitation that has been issued to the authenticated user.
- `github_add_a_repository_collaborator` — Adds a GitHub user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly.
- `github_add_app_access_restrictions` — Adds GitHub Apps to the list of apps allowed to push to a protected branch. The branch must already have protection rules with restrictions enabled. This endpoint only works for organization repositories, not personal repositories. Apps must be installed on the repository with 'contents' write permissions.
- `github_add_assignees_to_an_issue` — Adds assignees to a GitHub issue. This action only adds users - it does not remove existing assignees. Changes are silently ignored if the authenticated user lacks push access to the repository.
- `github_add_email_address_for_authenticated_user` — Adds one or more email addresses (which will be initially unverified) to the authenticated user's GitHub account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted.
- `github_add_field_to_user_project` — Tool to add a custom field to a user-owned GitHub Projects V2 project. Use when you need to add fields like status, priority, or custom data to organize project items.
- `github_add_item_to_user_project` — Tool to add an issue or pull request to a user-owned GitHub project. Use when you need to add existing repository items to a project board.
- `github_add_labels_to_an_issue` — Adds labels (provided in the request body) to a repository issue; labels that do not already exist are created.
- `github_add_or_update_team_membership_for_user` — Adds a GitHub user to a team or updates their role (member or maintainer), inviting them to the organization if not already a member; idempotent, returning current details if no change is made.
- `github_add_or_update_team_project_permissions` — Adds a classic project to a team or updates the team's permission on it. This endpoint grants or updates permissions for a team on a specific classic project (not Projects V2). The authenticated user must have admin permissions for the project. Both the team and project must belong to the same organization. Requirements: - The project must be a classic project (not GitHub Projects V2) - The authenticated user must have admin permissions on the project - The team and project must be in the same organization - Requires 'admin:org' scope for the authentication token Returns HTTP 204 No Content on success, 403 if project is not an org project, or 404 if the organization, team, or project is not found.
- `github_add_or_update_team_repository_permissions` — Sets or updates a team's permission level for a repository within an organization; the team must be a member of the organization.
- `github_api_root` — Retrieves a map of all top-level GitHub REST API resource URLs and their templates
- `github_check_if_gist_is_starred` — Checks if a gist is starred by the authenticated user
- `github_check_if_pull_request_has_been_merged` — Checks if a specified GitHub pull request has been merged, indicated by a 204 HTTP status
- `github_check_if_user_can_be_assigned` — Verifies if a GitHub user can be assigned to issues in a repository; assignability is confirmed
- `github_check_if_user_can_be_assigned_to_issue` — Checks if a specified GitHub user can be assigned to a given issue within a repository
- `github_check_if_user_follows_another_user` — Checks if a GitHub user `username` follows `target_user`; returns a 204 HTTP status if true
- `github_check_if_user_is_blocked_by_authenticated_user` — Checks if the specified GitHub user is blocked by the authenticated user; a 204 No Content
- `github_check_if_user_is_blocked_by_organization` — Checks if a GitHub user is blocked by an organization
- `github_check_if_user_is_repository_collaborator` — Checks if a user is a collaborator on a specified GitHub repository, returning a 204 status if
- `github_check_person_followed_by_auth_user` — Checks if the authenticated GitHub user follows a target GitHub user
- `github_check_private_vulnerability_reporting_status` — Checks if private vulnerability reporting is enabled for the specified repository
- `github_check_public_organization_membership_for_user` — Check if a user is a public member of an organization
- `github_check_team_permissions_for_a_project` — Checks if a team has 'read', 'write', or 'admin' permissions for an organization's specific
- `github_check_team_permissions_for_a_repository` — Checks a team's permissions for a specific repository within an organization, including
- `github_check_token` — Checks if a GitHub App or OAuth access_token is valid for the specified client_id and retrieves
- `github_compare_two_commits` — Compares two commit points (commits, branches, tags, or SHAs) within a repository or across
- `github_create_inference_chat_completions` — Create chat completions using GitHub Models inference API
- `github_create_inference_embeddings` — Create inference embeddings using GitHub's AI models

## Example prompts

- **Abort repository migration:** Use GitHub to abort repository migration and walk me through it.
- **Accept repository invitation:** Use GitHub to accept repository invitation and walk me through it.
- **Add a repository collaborator:** Use GitHub to add a repository collaborator and walk me through it.
- **Add app access restrictions:** Use GitHub to add app access restrictions and walk me through it.

## ClawLink vs. building it yourself

| | Manual | ClawLink |
|---|---|---|
| Connection | Build it yourself. You register a developer app with GitHub, set up redirect URLs, handle the consent screen, store and refresh access tokens, and redo the wiring when scopes change. | Hosted hosted OAuth. Connect once in the browser. ClawLink owns the lifecycle. |
| Maintenance | Token refresh, permission debugging, env config, every edge case. All yours. | ClawLink handles the plumbing. You focus on the workflow. |
| Time to first call | Days to weeks. Auth, storage, tool wiring, testing. Then the agent can act. | About two minutes from sign-up to the agent calling GitHub. |

## FAQ

### How do I connect GitHub to my AI agent?

Install ClawLink, open the dashboard, click Connect next to GitHub, and finish the hosted OAuth flow. Your agent can call GitHub from the next message. Two minutes, total.

### Is there a GitHub MCP server I can use?

Yes. ClawLink exposes GitHub as 846 tools your agent calls through a hosted MCP-compatible runtime. You don't run a local server or edit a config file. The tools are there the moment you connect.

### Do I need GitHub API credentials?

No separate API key. You sign in to GitHub through the normal OAuth flow and ClawLink handles the token after that.

### How much does it cost?

Your first integration is free, plus a 7-day trial of the full catalog. Paid plans unlock the rest of the library.

### Can I set this up from the terminal instead of the dashboard?

Yes. Run npx -y @useclawlink/cli login, then npx -y @useclawlink/cli connect github. The first opens a browser to sign in to ClawLink. The second opens a browser to authorize GitHub. No API keys to create. Works with OpenClaw, Hermes, Claude Code, Cursor, Codex, and any agent that runs shell commands.
