Skip to main content
Glama
Sunwood-ai-labs

GitHub Kanban MCP Server

🎯 GitHub Kanban MCP Server

License: MIT TypeScript Node.js npm

📋 개요

GitHub Kanban MCP Server는 GitHub issue를 칸방보드 형식으로 관리하고 LLM 작업 관리를 간소화하기 위한 Model Context Protocol(MCP) 서버입니다.

Related MCP server: GitHub MCP Server

🚀 특징

  • 🔄 GitHub의 issue를 칸방 형식으로 관리

  • 🤖 LLM을 통한 자동 작업 관리

  • 📊 프로젝트의 진행 시각화

  • 🔗 GitHub와의 완벽한 통합

  • 💬 작업에 대한 주석 기능

📁 프로젝트 구조

kanban-server/
├── src/                    # ソースコードディレクトリ
│   ├── handlers/          # リクエストハンドラー
│   │   ├── comment-handlers.ts  # コメント関連の処理
│   │   ├── issue-handlers.ts    # Issue関連の処理
│   │   ├── label-handlers.ts    # ラベル関連の処理
│   │   └── tool-handlers.ts     # ツールリクエストの処理
│   ├── schemas/           # 入力スキーマ定義
│   │   ├── comment-schemas.ts   # コメント関連のスキーマ
│   │   └── issue-schemas.ts     # Issue関連のスキーマ
│   ├── utils/             # ユーティリティ関数
│   │   ├── error-handler.ts     # エラー処理
│   │   └── exec.ts             # コマンド実行関連
│   ├── server.ts          # MCPサーバーの実装
│   └── types.ts           # 型定義
├── docs/                  # ドキュメント
│   └── v0.2.0/           # バージョン別ドキュメント
└── assets/               # アセットファイル

🛠️ 설치

전제 조건

  • Node.js 18.x 이상

  • npm 9.x 이상

  • GitHub CLI (gh)

# パッケージのインストール
npm install @sunwood-ai-labs/github-kanban-mcp-server

# GitHub CLIの認証設定
gh auth login

⚙️ 설정

MCP 구성 파일에 다음을 추가합니다.

{
  "mcpServers": {
    "github-kanban": {
      "command": "github-kanban-mcp-server"
    }
  }
}

🔧 사용 가능한 도구

1. list_issues

칸방 보드의 issue 목록을 가져옵니다.

입력 파라미터:

  • repo : GitHub 리포지토리 이름(필수)

  • state : issue 상태('open', 'closed', 'all')

  • labels : 필터링할 레이블 배열

2. create_issue

새로운 issue를 만듭니다.

입력 파라미터:

  • repo : GitHub 리포지토리 이름(필수)

  • title : issue의 제목 (필수)

  • emoji : 타이틀의 선두에 부여하는 이모티콘

  • body : issue 본문

  • labels : 라벨 배열

  • assignees : 할당 할 사용자의 배열

3. update_issue

기존 issue를 업데이트합니다.

입력 파라미터:

  • repo : GitHub 리포지토리 이름(필수)

  • issue_number : issue 번호(필수)

  • title : 새로운 제목

  • emoji : 타이틀의 선두에 부여하는 이모티콘

  • body : 새로운 본문

  • state : 새로운 상태('open', 'closed')

  • labels : 새로운 라벨의 배열

  • assignees : 새로운 할당의 배열

4. add_comment

작업에 주석을 추가합니다.

입력 파라미터:

  • repo : GitHub 리포지토리 이름(필수)

  • issue_number : 작업 (Issue)의 ID (필수)

  • body : 코멘트의 내용(Markdown 형식 대응)(필수)

  • state : 코멘트시에 변경하는 issue 상태('open', 'closed')

📝 라이센스

MIT License - LICENSE 파일을 참조하십시오.

🤝 기여

  1. 이 저장소를 포크

  2. 기능 브랜치 만들기 ( git checkout -b feature/amazing-feature )

  3. 변경 커밋 ( git commit -m '✨ feat: 素晴らしい機能を追加' )

  4. 브랜치에 푸시 ( git push origin feature/amazing-feature )

  5. 끌어오기 요청 만들기

📮 피드백

문제나 제안이 있다면 Issue를 만드 십시오.

Available Tools

4 tools
add_commentB

タスクにコメントを追加

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYesコメントの内容(Markdown形式対応)
repoYesGitHubリポジトリ名
stateNoコメント時に変更するissueの状態(オプション)
issue_numberYesタスク(Issue)のID

TDQS

B3/5.0
Behavior2/5

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

No annotations exist, and the description is too brief. It does not mention that the state parameter can modify the issue state, nor any side effects like notifications. The description fails to compensate for the absence of annotations.

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

Conciseness3/5

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

The description is a single short sentence, which is concise but lacks structure and additional detail. It does not fully earn its place as the sole explanation.

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?

With 4 parameters, no output schema, and no annotations, the description is insufficient. It omits important context such as the return value, the effect of the optional state parameter, and that it operates on GitHub issues.

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 input schema already documents all parameters. The description adds no additional semantic context beyond what the schema provides.

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

Purpose5/5

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

The description clearly states the action (add a comment) and resource (task/issue), distinguishing it from sibling tools like create_issue which creates new issues.

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 like update_issue. It lacks context for appropriate usage scenarios.

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

create_issueC

新しいissueを作成します

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoissueの本文(## の先頭には絵文字を付与して可読性を上げて)
pathNoGitリポジトリの絶対パス
emojiNoタイトルの先頭に付与するユニークな絵文字
titleYesissueのタイトル
labelsNoissueのラベル
assigneesNoアサインするユーザー

TDQS

C2.9/5.0
Behavior1/5

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

No annotations provided and description gives no behavioral details (e.g., permissions, side effects, return value).

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

Conciseness4/5

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

Single sentence is concise and direct. Could include more context but no unnecessary words.

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?

No output schema and description omits return type, success/error behavior, or any important constraints beyond the schema.

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 coverage is 100%, so parameter descriptions exist. The tool description adds no extra meaning beyond what the schema already provides.

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

Purpose5/5

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

The description '新しいissueを作成します' clearly states it creates a new issue. This distinguishes it from siblings (add_comment, list_issues, update_issue).

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?

No guidance on when to use this tool vs alternatives. Does not mention any prerequisites or context.

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

list_issuesC

カンバンボードのissue一覧を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoGitリポジトリの絶対パス
stateNoissueの状態
labelsNoフィルタリングするラベル

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states it retrieves a list, but does not disclose behavioral traits such as whether it is read-only (implied but not explicit), pagination, ordering, or any side effects. The description is insufficient for an agent to understand side effects or constraints.

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

Conciseness4/5

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

The description is a single sentence that is to the point and front-loaded with the action. It is concise and contains no filler. However, it could benefit from additional context while remaining efficient.

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 the tool has 3 parameters, no output schema, and no annotations, the description is too minimal. It does not explain the output format or behavior (e.g., whether it returns all issues or paginated). The mention of Kanban board adds some context, but overall it lacks completeness for effective use.

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 three parameters clearly. The tool description adds no additional meaning beyond the schema, meeting the baseline. It does not compensate for any gaps, but none exist.

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 verb '取得する' (get) and resource 'issue一覧' (list of issues) in the context of 'カンバンボード' (Kanban board). It distinguishes from sibling tools (add_comment, create_issue, update_issue) which are mutating. However, it does not explicitly state that it is read-only or mention filtering capabilities beyond the schema.

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. It does not specify prerequisites, scenarios, or explicitly exclude other tools. Siblings are mentioned in context signals but not referenced in the description.

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

update_issueC

既存のissueを更新します

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo新しい本文
pathNoGitリポジトリの絶対パス
emojiNoタイトルの先頭に付与する絵文字
stateNo新しい状態
titleNo新しいタイトル
labelsNo新しいラベル
assigneesNo新しいアサイン
issue_numberYesissue番号

TDQS

C2.1/5.0
Behavior2/5

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

No annotations provided, and the description offers no behavioral details such as whether fields are overwritten or merged, idempotency, or required permissions.

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

Conciseness2/5

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

Single sentence but under-specified for a tool with 8 parameters; lacks necessary detail.

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

Completeness1/5

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

Given the complexity (8 parameters, no output schema, no annotations), the description is completely inadequate, failing to explain update semantics or return behavior.

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 coverage is 100% with descriptions for all 8 parameters, so the description adds no further value; baseline 3 applies.

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

Purpose2/5

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

Description is a tautology: '既存のissueを更新します' simply restates the tool name without specifying what aspects can be updated or any unique behavior.

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?

No guidance on when to use this tool versus siblings (add_comment, create_issue, list_issues). No mention of prerequisites or context.

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. 4 tool updatesv1.0.0
    • First observedadd_comment
    • First observedcreate_issue
    • First observedlist_issues
    • First observedupdate_issue

TDQS

B3.2/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a distinct operation: listing, creating, updating, or commenting on issues. No two tools overlap in purpose, so an agent can clearly distinguish them.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern (list_issues, create_issue, update_issue, add_comment). The verbs are clear and predictable.

Tool Count5/5

With 4 tools, the server is tightly scoped to core Kanban board operations. Every tool serves a necessary function without redundancy or bloat.

Completeness4/5

The basic lifecycle of issues is covered (list, create, update, comment). Missing operations like deleting or archiving issues are a minor gap since GitHub issues are typically closed rather than deleted, but board-specific transitions are not explicitly exposed.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers