Skip to main content
Glama
kmosoti

github-projects

by kmosoti

github-projects

Claude Code と Codex 向けプラグイン: Pydantic v2 モデル、PEP 544 プロトコル、および GitHub Projects v2 ボード(例: github.com/users/<owner>/projects/<n>)を管理するための MCP サーバー — ドラフト版 HTTP QUERY メソッドをファーストクラスでサポート。

アーキテクチャ

server.py      MCP server (mcp SDK v2, stdio) — 19 tools, structured output
   │  depends on
protocols.py   ProjectsBackend / GraphQLTransport (runtime-checkable Protocols)
   │  implemented by
service.py     GitHubProjectsService — GraphQL over the transport,
               project-id + field caching, string→typed field-value coercion
graphql.py     GraphQL documents (works for both user and org owners)
http.py        QueryClient — HTTP QUERY (draft-ietf-httpbis-safe-method-w-body)
               with per-origin capability memory and POST fallback
models.py      Frozen Pydantic v2 models, __typename-discriminated unions
  • MCP レイヤーは ProjectsBackend プロトコルにのみ依存するため、バックエンドは交換可能で、テストは構造的にフェイクで代用されます。

  • QueryClientQUERY を楽観的に送信し、Accept-Query アドバタイズメントを記録し、トランスポートエラー時に 1 回再試行し(QUERY は安全かつ冪等)、405/501 ではオリジンごとに恒久的に POST へフォールバックします。つまり、現在の GitHub に対してはそのまま動作し、GitHub が QUERY サポートをリリースすると自動的にアップグレードされます。

セットアップ

プライマリランタイムは CPython 3.14.7 free-threaded(3.14.7t)です。また、gh CLI が project スコープ付きで認証されている必要があります:

gh auth refresh -s project      # grants read + write for Projects v2

トークンは GITHUB_TOKEN / GH_TOKEN から解決され、それ以外の場合は gh auth token が使用されます。

uv sync
uv run pytest             # 32 tests
uv run gh-projects-mcp    # run the server on stdio

Claude Code と Codex から使用する

リポジトリのルートから:

# Claude Code (registered user-wide)
claude mcp add --scope user github-projects -- uv --directory "$PWD" run gh-projects-mcp

# Codex
codex mcp add github-projects -- uv --directory "$PWD" run gh-projects-mcp

プラグインマニフェストは .claude-plugin/plugin.json(MCP サーバーは ${CLAUDE_PLUGIN_ROOT} 経由で宣言)と .codex-plugin/plugin.json にあります。両ホスト向けの使用スキルは skills/github-projects/SKILL.md にあります。

ツール

ツール

目的

list_projects

ユーザー/組織のボード一覧(オプションで検索)

get_project

オーナー + 番号によるボード

list_fields

単一選択オプションとイテレーションを含むフィールド

list_items

コンテンツとフィールド値を持つ項目。保存済みビューのフィルタークエリによる評価も可能

create_project / update_project

ボードの作成、タイトル/README/可視性/クローズ状態の編集

add_item

URL による issue/PR の追加

add_draft_issue

ドラフト issue の追加

update_field_value

フィールドの設定。値は文字列で、フィールドタイプに応じて変換 — 単一選択とイテレーションは名前でマッチ(Status"Done"

clear_field_value

フィールドのクリア

archive_item / delete_item

項目のアーカイブまたは削除

plan_project / apply_project

冪等な望ましい状態の調整: フィールドとオプションのエイリアス、意味的に検証されたリーフ/コンテナビュー、順序付けされたカラム、明示的なリタイア、項目メタデータ、エピック/サブ issue 階層、ネイティブ issue 依存関係、レガシー依存関係プローズのクリーンアップ

sprint_board

1 つのイテレーションのステータスカラムビュー(または全項目 + 未計画バケット)

epic_breakdown

ネイティブのサブ issue 階層からのエピックごとの完了ロールアップ

list_views

名前、レイアウト、フィルター、順序付けされた表示フィールドを持つ保存済みビュー

post_status_update / list_status_updates

プロジェクトの長期的なコンテキストトレイル

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

  • Persistent context for Claude. Your AI always knows your projects and next actions across sessions.

  • Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…

View all MCP Connectors

Latest Blog Posts

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/kmosoti/github-projects'

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