MCP 서버

Steady Steel

org.steadysteel/steady-steel
커머스 및 리테일 과학 및 엔지니어링 공개 · 연결 가능 MCP 2025-11-25

이 MCP로 할 수 있는 일

Searches catalog products and generates firm quotes for laser-cut steel, stainless steel and aluminum parts.

create_handoff_link
Make an order link
Make the link the person orders from: one page on steadysteel.org showing what was quoted, with a button for each item that opens the page selling it (a plate in the plate quoter, a product on its order page), where they check it and pay. Takes one to ten quote ids, each ready and unexpired, with ten items at most across them. Give the person the url. Anyone holding it can open the page, so give it only to them. Nothing is paid through this server.
입력 스키마
{'type': 'object', 'required': ['quote_ids'], 'properties': {'quote_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'maxItems': 10, 'minItems': 1}}}
create_rfq_link
Make a quote request link
For work quote_plate and quote_product cannot price (a part from a drawing, a weldment, a repair, plate past the laser): describe the job in words, sizes in inches, and get a link to Steady Steel's quote request form with it filled in. The person adds their own name and contact details there and sends it; Steady Steel replies with a price. Send nothing about the person: a name, email or phone field, or a description carrying a link, a web or email address or a phone number, is refused. The link works for 30 days.
입력 스키마
{'type': 'object', 'required': ['description'], 'properties': {'material': {'anyOf': [{'type': 'string', 'maxLength': 60}, {'type': 'null'}], 'default': None}, 'quantity': {'anyOf': [{'type': 'integer', 'maximum': 100000, 'minimum': 1}, {'type': 'null'}], 'default': None}, 'description': {'type': 'string', 'maxLength': 2000, 'minLength': 1}, 'thickness_in': {'anyOf': [{'type': 'number', 'maximum': 12, 'exclusiveMinimum': 0}, {'type': 'null'}], 'default': None}}}
get_quote
Get a quote
Get a quote quote_plate or quote_product made, by its id, exactly as it was priced. Its status reads expired once it is past expires_at: ask for a new quote then. A quote is kept 30 days past its expiry.
읽기 전용
입력 스키마
{'type': 'object', 'required': ['quote_id'], 'properties': {'quote_id': {'type': 'string', 'maxLength': 64, 'minLength': 1}}}
list_materials
List plate materials
List the plate materials Steady Steel laser cuts, each with every thickness sold in it (thickness_in, inches), whether it is stocked, and a lead time in business days. Call it before quote_plate: a plate quote takes a material id and a thickness_in exactly as listed here. Empty while plate is not quoted online.
읽기 전용
입력 스키마
{'type': 'object', 'properties': {}}
quote_plate
Quote a cut plate
Price one flat plate of steel, stainless or aluminum, laser cut to an outline with holes, slots and bends, at a firm price from the engine behind the plate quoter on steadysteel.org. Every length is inches, +x right and +y up. material and thickness_in must be exactly as list_materials gives them. The outline is a rectangle, circle, ring (a washer) or polygon; holes and bends use its frame, and for a rectangle, circle or ring the origin is the lower-left corner of the box around it. quantity is how many (1 to 999), and quantity_options prices up to five other quantities. A part that cannot be made as asked comes back blocked, with an issue saying why: change it and quote again. Amounts are CAD cents with HST as its own figure, firm until expires_at. Show the person the drawing at preview_url. Nothing is bought here: to order, make a link with create_handoff_link and give it to the person, who checks the part and pays on steadysteel.org.
입력 스키마
{'type': 'object', 'required': ['material', 'thickness_in', 'outline'], 'properties': {'bends': {'type': 'array', 'items': {'type': 'object', 'required': ['start_in', 'end_in'], 'properties': {'end_in': {'type': 'array', 'maxItems': 2, 'minItems': 2, 'prefixItems': [{'type': 'number', 'maximum': 120, 'minimum': 0}, {'type': 'number', 'maximum': 120, 'minimum': 0}]}, 'start_in': {'type': 'array', 'maxItems': 2, 'minItems': 2, 'prefixItems': [{'type': 'number', 'maximum': 120, 'minimum': 0}, {'type': 'number', 'maximum': 120, 'minimum': 0}]}, 'angle_deg': {'type': 'number', 'default': 90.0, 'maximum': 180, 'exclusiveMinimum': 0}, 'direction': {'enum': ['up', 'down'], 'type': 'string', 'default': 'up'}}, 'description': "A straight fold across the whole part, on the line through start_in\nand end_in ([x, y] in the item's frame; any two points on the line).\nangle_deg is how far it folds: 90 is a square bend. direction is up (a\nmountain fold seen from above) or down (a valley fold); it does not\nchange the price.", 'additionalProperties': False}, 'maxItems': 10}, 'holes': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['kind', 'x_in', 'y_in', 'diameter_in'], 'properties': {'kind': {'type': 'string', 'const': 'single'}, 'x_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'y_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'One round hole diameter_in across, centred at (x_in, y_in).', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'start_x_in', 'start_y_in', 'count', 'spacing_in', 'diameter_in'], 'properties': {'kind': {'type': 'string', 'const': 'linear'}, 'count': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'angle_deg': {'type': 'number', 'default': 0.0, 'maximum': 360, 'minimum': -360}, 'spacing_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'start_x_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'start_y_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'count round holes in a row. The first is centred at\n(start_x_in, start_y_in) and each one after it is spacing_in further\nalong angle_deg: 0 runs right, 90 runs up.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'center_x_in', 'center_y_in', 'columns', 'rows', 'x_spacing_in', 'y_spacing_in', 'diameter_in'], 'properties': {'kind': {'type': 'string', 'const': 'grid'}, 'rows': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'columns': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'center_x_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'center_y_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'rotation_deg': {'type': 'number', 'default': 0.0, 'maximum': 360, 'minimum': -360}, 'x_spacing_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'y_spacing_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'A grid of round holes, columns across and rows up, centred on\n(center_x_in, center_y_in). The spacings are centre to centre, and\nrotation_deg turns the whole grid about its centre, counter-clockwise.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'center_x_in', 'center_y_in', 'count', 'bolt_circle_diameter_in', 'diameter_in'], 'properties': {'kind': {'type': 'string', 'const': 'bolt_circle'}, 'count': {'type': 'integer', 'maximum': 100, 'minimum': 2}, 'center_x_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'center_y_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'start_angle_deg': {'type': 'number', 'default': 0.0, 'maximum': 360, 'minimum': -360}, 'bolt_circle_diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'count round holes spaced evenly on a circle bolt_circle_diameter_in\nacross, centred on (center_x_in, center_y_in). The first hole sits at\nstart_angle_deg, counter-clockwise from +x.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'center_x_in', 'center_y_in', 'width_in', 'length_in'], 'properties': {'kind': {'type': 'string', 'const': 'slot'}, 'width_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'angle_deg': {'type': 'number', 'default': 0.0, 'maximum': 360, 'minimum': -360}, 'length_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'center_x_in': {'type': 'number', 'maximum': 120, 'minimum': 0}, 'center_y_in': {'type': 'number', 'maximum': 120, 'minimum': 0}}, 'description': 'A slot with round ends, width_in across and length_in from tip to\ntip, centred on (center_x_in, center_y_in). angle_deg turns its long\naxis counter-clockwise from +x.', 'additionalProperties': False}]}, 'maxItems': 200}, 'label': {'anyOf': [{'type': 'string', 'maxLength': 60}, {'type': 'null'}], 'default': None}, 'outline': {'oneOf': [{'type': 'object', 'required': ['kind', 'width_in', 'height_in'], 'properties': {'kind': {'type': 'string', 'const': 'rectangle'}, 'width_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'height_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'A rectangle width_in across and height_in up, its lower-left corner\non the origin.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'diameter_in'], 'properties': {'kind': {'type': 'string', 'const': 'circle'}, 'diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'A round plate diameter_in across. The origin is the lower-left\ncorner of the square around it, so the centre is at\n(diameter_in / 2, diameter_in / 2).', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'outer_diameter_in', 'inner_diameter_in'], 'properties': {'kind': {'type': 'string', 'const': 'ring'}, 'inner_diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}, 'outer_diameter_in': {'type': 'number', 'maximum': 120, 'exclusiveMinimum': 0}}, 'description': 'A washer: a round plate with a round bore on the same centre. The\norigin is the lower-left corner of the square around it. The wall,\nhalf the difference of the two diameters, must be at least 1/8 in.', 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'points_in'], 'properties': {'kind': {'type': 'string', 'const': 'polygon'}, 'points_in': {'type': 'array', 'items': {'type': 'array', 'maxItems': 2, 'minItems': 2, 'prefixItems': [{'type': 'number', 'maximum': 120, 'minimum': 0}, {'type': 'number', 'maximum': 120, 'minimum': 0}]}, 'maxItems': 200, 'minItems': 3}}, 'description': "A straight-sided outline: its corners in order around the part,\neither way round, each [x, y] in inches, 3 to 200 of them. The outline\ncloses itself; a last corner that repeats the first is dropped. The\ncorners set the frame, and the item's holes and bends use it too.", 'additionalProperties': False}]}, 'material': {'enum': ['mild_steel', 'stainless_304', 'stainless_316', 'aluminum_6061'], 'type': 'string'}, 'quantity': {'type': 'integer', 'default': 1, 'maximum': 999, 'minimum': 1}, 'thickness_in': {'type': 'number', 'maximum': 4, 'exclusiveMinimum': 0}, 'quantity_options': {'type': 'array', 'items': {'type': 'integer', 'maximum': 999, 'minimum': 1}, 'maxItems': 5}}}
quote_product
Quote a catalog product
Price a catalog product at its firm unit price: the slug and a tier from search_products (kit or welded), only a tier marked orderable. quantity is 1 to 50. Amounts are CAD cents before HST, with HST as its own figure. Freight is quoted by Steady Steel after the order and is not in the quote. Nothing is bought here: to order, make a link with create_handoff_link and give it to the person, who orders and pays on steadysteel.org.
입력 스키마
{'type': 'object', 'required': ['slug', 'tier'], 'properties': {'slug': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{1,80}$', 'maxLength': 80}, 'tier': {'enum': ['kit', 'welded'], 'type': 'string'}, 'label': {'anyOf': [{'type': 'string', 'maxLength': 60}, {'type': 'null'}], 'default': None}, 'quantity': {'type': 'integer', 'default': 1, 'maximum': 50, 'minimum': 1}, 'quantity_options': {'type': 'array', 'items': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'maxItems': 5}}}
search_products
Search catalog products
Find the pre-designed steel products Steady Steel sells on steadysteel.org/products, by words in their name or description; send no query to list them all. Each lists its tiers: kit (the steel cut to our drawings) and welded (built in our shop), with a firm unit price in CAD cents before HST. Only a tier marked orderable can be quoted. Freight on a kit or a welded unit is quoted by Steady Steel after the order.
읽기 전용
입력 스키마
{'type': 'object', 'properties': {'query': {'anyOf': [{'type': 'string', 'maxLength': 80}, {'type': 'null'}], 'default': None}}}
추가됨
create_rfq_link
2026년 9월 30일 2:40 AM
추가됨
create_handoff_link
2026년 9월 30일 2:40 AM
추가됨
get_quote
2026년 9월 30일 2:40 AM
추가됨
quote_product
2026년 9월 30일 2:40 AM
추가됨
quote_plate
2026년 9월 30일 2:40 AM
추가됨
search_products
2026년 9월 30일 2:40 AM
추가됨
list_materials
2026년 9월 30일 2:40 AM

a2a2p — Agent-to-Agent-to-Physical

com.a2a2p/a2a2p

Reviews physical product requirements, performs bounded beam engineering calculations and simulations, prepares supplier packages…

Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator

com.commonlands/optics-mcp

Matches M12 and C-mount lenses to image sensors, calculates field of view, provides optical specifications, and supports Shopify …

Depureco Industrial Vacuum Explorer

io.github.depurecoindustrialvacuums-boop/industrial-vacuum-explorer

Searches and configures industrial vacuum equipment by application, sector, certification, power, capacity, filtration, and techn…

SkoIA Parts

io.github.macacoengenhocas/skoia-parts

Resolves physical-part identification and compatibility problems, tracks evidence and missing observations, verifies proposed sol…

Zavod Stanki CNC Catalog

ru.zavod-stanki/cnc-catalog

Provides a catalog, search, comparison, pricing, configuration, and lead submission for CNC machinery.

Agentic Fabrication Network (AFN)

ai.agenticfabricationnetwork/ufp

Obtains quotes and places orders for 3D printing, CNC and sheet-metal fabrication, decals, and related manufacturing services.

catalog

ai.partsgraph/catalog

Searches electronic and mechanical parts using datasheet-backed specifications, compatibility checks, and priced bill-of-material…

site

com.telescopecomparehq/site

Provides telescope product dataset search, comparisons, rankings, statistics, and consent-based enquiries to human providers.