Procore MCP服务器

一个为Cloudflare Workers构建的模型上下文协议(MCP)服务器,提供与Procore API的集成,使AI助手能够通过标准化接口与Procore的建筑管理平台交互。

  • by arpan1235
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 arpan1235/procore-mcp-server

使用说明

Procore MCP服务器

模型上下文协议(MCP)服务器,提供与Procore API的集成,为Cloudflare Workers构建。

概述

该MCP服务器允许AI助手通过标准化界面与Procore的施工管理平台进行交互。它提供了访问项目、提交文件、RFI和其他Procore资源的工具。

先决条件

入门指南

1.克隆和安装

git clone <your-repo-url>
cd procore-mcp-server
npm install

2.获取Procore API证书

创建Procore开发人员帐户

  1. 访问 Procore开发者门户
  2. 注册开发人员帐户或登录
  3. 引导到 我的应用程序 在开发人员门户中

创建应用程序

  1. 点击 创建新应用程序
  2. 填写您的申请详情:
    • 应用程序名称:您的MCP服务器名称
    • 描述:您的集成的简要说明
    • 重定向URI: https://your-domain.com/callback (可以是本地主机进行开发)
  3. 选择所需 范围 (权限):
    • read_projects -阅读项目信息
    • read_submittals -读取提交数据
    • read_rfis -读取RFI数据
    • 根据需要添加其他范围
  4. 点击 创建应用程序

获取您的凭据

创建应用程序后,您将看到:

  • 客户端ID -您的应用程序标识符
  • 客户端密钥 -您的应用程序机密(请保密!)

生成访问令牌

选项1:OAuth 2.0流(建议用于生产环境)

  1. 实现OAuth流以获得用户授权
  2. 访问令牌的交换授权码
  3. 使用刷新令牌来维护访问权限

选项2:个人访问令牌(用于开发/测试)

  1. 在Procore网络应用程序中,转到您的 帐户设置
  2. 引导到 开发者工具 → 个人访问令牌
  3. 点击 创建令牌
  4. 设置令牌名称并选择范围
  5. 复制生成的令牌(这是您的 PROCORE_TOKEN)

备注:个人访问令牌绑定到您的用户帐户并继承您的权限。对于生产应用程序,请使用OAuth 2.0流。

3.配置环境变量

将您的Procore API令牌设置为Cloudflare Workers机密:

# Using Wrangler CLI (recommended)
wrangler secret put PROCORE_TOKEN
# Paste your token when prompted

或者通过Cloudflare仪表板:

  1. 去找你的工人→ 设置 → 环境变量
  2. 添加变量: PROCORE_TOKEN (标记为机密)
  3. 粘贴您的令牌值
  4. 点击 保存

4.部署到Cloudflare Workers

# Deploy to Cloudflare Workers
wrangler deploy

您的MCP服务器将在以下网址提供: https://your-worker-name.your-subdomain.workers.dev

API终点

健康检查

GET /health

返回服务器状态。

MCP发现

GET /mcp

返回MCP服务器功能和可用工具。

MCP JSON-RPC

POST /mcp/rpc

工具执行的主MCP端点。接受JSON-RPC 2.0格式的请求。

用法

与MCP检查员一起

  1. 安装 MCP检查员
  2. 连接到您的服务器端点: https://your-worker-name.your-subdomain.workers.dev/mcp/rpc

API直接使用

初始化连接

POST /mcp/rpc
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize",
  "params": {}
}

列出可用工具

POST /mcp/rpc
{
  "jsonrpc": "2.0",
  "id": 2,  
  "method": "tools/list",
  "params": {}
}

执行工具

POST /mcp/rpc
{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "get_projects",
    "arguments": {}
  }
}

可用工具

服务器提供了各种与Procore交互的工具:

  • get_项目 -检索项目列表
  • get_submittars -访问提交数据
  • get_rfis -检索RFI信息
  • 更多(参见 /mcp 完整列表的端点)

发展

地方发展

# Start local development server
wrangler dev

# The server will be available at http://localhost:8787

环境变量

变量 描述 必填
PROCORE_TOKEN Procore API访问令牌 是

安全考虑

  • 永远不要提交API令牌 到版本控制
  • 将Cloudflare Workers机密用于敏感数据
  • 实施适当的错误处理以避免令牌泄漏
  • 考虑对生产使用实施限速
  • 将OAuth 2.0流用于生产应用程序

故障排除

“未设置PROCORE_TOKEN环境变量”

  • 确保您已使用设置了密钥 wrangler secret put PROCORE_TOKEN
  • 验证Cloudflare Workers仪表板中是否存在该秘密

“不记名令牌无效或过期”

  • 检查您的Procore令牌是否仍然有效
  • 个人访问令牌可能会过期-如果需要,请重新生成
  • 确保您的令牌具有所需的范围/权限

API权限错误

  • 验证您的Procore应用程序是否具有必要的作用域
  • 检查您的用户帐户是否可以访问所请求的资源
  • 确保您正在访问您有权限的项目

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 彻底测试
  5. 提交拉取请求

许可证

[在此处添加您的许可证信息]

支持