Skip to main content
Glama
dazeb

GitHub Mapper MCP Server

by dazeb

GitHub Mapper MCP サーバー

鍛冶屋のバッジ

GitHub Mapperは、GitHubリポジトリのマッピングと分析のためのツールを提供するModel Context Protocol(MCP)サーバーです。ユーザーはGitHub Personal Access Tokenを設定することで、指定されたリポジトリの構造や概要統計などの詳細情報を取得できます。

特徴

  • 認証用のGitHub個人アクセストークンを設定する

  • GitHub リポジトリ構造をマップして分析する

  • リポジトリの概要情報(スター、フォーク、言語など)を取得します

  • 詳細なリポジトリファイル構造を提供する

Related MCP server: GitHub MCP Server

前提条件

  • Node.js (v18.0.0 以降を推奨)

  • npm (Node.js に付属)

  • 適切な権限を持つGitHub個人アクセストークン

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の GitHub Mapper を自動的にインストールするには:

npx -y @smithery/cli install github-mapper-mcp-server --client claude

手動インストール

  1. リポジトリをクローンします。

    git clone https://github.com/your-username/github-mapper-mcp-server.git
    cd github-mapper-mcp-server
  2. 依存関係をインストールします:

    npm install
  3. プロジェクトをビルドします。

    npm run build

使用法

  1. サーバーを起動します。

    npm start
  2. サーバーは stdio 上で実行され、MCP クライアントと通信できるようになります。

利用可能なツール

1. set-github-token

認証用の GitHub 個人アクセス トークンを設定します。

  • こちらで個人アクセストークンを作成してください。トークン(クラシック)を選択してください。スコープ:リポジトリ画像

たとえば、IDE または Claude Desktop の場合:

Please set-github-token to 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

2. map-github-repo

GitHub リポジトリ構造をマップし、概要情報を提供します。

例:

Please map-github-repo https://github.com/dazeb/MCP-Github-Mapper

Cline または Roo-Cline MCP クライアントでの手動インストール:

{
  "mcpServers": {
    "github-mapper": {
      "command": "node",
      "args": ["/home/user/Documents/Cline/MCP/github-mapper/build/index.js"]
    }
  }
}

出力例

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
}

画像

画像

評価の実行

evalsパッケージはmcpクライアントをロードし、index.tsファイルを実行するため、テスト間でリビルドする必要はありません。npxコマンドの先頭に環境変数をロードすることもできます。完全なドキュメントはこちらでご覧いただけます。

OPENAI_API_KEY=your-key  npx mcp-eval src/evals/evals.ts src/index.ts

エラー処理

  • GitHub トークンが設定されていない場合は、最初にset-github-tokenツールを使用するように求めるエラー メッセージが表示されます。

  • 無効な GitHub URL またはリポジトリ パスの場合は、適切なエラー メッセージが表示されます。

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています。

Available Tools

2 tools
map-github-repoC

Map a GitHub repository structure and provide summary information

ParametersJSON Schema
NameRequiredDescriptionDefault
repoUrlYesURL of the GitHub repository (e.g., https://github.com/username/repo)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While 'Map' implies a read operation, it doesn't specify what 'summary information' includes, whether authentication is needed, rate limits, error conditions, or how the mapping is performed (e.g., depth, file types included). The description is too vague about the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It's appropriately sized for a tool with one parameter and gets straight to the point without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a description that lacks behavioral details, this is incomplete for a tool that presumably analyzes repository structure. The description doesn't explain what 'summary information' means, how results are returned, or any constraints. For a tool that likely interacts with external APIs, this leaves significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the single parameter 'repoUrl' with its format. The description adds no additional parameter semantics beyond what the schema provides (no format examples, validation rules, or usage context). Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Map') and resource ('GitHub repository structure'), providing a specific verb+resource combination. However, it doesn't differentiate from the sibling tool 'set-github-token' (which appears to be for authentication configuration rather than repository analysis), so it doesn't fully distinguish from alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites (like authentication), comparison to other repository analysis tools, or limitations. The sibling tool 'set-github-token' suggests authentication might be required, but this isn't addressed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set-github-tokenC

Set the GitHub Personal Access Token for authentication

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesGitHub Personal Access Token

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the authentication purpose without detailing behavioral traits. It doesn't disclose if this is a one-time setup, if it persists across sessions, what permissions the token needs, or potential side effects like overwriting existing tokens.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an authentication tool with no annotations and no output schema, the description is insufficient. It doesn't explain the authentication mechanism, how the token is stored/used, error handling, or what happens after setting the token, leaving critical context gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the 'token' parameter fully. The description adds no additional meaning beyond what's in the schema, such as token format requirements or scopes needed, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Set') and the resource ('GitHub Personal Access Token for authentication'), making the purpose immediately understandable. However, it doesn't differentiate from the sibling tool 'map-github-repo' or explain how this token setting relates to other GitHub operations, keeping it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, prerequisites, or context. It doesn't mention if this is for initial setup, token updates, or how it interacts with the sibling 'map-github-repo' tool, leaving usage unclear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv1.0.0
    • First observedmap-github-repo
    • First observedset-github-token

TDQS

C2.9/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have completely distinct purposes: one maps repository structures, while the other handles authentication. There is no overlap or ambiguity between them, making it easy for an agent to select the correct tool based on the task.

Naming Consistency3/5

The tools use a mixed naming convention: 'map-github-repo' follows a verb-noun pattern with hyphens, while 'set-github-token' uses a verb-noun pattern but with a different structure. This inconsistency in style (hyphenated vs. standard verb_noun) reduces predictability, though both are readable.

Tool Count2/5

With only 2 tools, the server feels thin for a GitHub-related domain, which typically involves operations like creating, updating, or deleting repositories, issues, or pull requests. The limited scope may hinder comprehensive agent workflows, as core functionalities are missing.

Completeness2/5

The server covers authentication and repository mapping but lacks essential GitHub operations such as CRUD for repositories, issues, or pull requests. This creates significant gaps that will likely cause agent failures when attempting common tasks like creating an issue or fetching repository details beyond structure.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to analyze GitHub repository structures and read file contents with features like directory traversal, file type analysis, syntax highlighting, and code pattern detection. Supports both public and private repositories through GitHub API integration.
    8 npm
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables access to GitHub repositories and data through the GitHub API. Supports retrieving repositories, issues, pull requests, and searching code across GitHub with authentication via personal access tokens.
    -