Skip to main content
Glama
TylerIlunga

Procore MCP Server

Show RFQ Response

show_rfq_response
Read-onlyIdempotent

Retrieve detailed information for a specific RFQ response in Procore by supplying RFQ, response, project, and contract IDs. Returns a complete read-only JSON object for that response.

Instructions

Return detailed information about a specified Response in a specified RFQ. Use this when you already know which RFQ response you want and need its full field set. rfq_id, id must identify existing parent records — resolve them with the matching list tool first. Returns a single JSON object describing the RFQ response. Read-only — it changes nothing in Procore. 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: rfq_id, id, project_id, contract_id. Procore API: Construction Financials > Commitments. Endpoint: GET /rest/v1.0/rfqs/{rfq_id}/responses/{id}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesURL path parameter — unique identifier of the Commitments resource
rfq_idYesURL path parameter — unique identifier of the rfq
project_idYesQuery string parameter — unique identifier for the project.
contract_idYesQuery string parameter — unique identifier of the contract
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, but the description adds 'Read-only — it changes nothing in Procore' and discloses failure behavior with specific HTTP statuses (401, 403, 404) and return type ('Returns a single JSON object'). This goes beyond the structured annotations, helping the agent anticipate errors and validate responses.

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 dense but not excessively long. It front-loads the purpose and includes necessary context (usage, errors, endpoint) in a logical sequence. Some redundancy with annotations exists ('Read-only' repeats readOnlyHint), but the error statuses and endpoint details earn their place. Overall, it is well-structured and concise for the information it conveys.

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 read tool with four parameters and no output schema, the description covers the essential aspects: purpose, usage, return shape, error handling, and required parameters. It does not enumerate the returned fields, but the absence of an output schema means the agent will discover them via examples or by invoking the tool. The API section and endpoint also orient the agent well. This is sufficient for successful 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?

The input schema covers 100% of parameters with descriptions, so the description adds limited new meaning. It reiterates required parameters and adds the relationship note 'rfq_id, id must identify existing parent records — resolve them with the matching list tool first,' which clarifies that these are not arbitrary IDs. This is helpful but does not compensate for the fact that the schema already documents each parameter adequately, so the baseline 3 is appropriate.

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 opens with a specific verb and resource: 'Return detailed information about a specified Response in a specified RFQ.' It distinguishes from siblings by noting 'Use this when you already know which RFQ response you want and need its full field set,' which separates it from list tools and from show_rfq (which targets the RFQ itself). This makes the tool's purpose immediately clear and 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?

The description provides explicit context: 'Use this when you already know which RFQ response you want.' It also guides the agent to resolve parent records first: 'rfq_id, id must identify existing parent records — resolve them with the matching list tool first.' However, it does not explicitly name the alternative tool (e.g., list_rfq_responses) or state a clear when-not-to-use condition, stopping short of 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