# TylerIlunga/procore-mcp-server [Health: Active]

**Category:** 📋 Product Management  
**Repository:** https://github.com/TylerIlunga/procore-mcp-server  
**GitHub Stars:** 9  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/tylerilunga-procore-mcp-server

## Description
MCP server exposing the full Procore REST API (2,636 endpoints) for construction project management. Includes 7 discovery and execution tools covering projects, RFIs, submittals, daily logs, budgets, and more. Single-user OAuth with auto-refresh.

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "procore-mcp-server": {
    "command": "npx",
    "args": ["-y","tylerilunga-procore-mcp-server"],
    "env": {
      "PROCORE_CLIENT_ID": "",
      "PROCORE_CLIENT_SECRET": "",
      "PROCORE_COMPANY_ID": "",
      "PROCORE_TOOL_MODE": ""
    }
  }
}
```

**Requires environment variables:** `PROCORE_CLIENT_ID`, `PROCORE_CLIENT_SECRET`, `PROCORE_COMPANY_ID`, `PROCORE_TOOL_MODE` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What TylerIlunga/procore-mcp-server MCP server does

TylerIlunga/procore-mcp-server MCP server connects MCP-compatible assistants to Procore’s construction project management API. Its API surface is generated from Procore’s OpenAPI specification, covering operations across resources such as projects, RFIs, submittals, daily logs, and budgets. The repository describes coverage as the full Procore REST API rather than a small set of hand-written workflows.

At runtime, the default configuration exposes seven MCP tools. These tools let an assistant browse API categories, inspect endpoints, search endpoint names and descriptions, retrieve parameter schemas, make API requests, inspect authentication status, and set the active company or project configuration.

## How it works

A build-time script parses Procore’s approximately 54 MB OpenAPI document into a compact catalog and separate endpoint detail files. Another script creates a manifest for the generated endpoint tools. The README reports 3,155 operations in the source specification and 2,929 generated tools after duplicate older-version paths are collapsed.

The default runtime keeps the advertised tool list small: assistants discover an endpoint and invoke it through `procore_api_call`. Setting `PROCORE_TOOL_MODE=all` enables the generated per-endpoint tool surface instead. The API coverage is intended to remain the same in both modes; the difference is the number and size of tool definitions presented to the client.

When an assistant calls Procore, the server maps the request to the selected endpoint, adds authentication headers, and handles rate limits and pagination. OAuth tokens are saved under `~/.procore-mcp/tokens.json` and refreshed after expiration. Interactive OAuth endpoints are handled by the authentication command rather than being registered as normal generated tools, although they remain reachable through the generic API-call path.

## Setup and configuration

Running TylerIlunga/procore-mcp-server MCP server requires Node.js 18 or newer, a Procore Developer Portal account, and a Procore OAuth application using the Authorization Code grant. The OAuth redirect URI must be set to `http://localhost`.

Clone the repository, install its npm dependencies, copy `.env.example` to `.env`, and provide the client ID, client secret, and company ID. The Procore OpenAPI file must also be downloaded from Procore’s API documentation and placed at `specs/combined_OAS.json`; it is not included in the repository because of its size. Run `npm run build` to generate the catalog and compile TypeScript, then run `npm run auth` to complete browser-based authorization. Start the compiled server with `npm start`.

Claude Desktop and Claude Code configurations invoke the compiled `dist/src/index.js` file with Node and pass the Procore credentials as environment variables. The README uses absolute local paths in those examples, so the path must be adapted to the checkout location.

## Tools and capabilities

The default seven-tool interface includes:

- `procore_discover_categories` for category names and endpoint counts.
- `procore_discover_endpoints` for listing endpoints in a category.
- `procore_search_endpoints` for full-text endpoint searches.
- `procore_get_endpoint_details` for parameter schemas.
- `procore_api_call` for executing Procore requests.
- `procore_get_config` for configuration and authentication status.
- `procore_set_config` for runtime company and project settings.

## Limitations and notes

The OpenAPI specification is a required external input and is not bundled with the repository. Enabling all generated tools advertises roughly 4.7 MB of definitions, or about 1.2 million tokens, which may exceed current model context windows. Procore API access also depends on the permissions and resources available to the authenticated account. The project is licensed under MIT.

_Full upstream README: https://allmcps.com/mcp/tylerilunga-procore-mcp-server/readme_

