Millsheet: metals, resins and chemicals specified by grade; bulk CO2 supply planner
Server Details
Specify metals, resins, chemicals and gases by grade, and plan a bulk CO2 supply from your volume.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
The three tools map to distinct actions: enumerate services, inspect one service, and submit a requirement. Minor ambiguity exists because describe_proposition also mentions 'operations' and 'request fields', which could make an agent wonder whether it can execute something rather than just describe.
All three names follow a clean verb_noun snake_case pattern (list_propositions, describe_proposition, submit_request). The naming is predictable and readable despite the unusual domain term 'proposition'.
Three tools is a small but coherent surface for a catalog-plus-request server, with no redundant tools. It sits slightly on the thin side because there is no separate tool for running the advertised instant lookups or checking request status.
List/describe/submit covers discovery and submission, but the lifecycle has dead ends: no way to retrieve or track a submitted request by reference number, and no explicit tool for executing the 'instant lookups' the server advertises. Agents can submit but cannot follow up.
Available Tools
3 toolsdescribe_propositionDescribe a serviceCRead-onlyIdempotentInspect
Everything about one service: what happens to a request, what you get, scope and limits, the request fields and any operations.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only that the payload is comprehensive in scope, without saying what happens for an unknown slug, whether an error is raised, or how large the response is. It neither contradicts nor meaningfully extends the annotations.
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?
It is a single front-loaded sentence with a colon-delimited list, which is structurally sound and short. But several list items are vague ('what you get', 'any operations'), so brevity comes at the cost of specificity rather than being purely efficient.
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?
There is no output schema, so the description is the only source of return-value information, and it does gesture at the main content categories. Against the simplicity of a one-parameter read tool with rich annotations, that is roughly adequate, but the undefined slug and absent error/edge-case behavior leave gaps.
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 single parameter, slug, has 0% schema description coverage, so the description carries the full burden and does not meet it — 'slug' is never explained as the service identifier, its expected format, or where to obtain it. The items listed ('request fields', 'operations') describe response content, not the input, so they do not compensate for the schema gap.
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 conveys that this is a detail-lookup for a single service and enumerates the kinds of content returned (request flow, response, scope/limits, fields, operations). However, it never states an explicit verb and shifts terminology from the tool name's 'proposition' to 'service', which leaves the agent to infer that these are the same entity. The singular framing loosely implies a contrast with list_propositions, but no explicit differentiation is made.
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?
There is no when-to-use guidance at all: nothing says to call this instead of list_propositions when the agent already has a slug, and nothing mentions the sibling tools. The description also never hints at what precondition must hold (a valid slug) before calling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_propositionsList Millsheet's servicesARead-onlyIdempotentInspect
List Millsheet's services with a one-line summary: lookups that run instantly, and requirements you can send.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely new behavioral context by disclosing the shape of the return: a one-line summary per service, split into two categories. That matters because no output schema exists. Minor gap: no ordering, completeness or pagination statement.
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?
A single front-loaded sentence with no filler, followed by a clarifying colon clause. The clause is slightly elliptical ('requirements you can send'), costing a bit of immediacy, but nothing is wasted.
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 zero-arg, read-only list tool with no output schema, the description does the essential work of telling the agent what comes back. It still leaves open whether the list is exhaustive, how items are identified, and whether the returned names feed directly into describe_proposition.
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 tool takes zero parameters, so the baseline is 4. Nothing in the description conflicts with the empty schema, and no parameter meaning is needed.
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 gives a specific verb ("List") and resource ("Millsheet's services") and clarifies what a 'proposition' actually is: instant lookups and requirements you can send. That resolves the terminology gap between the tool name and its title. It stops short of naming the sibling tools, so the agent must infer the boundary itself.
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?
There is no explicit when-to-use statement and no routing to describe_proposition or submit_request, even though the 'one-line summary' phrasing hints that a detail tool exists. The agent is left to infer that this is the discovery/entry-point call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_requestSend a requirementBInspect
Send a requirement to one of Millsheet's services. It is kept with a reference number.
| Name | Required | Description | Default |
|---|---|---|---|
| need | Yes | The requirement in words | |
| slug | Yes | Service slug, or anything-else | |
| action | No | ||
| budget | No | ||
| timing | No | ||
| contact | No | Optional; stored apart and deleted after 180 days | |
| quantity | No | ||
| geography | No | ||
| specifications | No | Fields from the service's request schema | |
| requested_fields | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already disclose that this is a non-read-only, non-idempotent, non-destructive mutation with closed-world scope. The description adds useful context that the submitted requirement is retained with a reference number. However, it does not explain duplicate handling, validation behavior, or the meaning of the reference number beyond persistence.
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 short sentences with no wasted wording. The main action is front-loaded, and the retention note follows directly. It is appropriately concise, although the missing detail belongs to contextual completeness rather than conciseness.
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?
This is a 10-parameter mutation with nested objects, only 40% schema description coverage, and no output schema. The description explains the basic submission and retention behavior but leaves many optional parameters and operational details unexplained. For this level of complexity, it is materially incomplete.
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 only 40%, so the description should compensate for undocumented fields such as action, budget, timing, quantity, geography, specifications, and requested_fields. Instead, it only implies the roles of need and slug at a high level. It adds little meaningful guidance beyond the parameter names.
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 and resource: sending a requirement to one of Millsheet's services. It also adds that the requirement is kept with a reference number. It does not distinguish this tool from the sibling proposition tools, so it falls short of a 5.
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 no explicit guidance on when to use submit_request versus alternatives. It does not mention prerequisites, exclusions, or the sibling tools. Usage is only implied by the verb 'send' and the tool name.
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.
3 tool updates
- First observed
describe_proposition - First observed
list_propositions - First observed
submit_request
Related MCP Connectors
Trade-verified steel grade properties, substitution verdicts, and mill-cert guidance for AI agents.
Get quotes in minutes and order wholesale industrial and operational supplies from a US distributor.
Get wholesale quotes and order industrial, MRO, and operational supplies from a US B2B distributor.
Find space and defence hardware suppliers and parts by specification, process and certification.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenancePlan optimal container & truck loads: 3D layouts, right-size the container mix, and check utilization, centre of gravity, crush protection and securing across 200+ equipment types.7 npm1MIT
- FlicenseBqualityDmaintenanceAn AI-powered industrial symbiosis platform that autonomously discovers waste-to-resource connections between factories, creates new products from waste streams, and generates regulatory compliance reports.19-
- AlicenseBqualityBmaintenanceMaterial, cell, pack, and supply-chain management with real-time6MIT
- AlicenseNot gradedqualityDmaintenanceAgent-native company intelligence. AI agents search and retrieve structured, verified company context (certifications, capabilities, capacity, lead times) for manufacturing & supply chain via 5 MCP tools.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.