MCP CPG Human in the Loop (HITL)
Server Details
Navigator for BPC Agentic Procurement
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- greencore-solutions/cpg-human-in-the-loop
- GitHub Stars
- 0
- Server Listing
- MCP CPG Human in the Loop (HITL)
TDQS
Scored across 4 tools
Each tool serves a distinct role: three create different types of tickets (RFQ, terms question, escalation) and one polls ticket status. The descriptions clearly delineate when to use each, leaving no real ambiguity.
Most tools follow a verb_noun pattern (check_rfq_status, request_terms, submit_rfq), but 'escalate' is a bare verb that breaks the pattern slightly. The names remain readable and predictable overall.
Four tools is an appropriate size for a HITL ticket server: three ticket-creation paths and one status/answer polling function. No tool feels redundant or missing at this scope.
The toolset covers the full human-in-the-loop lifecycle: create tickets of all relevant types and retrieve status/answers. There are no dead ends — every creation tool returns a ticket ID that check_rfq_status can poll.
Available Tools
4 toolscheck_rfq_statusCheck ticket statusAInspect
Poll a ticket previously lodged on this MCP (RFQ, terms request, or escalation). Returns current status and, once a human has answered, the answer.
| Name | Required | Description | Default |
|---|---|---|---|
| ticket_id | Yes | Ticket ID returned at submission, e.g. HITL-20260719-A1B2C3 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool polls and returns status, and that once a human has answered, the answer is returned. It also indicates that the ticket must have been previously lodged on this MCP, which is critical context. Since no annotations exist, this is a reasonable degree of disclosure, though it does not mention polling frequency or timeout behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, concise and front-loaded with the purpose and key behavior. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single-parameter schema and absence of an output schema, the description is complete enough for an agent to call it. It explains return value and context but could mention polling behavior or errors; still, it's adequate for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a full description of the ticket_id parameter, including a pattern and example. The description does not add extra meaning beyond what the schema has, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('poll'), a resource ('ticket'), and its scope ('previously lodged on this MCP'), and lists the ticket types (RFQ, terms request, escalation), distinguishing it from the sibling submission tools. It is clear and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for tickets already submitted, but does not explicitly state when not to use it (e.g., before submission, or alternatives). It is clear enough for an agent to infer, but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
escalateEscalate to a human (ACM-451)AInspect
Hand a matter that cannot be resolved deterministically to GSC Navigator human review. Emits ACM-451 ESCALATE. Returns a ticket ID for polling via check_rfq_status.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | What was attempted, what could not be resolved, and why | |
| subject | Yes | One-line summary of the matter | |
| related_ticket | No | Optional earlier ticket this relates to | |
| requester_name | Yes | Requesting organization or agent operator | |
| requester_contact | Yes | Reply channel: email or URL a human can answer to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose the core behavior (escalating to human review), the emission of an ACM-451 event, and the return of a ticket ID for polling. However, it does not mention side effects (e.g., whether escalation is irreversible, if it blocks other operations, or what happens to the original context). It also doesn't state any permission or authentication requirements. The description is clear about the primary action but lacks depth about consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action and condition, followed by the output and next step. Every sentence earns its place: the first states what the tool does, the second explains the output and how to use it. There is no fluff or redundant phrasing, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters (4 required) and no output schema, so the description must clarify the return behavior. It does: it states a ticket ID is returned and directs polling via check_rfq_status. It also gives the event code (ACM-451). While it doesn't detail error handling or edge cases, for a simple escalation tool the description provides sufficient context to call it correctly and understand the outcome. The only minor gap is the absence of any mention of what to do if escalation fails, but that is not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning each parameter already has a description. The tool description does not add any extra meaning to parameters beyond what the schema provides. It only reiterates the overall purpose and output. Per the rubric, with high coverage, the baseline is 3, and the description adds no additional parameter-level insight, so a 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear purpose: to hand a matter that cannot be resolved deterministically to human review. It specifies the verb (hand over), the resource (GSC Navigator human review), and the condition (cannot be resolved deterministically). It also mentions the output (ticket ID) and the ACM-451 event, which makes it distinct from other tools like submit_rfq or request_terms. This is a specific, actionable description that an agent can immediately understand.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear when-to-use condition: only when a matter cannot be resolved deterministically. This implies that for resolvable matters, other tools (e.g., submit_rfq) should be used. It also directs the agent to poll via check_rfq_status after escalation, which is an explicit next step. However, it does not explicitly list alternatives or state when not to use it beyond the deterministic caveat, so it stops 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.
request_termsRequest termsAInspect
Ask a commercial or procedural question — terms, conditions, eligibility context, process. The question is lodged as a ticket and a human answers it. Returns a ticket ID for polling via check_rfq_status.
| Name | Required | Description | Default |
|---|---|---|---|
| subject | Yes | One-line summary of the question | |
| question | Yes | The question a human should answer | |
| related_ticket | No | Optional earlier ticket this relates to | |
| requester_name | Yes | Requesting organization or agent operator | |
| requester_contact | Yes | Reply channel: email or URL a human can answer to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states that the question is lodged as a ticket, a human answers it, and a ticket ID is returned for polling. This conveys the asynchronous nature and the expected flow. It does not mention side effects like authentication, rate limits, or potential delays, but for a simple request tool, the core behavior is adequately disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the purpose, and contains no filler. It efficiently states what the tool does, the process, and the return value, all without redundancy. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters, no output schema, and no annotations, the description is fairly complete. It explains the purpose, the asynchronous human-answered flow, and how to follow up via check_rfq_status. It does not address error handling or edge cases, but those are not critical for the core functionality. The description provides enough for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning every parameter is already documented with a clear description. The tool description adds no additional semantic context beyond what the schema provides, such as usage examples or relationships between parameters. It does not compensate for the high schema coverage with extra insight, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Ask') and resource (commercial or procedural question), and explicitly describes the outcome (ticket created, human answers, returns ticket ID). It distinguishes itself from siblings by framing the use case as a question rather than a formal submission or status check, which is sufficient for an agent to tell it apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use this tool: for commercial or procedural questions that need a human answer. It also points to the companion tool 'check_rfq_status' for polling, which implies when to use that alternative. However, it does not explicitly state that this is not for formal RFQ submissions (submit_rfq) or escalation (escalate), leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_rfqSubmit RFQAInspect
Lodge a request-for-quotation with GreenCore Solutions Corp. A human reviews and answers every ticket — no order is decided by this tool. Returns a ticket ID for polling via check_rfq_status. Optionally reference a GTIN resolved on mcp.cpgknowledgegraph.ai and an SM-ECO-10060 market code.
| Name | Required | Description | Default |
|---|---|---|---|
| gtin | No | Optional GTIN reference (as resolved on the CPG Knowledge Graph) | |
| market | No | Optional SM-ECO-10060 member code, e.g. FR, AU, MX | |
| details | Yes | Full request: product, volumes, timing, destination | |
| subject | Yes | One-line summary of the RFQ | |
| quantity | No | Optional quantity / volume expression | |
| requester_name | Yes | Requesting organization or agent operator | |
| requester_contact | Yes | Reply channel: email or URL a human can answer to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden and does it well: it states that a human reviews every ticket, that no order is decided by this tool, and that it returns a ticket ID for polling. This gives the agent an accurate model of how the operation behaves beyond simply 'submitting'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three tight sentences with no filler. The core action, human-review behavior, return value, and optional references are all front-loaded or clearly positioned, making it easy for an agent to scan and act.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a submission tool with no output schema, the description appropriately discloses the return value (ticket ID) and how to use it (poll via check_rfq_status). Combined with the fully documented schema, the agent has enough context to invoke this tool correctly and understand its result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema already documents all seven parameters well. The description adds only minor reinforcement about the optional GTIN and SM-ECO-10060 market code, which slightly complements the schema but does not materially improve parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Lodge a request-for-quotation') against a named organization (GreenCore Solutions Corp.) and clearly distinguishes this from related tools by noting it does not decide orders and returns a ticket for polling via check_rfq_status. The purpose is unambiguous and the tool's role in the quote workflow is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear operational context: this is for requesting a quotation, a human will review it, and results are polled through check_rfq_status. It does not explicitly state when to use request_terms or escalate instead, so it stops short of full alternative routing, but the main usage context is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- Changed
check_rfq_status1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
escalate1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
request_terms1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
submit_rfq1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
3 tool updates
- Changed
escalate1 field changed- removed
Input schema / properties / agent_cardRemoved value: -{ - "description": "Optional: your A2A agent card URL or hostname — verified at task acceptance (JWS over RFC 8785). VERIFIED handshakes enter the guest book at gsc-handshake.ai by name.", - "maxLength": 300, - "type": "string" -}
- Changed
request_terms1 field changed- removed
Input schema / properties / agent_cardRemoved value: -{ - "description": "Optional: your A2A agent card URL or hostname — verified at task acceptance (JWS over RFC 8785). VERIFIED handshakes enter the guest book at gsc-handshake.ai by name.", - "maxLength": 300, - "type": "string" -}
- Changed
submit_rfq1 field changed- removed
Input schema / properties / agent_cardRemoved value: -{ - "description": "Optional: your A2A agent card URL or hostname — verified at task acceptance (JWS over RFC 8785). VERIFIED handshakes enter the guest book at gsc-handshake.ai by name.", - "maxLength": 300, - "type": "string" -}
3 tool updates
- Changed
escalate1 field changed- added
Input schema / properties / agent_cardAdded value: +{ + "description": "Optional: your A2A agent card URL or hostname — verified at task acceptance (JWS over RFC 8785). VERIFIED handshakes enter the guest book at gsc-handshake.ai by name.", + "maxLength": 300, + "type": "string" +}
- Changed
request_terms1 field changed- added
Input schema / properties / agent_cardAdded value: +{ + "description": "Optional: your A2A agent card URL or hostname — verified at task acceptance (JWS over RFC 8785). VERIFIED handshakes enter the guest book at gsc-handshake.ai by name.", + "maxLength": 300, + "type": "string" +}
- Changed
submit_rfq1 field changed- added
Input schema / properties / agent_cardAdded value: +{ + "description": "Optional: your A2A agent card URL or hostname — verified at task acceptance (JWS over RFC 8785). VERIFIED handshakes enter the guest book at gsc-handshake.ai by name.", + "maxLength": 300, + "type": "string" +}
4 tool updates
- First observed
check_rfq_status - First observed
escalate - First observed
request_terms - First observed
submit_rfq
Related MCP Connectors
BPC Agentic Commerce Signals
BPC Sustainable Carrier Agents - Low Token Zero Inference
CPG sourcing for AI Agents with x402: BPC brands, agent IM, Trading Desk. GreenCore Solutions Corp.
Agentic commerce with 58 MCP tools for product search, checkout, A2A negotiation, C-Suite analytics.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to retrieve, search, and compare procurement documents using hybrid retrieval and MCP integration.-
- FlicenseNot gradedqualityBmaintenanceEnables AI-powered procurement policy compliance, document generation, supplier management, budget verification, and analytics through standardized MCP tools.-
- AlicenseNot gradedqualityCmaintenanceMCP server that automates the procurement workflow, including RFQ generation, quote parsing, ERP item loading, and purchase requisition submission with human-in-the-loop approval gates.MIT
- AlicenseNot gradedqualityBmaintenancePredictive supply-chain MCP server that forecasts material confirmation risks and enables AI clients to interact with the system via natural language.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.