Skip to main content
Glama

GitHub Integrated MCP Server

by wj-yuta-imai

GitHub Integrated MCP Server

GitHub API連携機能を持つModel Context Protocol (MCP) サーバーです。DockerとGitHub Actionsによる自動化されたCI/CDパイプラインを提供します。

🚀 機能

ファイルシステム操作

  • ディレクトリ一覧表示
  • ファイル読み込み
  • ファイル情報取得
  • エコー機能

GitHub API連携

  • リポジトリ一覧・詳細取得
  • Issue管理(一覧・作成)
  • Pull Request管理
  • ファイル内容取得・更新
  • コード検索

インフラ機能

  • Docker コンテナ化
  • GitHub Actions CI/CD
  • Nginx リバースプロキシ
  • Redis キャッシュ対応
  • ヘルスチェック

📋 前提条件

  • Node.js 20+
  • Docker & Docker Compose
  • GitHub Personal Access Token

🛠️ セットアップ

1. 依存関係のインストール

npm install

2. 環境変数の設定

.envファイルを編集し、GitHub Personal Access Tokenを設定:

GITHUB_TOKEN=github_pat_11XXXXXXXXXXXXXXX GITHUB_OWNER=your_username GITHUB_DEFAULT_REPO=your_repo_name

3. TypeScriptのビルド

npm run build

🐳 Docker での実行

ローカル開発

# Dockerイメージをビルド npm run docker:build # コンテナを起動 npm run docker:run # ログを確認 npm run docker:logs # コンテナを停止 npm run docker:stop

🔧 Claude Desktop 設定

%APPDATA%\Claude\claude_desktop_config.json に以下を追加:

{ "mcpServers": { "github-mcp": { "command": "node", "args": ["E:\\Documents\\work\\mcp-projects\\mcp-server\\dist\\index.js"], "env": { "GITHUB_TOKEN": "your_github_token_here" } } } }

📚 利用可能なツール

ファイルシステム

  • echo - テキストをエコーバック
  • list_directory - ディレクトリの内容を一覧表示
  • read_file - ファイルの内容を読み取り
  • get_file_info - ファイル/ディレクトリの情報を取得

GitHub API

  • github_list_repos - リポジトリ一覧を取得
  • github_get_repo - 特定のリポジトリ情報を取得
  • github_list_issues - Issue一覧を取得
  • github_create_issue - 新しいIssueを作成
  • github_list_pull_requests - Pull Request一覧を取得
  • github_get_file_content - ファイル内容を取得
  • github_create_or_update_file - ファイルを作成/更新
  • github_search_code - コードを検索

🚀 開発

ローカル開発サーバー

npm run dev

コードビルド

npm run build

🔒 セキュリティ

  • GitHub Personal Access Token は適切なスコープで制限
  • Dockerfile は非rootユーザーで実行
  • 環境変数での機密情報管理

🔑 GitHub Personal Access Token の取得

  1. GitHub にログイン
  2. Settings → Developer settings → Personal access tokens → Tokens (classic)
  3. "Generate new token" をクリック
  4. 以下のスコープを選択:
    • repo (フルアクセス)
    • read:user
    • user:email
  5. トークンをコピーして .env ファイルに設定

🐛 トラブルシューティング

Docker ビルドエラー

# キャッシュをクリアして再ビルド docker system prune -a npm run docker:build

GitHub API エラー

  • Personal Access Token の有効期限を確認
  • 必要なスコープ権限があることを確認
  • API レート制限に引っかかっていないか確認

📝 ライセンス

ISC License

Related MCP Servers

  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.
    Last updated -
    12
    53,158
    Python
    MIT License
  • A
    security
    F
    license
    A
    quality
    A Model Context Protocol server that enables AI models to interact with GitHub's API, allowing for repository creation and management with descriptions, topics, and website URLs through natural language commands.
    Last updated -
    1
    JavaScript
  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server that enables AI assistants to perform GitHub operations including repository management, file operations, issue tracking, and pull request creation.
    Last updated -
    1
    TypeScript
  • A
    security
    F
    license
    A
    quality
    A Model Context Protocol server that enables integration with GitHub Actions, allowing users to fetch available actions, get detailed information about specific actions, trigger workflow dispatch events, and fetch repository releases.
    Last updated -
    4
    92
    1
    JavaScript
    • Apple

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wj-yuta-imai/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server