Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP listen port; Render sets PORT automatically.10000
GITHUB_TOKENYesGitHub token; required for private repos and API write operations.
GITHUB_MCP_MODENo`read-only` blocks local file edits, branch creation, commits and pushes.edit
GITHUB_MCP_PORTNoHTTP listen port alternative to PORT.10000
GITHUB_MCP_MAX_FILESNoMaximum file count in a project scan.500
GITHUB_MCP_TRANSPORTNoTransport mode: `stdio` for local MCP or `http` for remote Streamable HTTP.stdio
GITHUB_MCP_WORKSPACENoLocal clone directory.~/.github-master-mcp/workspaces
GITHUB_MCP_ALLOW_PUSHNoMust be `true` for push tools.false
GITHUB_MCP_ACCESS_TOKENNoRequired in HTTP mode; private Bearer token, minimum 32 characters.
GITHUB_MCP_ALLOW_COMMANDSNoEnables allow-listed project scripts.false
GITHUB_MCP_ALLOWED_SCRIPTSNoAllowed package.json script names.test,build,lint,typecheck,check
GITHUB_MCP_CONFIRMATION_PHRASENoPrivate phrase required for destructive/remote actions.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
github_whoamiA

Verify the configured GitHub token and show the authenticated GitHub account.

list_repositoriesB

List repositories accessible to the authenticated GitHub user, sorted by most recently updated.

fork_repositoryC

Create a fork of the active repository under the authenticated user or a specified organization.

get_repository_detailsB

Get the current active repository metadata and permissions from GitHub.

create_repositoryB

Create a new GitHub repository for the authenticated user, or under an organization when organization is provided.

open_repositoryA

Open a GitHub repository from its URL. Clones it to the local workspace and makes it the active project for subsequent project tools. Accepts repository URLs and /tree/branch URLs.

analyze_projectA

Analyze the currently open repository: project type, manifests, README, file tree, likely scripts, and Git status. Open a repository first.

list_project_filesB

List tracked and untracked text-project files in the open repository. Dependency/build folders and secret-like files are excluded.

read_project_fileA

Read a UTF-8 text file in the open repository. Paths are repository-relative; secrets and paths outside the repository are blocked.

write_project_fileA

Create or replace a UTF-8 file in the open repository. This changes only the local checkout; it does not push to GitHub.

delete_project_fileA

Delete a repository file locally. Requires the owner confirmation phrase. Cannot delete Git metadata or secret files.

search_project_codeC

Search repository text files for a literal or regular-expression pattern. Does not search secrets, dependencies, or generated folders.

git_statusA

Show Git branch and working-tree status for the active repository.

git_diffA

Show the local diff. Use staged=false for unstaged changes and staged=true for staged changes.

create_branchB

Create and switch to a new local branch in the open repository.

list_branchesC

List branches in the active GitHub repository.

list_commitsC

List recent commits in the active GitHub repository, optionally filtered by branch or path.

run_project_scriptB

Run an allow-listed npm/pnpm/yarn/bun script from package.json. Disabled by default because repository scripts execute code.

commit_changesB

Stage safe local changes and create a local Git commit. Requires the owner confirmation phrase. Secret-like files are never staged.

push_branchB

Push the current local branch to origin. Requires GITHUB_MCP_ALLOW_PUSH=true and the owner confirmation phrase.

commit_and_pushB

Stage safe changes, create a commit, then push the current branch. Requires GITHUB_MCP_ALLOW_PUSH=true and the owner confirmation phrase.

create_pull_requestB

Create a pull request for the current or supplied head branch. The branch must already exist on GitHub.

list_issuesB

List issues for the open repository. Pull requests are excluded from the returned issue list.

create_issueC

Create an issue in the open GitHub repository.

list_pull_requestsC

List pull requests in the open repository.

merge_pull_requestB

Merge a pull request in the open repository. Requires owner confirmation phrase to prevent accidental merges.

create_releaseC

Create a GitHub release in the active repository. The tag can be created from targetCommitish when needed.

list_workflowsB

List GitHub Actions workflows configured in the open repository.

list_workflow_runsC

List recent GitHub Actions workflow runs in the active repository.

rerun_workflowB

Re-run a GitHub Actions workflow run by run ID. Requires owner confirmation phrase.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 30 tools

Disambiguation4/5

Most tools map to a clear resource+action (repos, branches, commits, PRs, issues, releases, Actions, local files), and the local-vs-GitHub distinction is spelled out in descriptions. Two overlaps remain: commit_changes vs commit_and_push vs push_branch (the combined tool is a strict superset of the other two), and analyze_project reporting Git status overlaps with git_status.

Naming Consistency4/5

The dominant pattern is snake_case verb_noun (list_repositories, create_branch, merge_pull_request, read_project_file), applied consistently across nearly all tools. Deviations are minor: github_whoami uses a namespace prefix plus a non-verb, and git_status/git_diff are bare git-style names rather than verb_noun.

Tool Count3/5

30 tools is above the comfortable range, though the server genuinely spans several sub-domains (GitHub API, Actions, local git, local file/script operations). The count is inflated by redundancy: commit_and_push duplicates commit_changes + push_branch, and analyze_project partially duplicates git_status plus file-listing tools.

Completeness4/5

Core lifecycle is well covered: open/fork/create repo, branch, edit files, diff, commit, push, open PR, merge PR, create issue, create release, inspect and rerun workflows. Gaps are in the issue/PR secondary surface — no update/close issue, no comment on issues or PRs, no get-single-PR details, no branch deletion.

Maintenance

ActivityMaintained
ResponsivenessNo issues