Skip to main content
Glama
TylerIlunga

Procore MCP Server

Create Contributing Condition

create_contributing_condition

Create a contributing condition for Procore incidents. Provide a unique name and company ID; repeated calls with the same name return the existing record to avoid duplicates.

Instructions

Creates a new contributing condition for the specified company. The request is idempotent; repeated calls with the same name return the existing record. Pass the record's fields as top-level arguments — they are nested under "contributing_condition" in the request payload for you. company_id defaults to the value set by procore_set_config when omitted. Acts on the contributing condition and returns Procore's response for the operation. 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, name. Procore API: Project Management > Incidents. Endpoint: POST /rest/v1.0/companies/{company_id}/contributing_conditions

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesJSON request body field — display name for the contributing condition. Must be unique within the company. Names of Procore-provided contributing conditions cannot be changed.
activeNoJSON request body field — flag that denotes if the Contributing Condition is available for use
company_idYesURL path parameter — unique identifier for the company.
Behavior1/5

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

The description claims 'The request is idempotent; repeated calls with the same name return the existing record,' but the annotations declare 'idempotentHint': false. This is a direct contradiction between the description and the structured metadata, which is a serious flaw. Even though the description provides rich behavioral details (payload nesting, defaults, error payloads), the contradiction with the annotation forces a score of 1.

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 moderately long but every sentence adds useful information: purpose, idempotency, parameter passing, company_id default, error handling, required parameters, and endpoint reference. It is well-structured and front-loaded with the primary action. A small deduction because it could be tightened without losing meaning.

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

Completeness5/5

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

Despite no output schema, the description fully covers the operational context: what it does, how parameters are handled, defaulting behavior, failure modes with common HTTP statuses, and the specific API endpoint. This is comprehensive for a create operation with three parameters.

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

Parameters5/5

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

Schema coverage is 100% with descriptions for all parameters, giving a baseline of 3. The description adds significant value by explaining that record fields are passed as top-level arguments but nested under 'contributing_condition' in the payload, and that company_id defaults to procore_set_config when omitted. It also explicitly lists required parameters, which goes beyond the schema.

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's purpose: 'Creates a new contributing condition for the specified company.' This is a specific verb+resource, and it distinguishes from sibling tools like update_contributing_condition, show_contributing_condition, and list_contributing_conditions. The endpoint and API area are also provided.

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?

The description provides clear context on when to use the tool (to create a new contributing condition) and explains important behaviors like idempotency, company_id defaulting, and error handling. However, it does not explicitly contrast with update/delete/list alternatives or state when not to use it, which would merit a 5.

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