GitHub Mapper
Provides tools for mapping and analyzing GitHub repositories using a Personal Access Token for authentication.
GitHub Mapper MCP Server
GitHub Mapper is a Model Context Protocol (MCP) server that provides tools for mapping and analyzing GitHub repositories. It allows users to set a GitHub Personal Access Token and retrieve detailed information about a specified repository, including its structure and summary statistics.
Features
- Set GitHub Personal Access Token for authentication
- Map and analyze GitHub repository structure
- Retrieve repository summary information (stars, forks, language, etc.)
- Provide a detailed repository file structure
Prerequisites
- Node.js (v18.0.0 or later recommended)
- npm (comes with Node.js)
- A GitHub Personal Access Token with appropriate permissions
Installation
Installing via Smithery
To install GitHub Mapper for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install github-mapper-mcp-server --client claude
Manual Installation
-
Clone the repository:
git clone https://github.com/your-username/github-mapper-mcp-server.git cd github-mapper-mcp-server -
Install dependencies:
npm install -
Build the project:
npm run build
Usage
-
Start the server:
npm start -
The server will run on stdio, allowing it to communicate with MCP clients.
Available Tools
1. set-github-token
Sets the GitHub Personal Access Token for authentication.
- Create your Personal Access Token here. Choose Tokens (classic). Scopes: repo
Example, in your IDE or Claude Desktop:
Please set-github-token to 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
2. map-github-repo
Maps a GitHub repository structure and provides summary information.
Example:
Please map-github-repo https://github.com/dazeb/MCP-Github-Mapper
Manual install in Cline or Roo-Cline MCP Client:
{
"mcpServers": {
"github-mapper": {
"command": "node",
"args": ["/home/user/Documents/Cline/MCP/github-mapper/build/index.js"]
}
}
}
Example Output
Repository Analysis Summary:
Name: Hello-World
Description: My first repository on GitHub!
Stars: 1234
Forks: 567
Primary Language: JavaScript
Created: 2023-01-01
Last Updated: 2023-06-15
Repository Structure:
{
"src": {
"components": {
"Header.js": null,
"Footer.js": null
},
"pages": {
"index.js": null,
"about.js": null
},
"styles": {
"global.css": null
}
},
"public": {
"images": {
"logo.png": null
},
"favicon.ico": null
},
"package.json": null,
"README.md": null
}
Images
Running evals
The evals package loads an mcp client that then runs the index.ts file, so there is no need to rebuild between tests. You can load environment variables by prefixing the npx command. Full documentation can be found here.
OPENAI_API_KEY=your-key npx mcp-eval src/evals/evals.ts src/index.ts
Error Handling
- If the GitHub token is not set, you'll receive an error message prompting you to use the
set-github-tokentool first. - Invalid GitHub URLs or repository paths will result in appropriate error messages.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License.
Похожие серверы
GitKraken
A CLI for interacting with GitKraken APIs. Includes an MCP server via `gk mcp` that not only wraps GitKraken APIs, but also Jira, GitHub, GitLab, and more.
Git
Tools to read, search, and manipulate Git repositories
GitHub
Allows AI assistants to interact with the GitHub API for repository management, code collaboration, and other development tasks.
PyGithub MCP Server
Interact with the GitHub API using PyGithub to manage repositories, issues, and pull requests.
GitLab
Manage GitLab projects, repositories, issues, files, and milestones using the GitLab API.
Ares DevOps
Perform Git operations on Azure DevOps repositories using a Personal Access Token (PAT).
GitHub GraphQL API
Query and interact with the GitHub GraphQL API. Requires a personal access token.
Better GitLab MCP Server
An improved GitLab MCP server with bug fixes and enhancements for accessing GitLab resources.
Forgejo MCP Server
Manage Forgejo repositories and execute commands through an MCP-compatible chat interface.
GitHub
Interact with GitHub APIs for automation and repository management.
