ProjectHub

A dedicated MCP server that manages projects, local Git activity, and GitHub integration.
  • typescript

3

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": {
    "peterparker57-project-hub-mcp-server": {
      "command": "node",
      "args": [
        "path/to/project-hub-mcp-server/dist/index.js"
      ],
      "env": {
        "GIT_PATH": "C:\\\\Program Files\\\\Git\\\\bin\\\\git.exe",
        "NODE_ENV": "development",
        "GITHUB_TOKEN": "your-github-token",
        "DEFAULT_OWNER": "your-github-username",
        "DEFAULT_PRIVATE": "true"
      }
    }
  }
}

You can manage projects, track changes, work with local Git-like functionality, and integrate with GitHub all from a single MCP server. It provides structured project data, local commits and branches, file snapshots, notes, and seamless GitHub operations, helping you keep everything in one place with clear history and easy collaboration.

How to use

Install and run the MCP server, then connect your MCP client to manage projects, changes, and GitHub operations from one place.

How to install

Prerequisites you need before installing: Node.js installed on your system and npm for package management.

Step by step install and build flow you should follow:

Clone the repository to your local machine.

cd project-hub-mcp-server

Install dependencies.

npm install

Build the project.

npm run build

When you are ready to run the MCP server locally, start the runtime as shown in the configuration snippet below and ensure your environment variables are set as described.

Configuration and startup details

{
  "mcpServers": {
    "projecthub": {
      "type": "stdio",
      "command": "node",
      "args": ["path/to/project-hub-mcp-server/dist/index.js"],
      "env": {
        "NODE_ENV": "development",
        "DEFAULT_PRIVATE": "true",
        "DEFAULT_OWNER": "your-github-username",
        "GITHUB_TOKEN": "your-github-token",
        "GIT_PATH": "C:\\Program Files\\Git\\bin\\git.exe"
      },
      "alwaysAllow": [
        "list_projects",
        "find_project",
        "get_pending_changes",
        "get_local_commit_history",
        "list_local_branches"
      ]
    }
  }
}

Additional notes and usage patterns

You can use the server to manage projects with flexible search, scan project files with exclusion patterns, track changes, and work with local Git-like functionality. You can create and manage notes with rich markdown content, and you can perform GitHub operations such as creating repositories, cloning, managing branches, pull requests, and more, all from the same MCP server.

Notes on environment and helpers

Environment variables you may configure include NODE_ENV, DEFAULT_PRIVATE, DEFAULT_OWNER, GITHUB_TOKEN, and GIT_PATH. These influence server behavior, default repository privacy, and Git operations.

Troubleshooting tips

If you cannot connect to the MCP server, verify that the server is running and listening on the configured path, and confirm that the environment variables are provided correctly in your MCP client configuration.

Examples of common tasks

Create a new project, scan for files, and initialize a local repository to begin tracking changes locally without GitHub until you push.

Available tools

create_project

Create a new project with local and remote repository management.

find_project

Find a project by name with flexible matching and return detailed project data.

list_projects

List projects with optional filters like type, repo presence, and pagination.

update_project_details

Update metadata for an existing project, including name, path, type, and description.

delete_project

Remove a project from the system.

scan_project_files

Scan a project directory to catalog source files with optional exclusion patterns.

projectdb_location

Get the full path to the project database location.

record_change

Record a change tied to a project with optional file associations and type categorization.

get_pending_changes

Retrieve pending changes for a specific project.

clear_committed_changes

Clear committed changes after they have been recorded or pushed.

init_local_repository

Initialize a local repository for a project to enable local commits.

create_local_commit

Create a local commit from pending changes with optional author information.

get_local_commit_history

Retrieve the local commit history for a project.

create_local_branch

Create a new local branch with an optional starting commit.

switch_local_branch

Switch the working context to a different local branch.

list_local_branches

List all local branches for a project.

restore_to_local_commit

Restore project files to a specific local commit state.

restore_to_local_branch

Restore project files to a specific local branch state.

restore_local_commit_to_new_location

Restore a specific local commit to a new folder location.

restore_local_branch_to_new_location

Restore a specific local branch to a new folder location.

push_local_commits

Push local commits to a GitHub repository.

force_local_commit

Force a local commit of all project files, bypassing pending changes.

cleanup_project_files

Remove records of non-existent files from the project data.

get_file_snapshots

Retrieve file snapshots for a given commit.

get_file_snapshots_metadata

Retrieve metadata for file snapshots without file content.

get_file_content

Fetch the content for a specific file snapshot.

create_note

Create a new markdown note for a project with optional category and tags.

update_note

Update an existing note's title, content, category, or tags.

delete_note

Delete a note associated with a project.

search_notes

Search notes within a project by query and optional category.

create_repository

Create a new GitHub repository with optional description and privacy.

get_repository

Get detailed information about a specific GitHub repository.

update_repository

Update repository settings such as description, privacy, and default branch.

delete_repository

Delete a GitHub repository.

rename_repository

Rename an existing GitHub repository.

list_repositories

List repositories for the authenticated user.

fork_repository

Create a fork of an existing repository.

transfer_repository

Transfer repository ownership to a new owner.

clone_repository

Clone a repository to a target folder.

get_file

Get a file from a GitHub repository by path and reference.

create_commit

Create a commit in a GitHub repository with specified changes.

list_commits

List commits in a GitHub repository.

get_commit

Get details about a specific commit in a repository.

revert_commit

Revert a commit in a GitHub repository.

create_branch

Create a new branch in a GitHub repository.

delete_branch

Delete a branch from a repository.

list_branches

List all branches in a repository.

get_branch

Get details about a specific branch in a repository.

merge_branches

Merge two branches in a repository with an optional merge message.

create_pull_request

Create a new pull request with title, head, base, and optional body and settings.

list_tools

List all available MCP tools and endpoints.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
ProjectHub MCP Server - peterparker57/project-hub-mcp-server | VeilStrat