Skip to content

rogers-obrien-rad/procore-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Procore MCP (Multi-Client Platform)

This project provides a Python-based MCP (Multi-Client Platform) server for integrating with the Procore API. It exposes tools and utilities for accessing Procore project data, RFIs, and more, and is designed to be used as a backend service or as a tool server for agent frameworks.

Features

  • OAuth2-based authentication to Procore's API
  • Tools for listing projects, RFIs, and project details
  • Pagination and filtering support for large data sets
  • Built-in support for running as an MCP server (with mcp.server.fastmcp)
  • Environment-based configuration for secrets and company info

Getting Started

1. Clone the repository

git clone <this-repo-url>
cd procore-mcp

2. Set up your Python environment

We recommend using Python 3.10 or newer and a virtual environment:

python3.10 -m venv .venv
source .venv/bin/activate

3. Dependencies

Dependencies are managed with uv so no need to install anything else.

4. Configure environment variables

Create a .env file and set the following variables:

PROCORE_CLIENT_ID=your_client_id
PROCORE_CLIENT_SECRET=your_client_secret

You will also want to update COMPANY_ID in the server.py file to your Procore company ID.

5. Run the MCP server with Claude Desktop

  1. Install Claude Desktop

  2. Install to Claude Desktop:

    uv run mcp install server.py --with requests --f .env

This will install the server to Claude Desktop where the flags:

  • --with requests installs the requests package
  • --f .env loads the environment variables from the .env file

Double-check the installation

You can double-check the installation by looking at the claude_desktop_config.json file wherever you downloaded Claude Desktop. It should look something like this:

{
  "mcpServers": {
    "Procore Server": {
      "command": "/Users/hfritz/.local/bin/uv",
      "args": [
        "run",
        "--with",
        "mcp[cli]",
        "--with",
        "requests",
        "mcp",
        "run",
        "/Users/hfritz/Projects/procore-mcp/server.py"
      ],
      "env": {
        "PROCORE_CLIENT_ID": "Your Client ID",
        "PROCORE_CLIENT_SECRET": "Your Client Secret"
      }
    }
  }
}

About

MCP for Procore access

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published