Skip to main content
Glama
TylerIlunga

Procore MCP Server

update_prime_contract_v2_0

Modify Prime Contract details in Procore, including status, vendor information, payment settings, and contract terms for construction project management.

Instructions

Update Prime Contract. [Construction Financials/Prime Contracts] PATCH /rest/v2.0/companies/{company_id}/projects/{project_id}/prime_contracts/{prime_contract_id}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
company_idYesUnique identifier for the company.
project_idYesUnique identifier for the project.
prime_contract_idYesUnique identifier for the Prime Contract.
viewNoSpecifies which view (which attributes) of the resource is going to be present in the response. The extended view includes architect name, contractor name, vendor name and custom fields data, whil...
numberNoThe Prime Contract number. Defaults to the project numbering sequence for the respective contract type.
statusNoThe Prime Contract status.
titleNoThe Prime Contract title.
descriptionNoThe Prime Contract description.
executedNoThe Prime Contract executed status.
vendor_idNoThe ID of the vendor for the contract. The selected invoice contacts must all belong to this vendor. When the vendor is changed, the invoice contacts are reset.
architect_idNoThe ID of the architect for the contract.
contractor_idNoThe ID of the contractor for the contract.
inclusionsNoOnly applicable to Work Order Contracts. The inclusions of the Prime Contract.
exclusionsNoOnly applicable to Work Order Contracts. The exclusions of the Prime Contract.
accounting_methodNoThe accounting method for the contract. Default is driven by a project setting.
allow_commentsNoIf true, comments are allowed on the Prime Contract; otherwise comments are not allowed. Default is driven by a project setting.
auto_approve_prefilled_requisitions_on_payappNoIf true, prefilled requisitions are auto-approved on payment applications; otherwise prefilled requisitions are not auto-approved. Default is driven by a project setting.
allow_markupsNoIf true, markups are allowed on the Prime Contract; otherwise markups are not allowed. Default is driven by a project setting.
change_order_level_of_detailNoThe level of details for showing change orders on invoices attached to this contract.
enable_ssovNoIf true, the subcontractor schedule of values (SSOV) is enabled for the Prime Contract; otherwise the SSOV is not enabled. Default is driven by a project setting.
allow_payment_applicationsNoIf true, invoices are allowed on the Prime Contract; otherwise invoices are not allowed. Default is driven by a project setting.
allow_paymentsNoIf true, payments are allowed on the Prime Contract; otherwise payments are not allowed. Default is driven by a project setting.
display_materials_retainageNoIf true, materials retainage is displayed on the Prime Contract; otherwise materials retainage is not displayed. Default is driven by a project setting.
display_work_retainageNoIf true, work retainage is displayed on the Prime Contract; otherwise work retainage is not displayed. Default is driven by a project setting.
show_cost_code_on_pdfNoIf true, cost codes are displayed on the Prime Contract PDF; otherwise cost codes are not displayed. Default is driven by a project setting.
accessor_idsNoOnly applicable to private contracts. IDs of users in the project directory (see the Project Users endpoint). These users will be able to view the commitment contract.
privateNoIf true, visible to admins and accessors only; otherwise visible to those with access to the Primes tool. Default based on project level setting.
show_line_items_to_non_adminsNoOnly applicable to private contracts. If true, line items are visible to non-admins; otherwise visible to admins only.
actual_completion_dateNoOnly applicable to Work Order Contracts.
approval_letter_dateNoapproval_letter_date
contract_dateNocontract_date
contract_estimated_completion_dateNoOnly applicable to Work Order Contracts.
contract_start_dateNoOnly applicable to Work Order Contracts.
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies a mutation operation ('Update') but doesn't specify required permissions, whether changes are reversible, rate limits, or what the response contains. The API path hint suggests a PATCH operation, but this is insufficient for a mutation tool with 33 parameters and no annotation coverage.

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

Conciseness3/5

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

The description is brief but under-specified rather than concise. It consists of a tautological phrase and an API path, which doesn't efficiently convey purpose or usage. While not verbose, it fails to provide necessary context, making it less helpful than a well-structured, concise description would be.

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

Completeness2/5

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

Given the tool's complexity (33 parameters, mutation operation, no annotations, no output schema), the description is inadequate. It doesn't explain the update behavior, return values, or error conditions. For a high-stakes update tool in a construction financials context, this lack of completeness poses a risk for correct agent invocation.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema fully documents all 33 parameters. The description adds no parameter-specific information beyond what's in the schema. According to the rules, with high schema coverage, the baseline is 3 even without param info in the description, which applies here.

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

Purpose2/5

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

The description 'Update Prime Contract' is a tautology that restates the tool name without adding specificity. It mentions the API path '[Construction Financials/Prime Contracts] PATCH /rest/v2.0/companies/{company_id}/projects/{project_id}/prime_contracts/{prime_contract_id}', which provides some context but doesn't clearly articulate what the tool does beyond the name. It lacks a distinct verb+resource combination that differentiates it from siblings.

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

Usage Guidelines1/5

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

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, appropriate contexts, or exclusions. Given the complex sibling list including other update tools, this absence is a significant gap, leaving the agent without direction on tool selection.

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