开发模型上下文协议服务器

一个全面的模型上下文协议(MCP)服务器,提供与GitHub、Netlify、Supabase、Azure、Google Tasks、Google Sheets、Perplexity和Gemini的无缝集成,使AI代理能够在Cursor中构建、维护和部署软件。

  • by abedmreyan
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 abedmreyan/DEV-MCP-Server

使用说明

开发MCP服务器

一个全面的模型上下文协议(MCP)服务器,提供与GitHub、Netlify、Supabase、Azure、Google Tasks、Google Sheets、Perplexity和Gemini的无缝集成。此服务器使Cursor中的AI代理能够跨这些平台构建、维护和部署软件。

🚀 新 使用Google Tasks/Sheets进行项目管理的半自主开发团队设置!

特性

GitHub集成

  • 列出并管理存储库
  • 创建新存储库
  • 管理问题并提取请求
  • 查看存储库详细信息

Netlify集成

  • 列出并管理网站
  • 创建新网站
  • 查看部署历史记录
  • 部署应用程序

Supabase集成

  • 执行SQL查询
  • 列出并创建数据库表
  • 管理存储桶
  • 将文件上传到存储

Azure集成

  • 资源管理:列出并创建资源组,管理资源
  • 网页应用:列出并部署到Azure Web应用程序
  • 虚拟机:列出、启动、停止、重启虚拟机(非常适合开发环境!)
  • 数据库:PostgreSQL、MySQL、SQL Server、Cosmos DB-查询和管理
  • 容器:容器实例(无服务器)和AKS(Kubernetes)
  • 存储:Blob存储管理和文件操作

Google任务集成

  • 列出任务列表和任务
  • 创建、更新和删除任务
  • 跟踪任务状态和进度
  • 非常适合项目管理工作流程

Google表格集成

  • 读取和写入电子表格数据
  • 添加行以跟踪进度
  • 更新单元格以更改状态
  • 项目仪表板操作

困惑整合

  • 基于人工智能的研究及其引用
  • 综合专题研究
  • 非常适合特征研究和规划

Gemini集成

  • 使用AI生成代码
  • 审查并解释代码
  • 文档文本生成
  • AI结对编程

先决条件

  • Node.js 18+和npm
  • TypeScript
  • 要使用的每个服务的API令牌/凭据

安装

  1. 克隆或导航到此目录:
cd "MCP Servers/Dev MCP"
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

配置

  1. 复制示例环境文件:
cp .env.example .env
  1. 编辑 .env 并添加您的API令牌和凭据:

GitHub代币

  1. 转到GitHub设置→ 开发人员设置→ 个人访问令牌→ 代币(经典)
  2. 生成具有以下作用域的新令牌:
    • repo (完全控制私有存储库)
    • workflow (如果你需要GitHub Actions访问权限)
  3. 将令牌添加到 .env 作为 GITHUB_TOKEN

Netlify代币

  1. 前往Netlify→ 用户设置→ 应用程序→ 个人访问令牌
  2. 生成新令牌
  3. 将令牌添加到 .env 作为 NETLIFY_TOKEN

Supabase凭据

  1. 转到您的Supabase项目仪表板
  2. 导航到“设置”→ API
  3. 复制项目URL和匿名/公钥
  4. 将它们添加到 .env 作为 SUPABASE_URL 和 SUPABASE_ANON_KEY

Azure凭据

  1. 从Azure门户获取您的Azure订阅ID
  2. 添加到 .env 作为 AZURE_SUBSCRIPTION_ID
  3. 使用以下方法之一设置身份验证:
    • 环境变量:设置 AZURE_CLIENT_ID, AZURE_CLIENT_SECRET,以及 AZURE_TENANT_ID
    • Azure命令行界面:运行 az login 鉴定
    • 管理身份:如果在Azure基础架构上运行
    • Visual Studio Code:安装Azure扩展并登录

用法

运行服务器

发展:

npm run dev

生产:

npm start

在游标中配置

简单方法: 只需在Cursor中打开此文件夹!

  1. 文件 → 打开文件夹
  2. 导航到: /Users/abedmreyan/Desktop/MCP Servers/Dev MCP
  3. 光标将自动检测 .cursor 文件夹
  4. 重新启动MCP服务器: Cmd+Shift+P → MCP: Restart Servers

就是这样!这 .cursor/mcp.json 文件已配置。

看 QUICK_START.md 有关详细的设置说明。

可用工具

GitHub工具

  • github_list_repos -列出GitHub存储库
  • github_get_repo -获取存储库详细信息
  • github_create_repo -创建新存储库
  • github_list_issues -列出存储库问题
  • github_create_issue -创建新问题
  • github_list_pull_requests -列出拉取请求
  • github_create_pull_request -创建新的pull请求

Netlify工具

  • netlify_list_sites -列出所有Netlify网站
  • netlify_get_site -获取网站详细信息
  • netlify_create_site -创建新网站
  • netlify_list_deployments -列出站点部署
  • netlify_deploy -部署到Netlify

Supabase工具

  • supabase_query -执行SQL查询
  • supabase_list_tables -列出数据库表
  • supabase_create_table -创建新表
  • supabase_list_storage_buckets -列出存储桶
  • supabase_upload_file -将文件上传到存储

Azure工具

资源管理:

  • azure_list_resource_groups -列出资源组
  • azure_list_resources -列出组中的资源
  • azure_create_resource_group -创建资源组
  • azure_list_web_apps -列出Web应用程序
  • azure_deploy_web_app -部署到Web应用程序

虚拟机:

  • azure_list_vms -列出虚拟机
  • azure_get_vm -获取VM详细信息
  • azure_start_vm -启动虚拟机
  • azure_stop_vm -停止虚拟机
  • azure_restart_vm -重新启动虚拟机

数据库:

  • azure_list_postgresql_servers -列出PostgreSQL服务器
  • azure_query_postgresql -查询PostgreSQL数据库
  • azure_list_mysql_servers -列出MySQL服务器
  • azure_query_mysql -查询MySQL数据库
  • azure_list_sql_servers -列出SQL Server实例
  • azure_list_cosmosdb_accounts -列出Cosmos数据库帐户

容器:

  • azure_list_container_groups -列出容器实例
  • azure_get_container_group -获取容器组详细信息
  • azure_list_aks_clusters -列出AKS集群
  • azure_get_aks_cluster -获取AKS集群详细信息

储存:

  • azure_list_storage_accounts -列出存储帐户
  • azure_list_blob_containers -列出blob容器
  • azure_list_blobs -列出容器中的blob
  • azure_upload_blob -将文件上传到blob存储

谷歌任务工具

  • google_tasks_list_tasklists -列出所有任务列表
  • google_tasks_list_tasks -在列表中列出任务
  • google_tasks_get_task -获取任务详细信息
  • google_tasks_create_task -创建新任务
  • google_tasks_update_task -更新任务
  • google_tasks_delete_task -删除任务

谷歌表格工具

  • google_sheets_read_range -从某个范围读取数据
  • google_sheets_write_range -将数据写入范围
  • google_sheets_append_row -添加一行
  • google_sheets_update_cell -更新单个单元格
  • google_sheets_get_spreadsheet -获取电子表格元数据

困惑工具

  • perplexity_search -使用引文进行搜索和研究
  • perplexity_research -综合专题研究

Gemini工具

  • gemini_generate_text -使用Gemini生成文本
  • gemini_generate_code -使用Gemini生成代码
  • gemini_review_code -审查代码并提供反馈
  • gemini_explain_code -解释代码的作用

可用资源

  • github://repos -GitHub存储库列表
  • netlify://sites -Netlify网站列表
  • supabase://tables -Supabase数据库表
  • azure://resource-groups -Azure资源组

发展

项目结构

.
├── src/
│   ├── index.ts              # Main server entry point
│   └── integrations/
│       ├── github.ts         # GitHub integration
│       ├── netlify.ts        # Netlify integration
│       ├── supabase.ts       # Supabase integration
│       ├── azure.ts          # Azure core integration
│       ├── azure-database.ts  # Azure database services
│       ├── azure-vm.ts        # Azure Virtual Machines
│       ├── azure-containers.ts # Azure containers (ACI & AKS)
│       ├── azure-storage.ts   # Azure Storage
│       ├── google-tasks.ts   # Google Tasks integration
│       ├── google-sheets.ts   # Google Sheets integration
│       ├── perplexity.ts     # Perplexity AI integration
│       └── gemini.ts         # Gemini AI integration
├── .cursor/
│   ├── mcp.json              # MCP server configuration
│   └── rules/                # AI agent rules
│       ├── dev-manager.md    # Supervisor role
│       ├── dev-agent.md      # Autonomous dev agent
│       ├── data-schema.md    # Database guidelines
│       └── frontend-testing.md # Testing rules
├── dist/                     # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.md

建筑

npm run build

观察变化

npm run watch

安全说明

  • 永远不要承诺你的 .env 文件到版本控制
  • 确保API代币的安全
  • 尽可能使用特定于环境的令牌
  • 定期轮换您的代币
  • 使用每个服务所需的最小权限

文档

故障排除

身份验证问题

  • 验证所有环境变量是否设置正确
  • 检查令牌到期日期
  • 确保令牌具有正确的权限/范围

Azure身份验证

  • 如果使用DefaultAzureCredential,请确保通过支持的方法之一进行身份验证
  • 跑 az account show 验证Azure CLI身份验证
  • 检查您的服务主体是否具有必要的权限

Supabase查询

  • 一些复杂的SQL查询可能需要使用Supabase的SQL编辑器或创建RPC函数
  • 确保您的匿名密钥具有执行操作所需的权限

许可证

麻省理工学院