github-projects
github-projects
Claude Code 및 Codex용 플러그인: Pydantic v2 모델, PEP 544 프로토콜, 그리고 GitHub Projects v2 보드를 관리하는 MCP 서버(예: github.com/users/<owner>/projects/<n>) — 초안 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 unionsMCP 계층은 오직
ProjectsBackend프로토콜에만 의존하므로 백엔드를 교체할 수 있고, 테스트에서는 구조적으로 페이크(fake)를 대체물로 사용합니다.QueryClient는QUERY를 낙관적으로 전송하고,Accept-Query광고를 기록하며, 전송 오류 시 한 번 재시도하고(QUERY는 안전하고 멱등적임), 405/501 응답 시 오리진(origin)별로 영구히POST로 폴백합니다. 따라서 현재 GitHub에서도 동작하며, GitHub가 QUERY를 지원하게 되면 스스로 업그레이드됩니다.
설정
기본 런타임은 free-threaded CPython 3.14.7 (3.14.7t)입니다. 또한 gh CLI가 project 범위(scope)로 인증되어 있어야 합니다.
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 stdioClaude 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에 있습니다.
도구
도구 | 용도 |
| 사용자/조직의 보드를 나열합니다(선택적 검색). |
| 소유자 + 번호로 보드를 가져옵니다. |
| 단일 선택 옵션 및 이터레이션을 포함한 필드를 나열합니다. |
| 콘텐츠와 필드 값을 포함한 항목을 나열합니다. 선택적으로 저장된 보기 필터 쿼리로 평가할 수 있습니다. |
| 보드를 생성하고, 제목/readme/공개 범위/닫힘 상태를 편집합니다. |
| URL로 이슈/PR을 추가합니다. |
| 초안 이슈를 추가합니다. |
| 필드를 설정합니다. 값은 필드 유형에 따라 강제 변환되는 문자열이며, 단일 선택 및 이터레이션은 이름으로 일치합니다( |
| 필드 값을 지웁니다. |
| 항목을 보관하거나 삭제합니다. |
| 원하는 상태를 멱등적으로 동기화합니다: 필드 및 옵션 별칭, 의미론적으로 검증된 리프/컨테이너 뷰, 순서가 지정된 열, 명시적 폐기, 항목 메타데이터, 에픽/하위 이슈 계층 구조, 네이티브 이슈 종속성, 레거시 의존성 문구 정리. |
| 한 이터레이션(또는 모든 항목 + 미계획 버킷)의 상태 열 뷰입니다. |
| 네이티브 하위 이슈 계층에서 에픽별 완료 현황을 집계합니다. |
| 저장된 보기의 이름, 레이아웃, 필터, 순서가 지정된 표시 필드를 나열합니다. |
| 프로젝트의 장기적인 컨텍스트 이력입니다. |
This server cannot be installed
Maintenance
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…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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