GitHub项目管理协议服务器

为GitHub Projects V2提供模型上下文协议(MCP)服务器,使AI助手能够通过标准化接口管理GitHub项目、项目项、字段和视图。

  • by Lexmata
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Lexmata/github-projects-mcp

使用说明

GitHub项目MCP服务器

GitHub Projects V2的模型上下文协议(MCP)服务器。使AI助手能够通过标准化的界面管理GitHub项目、项目、字段和视图。

特性

  • 完整的GitHub项目V2支持:完成项目、项、字段和视图的CRUD操作
  • 双重认证:支持个人访问令牌(PAT)和GitHub应用程序身份验证
  • 用户和组织项目:管理个人用户和组织的项目
  • 17专用工具:适用于所有项目管理操作的全面工具集
  • 类型安全:使用TypeScript构建,实现完全类型安全
  • 测试良好:100%单元测试覆盖率

快速开始

安装

npm install @lexmata/github-projects-mcp

配置

将您的GitHub令牌设置为环境变量:

export GITHUB_TOKEN=ghp_your_personal_access_token

或者配置GitHub应用程序身份验证:

export GITHUB_APP_ID=123456
export GITHUB_APP_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----..."
export GITHUB_APP_INSTALLATION_ID=12345678

使用Claude Desktop

添加到您的Claude Desktop配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):

{
  "mcpServers": {
    "github-projects": {
      "command": "npx",
      "args": ["@lexmata/github-projects-mcp"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_token_here"
      }
    }
  }
}

直接运行

npx @lexmata/github-projects-mcp

可用工具

项目管理

工具 说明
list_projects 列出用户或组织的项目
get_project 获取详细的项目信息
create_project 创建新项目
update_project 更新项目设置
delete_project 删除项目

项目管理

工具 说明
list_project_items 列出项目中的所有项目
get_project_item 获取商品详细信息
add_draft_issue 将草稿问题添加到项目中
add_existing_issue 将现有问题/PR添加到项目中
update_item_field 更新项目的字段值
remove_project_item 从项目中删除项目

现场管理

工具 说明
list_project_fields 列出项目中的所有字段
create_field 创建自定义字段
update_field 更新字段设置
delete_field 删除自定义字段

视图管理

工具 说明
list_project_views 列出项目中的所有视图
get_project_view 获取查看详细信息

文档

所需的GitHub权限

个人访问令牌(经典)

  • repo -完全控制私有存储库
  • project -完全控制项目

用于细粒度个人访问令牌

  • 存储库权限:
    • Issues:读写
    • Pull requests:读写
  • 组织权限:
    • Projects:读写

对于GitHub应用程序

  • 存储库权限:
    • Issues:读写
    • Pull requests:读写
  • 组织权限:
    • Projects:读写

发展

先决条件

  • Node.js 18+
  • pnpm 9+

设置

# Clone the repository
git clone https://github.com/Lexmata/github-projects-mcp.git
cd github-projects-mcp

# Install dependencies
pnpm install

# Run tests
pnpm test

# Run tests with coverage
pnpm test:coverage

# Build
pnpm build

# Run in development mode
pnpm dev

项目结构

src/
├── index.ts          # Entry point
├── server.ts         # MCP server setup
├── config.ts         # Configuration handling
├── auth/             # Authentication providers
├── graphql/          # GraphQL client and queries
├── tools/            # Tool implementations
└── types/            # TypeScript types

贡献

欢迎投稿!请阅读我们的 贡献指南 有关我们的行为准则和提交pull请求流程的详细信息。

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

相关