GitHub Integration Hub

Full-stack GitHub OAuth hub: Express + SQLite backend, TypeScript SDK, CLI, and MCP tools built by Cristian
  • typescript

1

GitHub Stars

typescript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "crbatista-mcp-cli-github-integration": {
      "command": "npm",
      "args": [
        "run",
        "start:mcp"
      ],
      "env": {
        "PORT": "3000",
        "DATABASE_FILE": "./github-integration-hub.db",
        "GITHUB_CLIENT_ID": "your-client-id",
        "GITHUB_API_BASE_URL": "https://api.github.com",
        "GITHUB_REDIRECT_URI": "http://localhost:3000/auth/github/callback",
        "GITHUB_CLIENT_SECRET": "your-client-secret",
        "GITHUB_OAUTH_TOKEN_URL": "https://github.com/login/oauth/access_token",
        "GITHUB_OAUTH_AUTHORIZE_URL": "https://github.com/login/oauth/authorize",
        "GITHUB_INTEGRATION_HUB_BASE_URL": "http://localhost:3000"
      }
    }
  }
}

You deploy and use a GitHub-focused MCP server that coordinates an OAuth flow, stores tokens in SQLite, and exposes a programmable interface for HTTP routes, an SDK, a CLI, and MCP tools for AI agents. It Lets you authorize GitHub, list repositories, and create issues through simple, repeatable interactions.

How to use

You interact with the server through an MCP client to perform common GitHub actions. Start by initiating authorization for a user, then let the system exchange codes and store access tokens. After a connection is established, you can list repositories and create issues using the available MCP tools, CLI commands, or the provided SDK.

How to install

Prerequisites you need before starting are Node.js (LTS version). Ensure you have a modern shell to run commands.

  1. Install dependencies
npm install
  1. Configure environment
cp .env.example .env

Then fill in the following values in the .env file, using your actual GitHub OAuth credentials and desired server settings:

PORT=3000 DATABASE_FILE=./github-integration-hub.db GITHUB_CLIENT_ID=your-client-id GITHUB_CLIENT_SECRET=your-client-secret GITHUB_OAUTH_AUTHORIZE_URL=https://github.com/login/oauth/authorize GITHUB_OAUTH_TOKEN_URL=https://github.com/login/oauth/access_token GITHUB_API_BASE_URL=https://api.github.com GITHUB_REDIRECT_URI=http://localhost:3000/auth/github/callback GITHUB_INTEGRATION_HUB_BASE_URL=http://localhost:3000

> Ensure the GitHub OAuth app redirect matches GITHUB_REDIRECT_URI.
  1. Run the backend in development mode with hot reload
npm run dev
  1. Start for production-style operation
npm run build
npm start

The server will log: GitHub Integration Hub listening on port <port>.


5) Run the MCP server (stdio) for AI agents

npm run build npm run start:mcp

## Additional notes about MCP usage

The MCP server exposes a set of tools you can call from an MCP-aware environment. Tools include github\_start\_auth to obtain an authorization URL for a given user, github\_list\_repos to enumerate repositories associated with the stored token, and github\_create\_issue to post an issue to a repository.

## Configuration and security

Environment variables you configure control how the server runs and connects to GitHub. Key variables include the port, database file, and OAuth credentials. Protect sensitive values and avoid committing .env files to public repositories.

## Troubleshooting and tips

- If the OAuth redirect does not complete, verify GITHUB\_REDIRECT\_URI in your OAuth app settings exactly matches the value in GITHUB\_REDIRECT\_URI.

- Check the database file path in DATABASE\_FILE for write permissions and sufficient disk space.

## Available tools

### github\_start\_auth

Returns an authorization URL for a given userId to begin the GitHub OAuth flow.

### github\_list\_repos

Retrieves the list of repositories accessible with the stored GitHub token for a user.

### github\_create\_issue

Creates a new issue in a specified repository using the stored token.
Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational