Skip to main content
Glama
TylerIlunga

Procore MCP Server

Update A Single Group

update_a_single_group

Update a specific Procore group by providing its ID, company ID, and required details like name and timezone. Returns the updated group or an HTTP error for invalid credentials, permissions, or IDs.

Instructions

Update the single Group in a given ID and body. company_id defaults to the value set by procore_set_config when omitted, and group_id must identify an existing parent record — resolve it with the matching list tool first. Applies the change and returns the updated group. Failures come back as an error payload carrying the HTTP status — commonly 401 when the token has expired, 403 without tool permission, and 404 when an id does not resolve. Required parameters: company_id, group_id, name, timezone. Procore API: Resource Management > Resource Planning. Endpoint: POST /rest/v1.0/workforce-planning/v2/companies/{company_id}/groups/{group_id}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesJSON request body field — group Name.
colorNoJSON request body field — hexadecimal color code for the Group. Can be helpful for categorization. Example: #53A9FF.
countryNoJSON request body field — the Country for the Group.
zipcodeNoJSON request body field — zip or Postal Code for the Group.
group_idYesURL path parameter — unique identifier for the group
timezoneYesJSON request body field — the default Timezone for scheduling outbound messages from projects in this group that don't specify their own Timezone. Example format: America/Chicago.
address_1NoJSON request body field — the first part of the Group's address.
address_2NoJSON request body field — the second part of the Group's address (e.g., Apartment, Suite, Unit).
city_townNoJSON request body field — the City or Town for the Group.
company_idYesURL path parameter — unique identifier for the company. This parameter accepts both formats: - **Recommended**: Procore company ID (integer) - Use this for new integrations - Legacy: LaborChart UUID format (uuid string...
contact_nameNoJSON request body field — the Point of Contact (P.O.C.) name for the Group.
contact_emailNoJSON request body field — email address for the Group's Point of Contact.
contact_phoneNoJSON request body field — phone number for the Group's Point of Contact. Must include country and area code.
state_provinceNoJSON request body field — the State or Province for the Group.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (readOnlyHint=false, destructiveHint=false, etc.), the description discloses the return value (updated group), error payload with HTTP status codes (401/403/404), and the requirement that group_id must reference an existing record. This adds valuable operational context without contradicting annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise at about six sentences, front-loaded with the core purpose. Each sentence contributes useful information (prerequisite, return value, error handling, required params, API reference), though a few phrases like 'in a given ID and body' could be tightened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with no output schema, the description covers the essential operational aspects: parameters, return value, error modes, and prerequisite resolution. The lack of a detailed response format is mitigated by the statement that it returns the updated group. Overall, it is sufficiently complete for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

While the schema already describes all 14 parameters with 100% coverage, the description adds extra meaning for key parameters: company_id defaults to the configured value when omitted, and group_id must be an existing parent record. This goes beyond the schema's static descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool updates a single Group using an ID and body, distinguishing it from sibling tools like create, delete, and list group operations. The verb 'Update' plus the resource 'Group' makes the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides explicit guidance to resolve group_id with a matching list tool first and notes company_id defaults to the configured value. This tells the agent the prerequisite step and how to obtain required identifiers, though it does not explicitly list alternative tools for non-update operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/TylerIlunga/procore-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server