Make your factory machine-readable
v0.4 · betaA Markdown file with YAML frontmatter describes a factory's capabilities, certifications, and endpoints — readable by humans, AI agents, and procurement platforms alike. Structured frontmatter for search and filtering, rich Markdown body for everything else.
Create a factory.md file with 4 required frontmatter fields
Add recommended frontmatter fields and Markdown body sections
Serve at /.well-known/factory.md on your domain
---
schema: "https://factoryschema.org/v0.4/factory.schema.json"
name: "Midwest Sheet Metal Supply"
location: "Chicago, IL, US"
vertical: sheet-metal
capabilities:
- Sheet metal supply
- Cut-to-size blanks
- Shearing
- Slitting
certifications:
- ISO 9001:2015
website: "https://midwestsheet.example.com"
email: sales@midwestsheet.example.com
updated_at: "2026-05-12"
has_inventory: true
has_rfq: true
skills:
- id: order-status
endpoint: https://acme.com/skills/order-status
auth: oauth2
description: Look up current state and expected ship date for a PO.
docs: https://skills.argotrade.io/order-status
---
# Midwest Sheet Metal Supply
Sheet metal supply and cut-to-size service for fabricators across the Midwest.
## Capabilities
Cold-rolled and hot-rolled steel, aluminum, stainless. Shearing to ±0.5 mm, slitting to ±0.25 mm.
## Quality
Mill test reports on every coil. ISO 9001:2015 certified.
4 fields required: schema, name, location, vertical. Everything else is recommended or optional.
Hosted at a RFC 8615 well-known URI. AI agents and platforms find your factory without any prior knowledge of your site structure.
Start with just 4 required fields. Add capabilities, certifications, and rich Markdown descriptions as you go.
YAML frontmatter validated against JSON Schema Draft 2020-12. Structured data for search and filtering.
The Markdown body is natural language — readable by factory owners, procurement teams, and LLMs without any parsing. Describe your factory in your own words.
Factory.md has two layers: structured YAML frontmatter for discovery and indexing, and a free-form Markdown body for rich descriptions.
schema req — Schema URI for validationname req — Factory trade namelocation req — String or structured objectvertical req — Industry vertical (e.g. "machining", "pcb", "sheet-metal")capabilities — Array of process stringscertifications — Array of certification stringswebsite — Factory website URLemail — Contact email addressupdated_at — Date the profile was last updated (YYYY-MM-DD)has_inventory — Boolean: exposes inventory datahas_rfq — Boolean: accepts RFQ submissionsskills — Array of callable skill endpointsFour required fields: schema, name, location, vertical. All other frontmatter fields are recommended.
has_inventory: true)has_rfq: true)skills is present)All body sections are optional. Write what matters for your factory.
A flat array of strings, e.g. ["ISO 9001:2015", "AS9100D", "ITAR"].
Additional detail (issuing body, certificate ID, issue/expiry dates, verification URL) belongs in the Markdown body's Certifications section.
"Shenzhen, CN"city req, country req (ISO 3166-1 alpha-2)region, postal_code, timezone, coordinatesReal-world factory profiles across manufacturing verticals.
---
schema: "https://factoryschema.org/v0.4/factory.schema.json"
name: "Precision Works Manufacturing Co."
location:
city: Shenzhen
region: Guangdong
country: CN
timezone: Asia/Shanghai
coordinates: { lat: 22.5431, lng: 114.0579 }
vertical: machining
capabilities:
- 5-axis CNC milling
- CNC turning
- wire EDM
- sinker EDM
- surface grinding
- cylindrical grinding
- jig boring
certifications:
- "ISO 9001:2015"
- AS9100D
- ITAR Registered
website: "https://precisionworks.example.com"
email: sales@precisionworks.example.com
updated_at: "2026-05-12"
has_inventory: false
has_rfq: true
skills:
- id: rfq-submit
endpoint: https://precisionworks.argo.trade/agent/rfq
auth: nda
description: Submit a Request for Quote for CNC-machined parts.
docs: https://precisionworks.argo.trade/docs/rfq-submit
- id: quote-status
endpoint: https://precisionworks.argo.trade/agent/quote-status
auth: open
description: Look up the status and quoted price of a previously submitted RFQ.
docs: https://precisionworks.argo.trade/docs/quote-status
---
# Precision Works Manufacturing Co.
High-precision CNC machining facility specializing in
aerospace and medical-grade components. Founded 2008.
120-150 employees. Languages: Chinese, English.
## Capabilities
### Materials
Aluminum 6061-T6, aluminum 7075-T6, titanium Ti-6Al-4V,
stainless steel 304/316L/17-4 PH, Inconel 718, PEEK...
### Equipment
| Equipment | Type | Count | Key Specs |
|-----------|------|-------|-----------|
| DMG Mori DMU 50 | 5-axis CNC mill | 4 | 500x450x400mm, 20k RPM |
| Mazak QTN-200 | CNC lathe | 6 | 300mm dia, live tooling |
### Tolerances
- **Standard:** +/-0.025 mm (ISO 2768-m)
- **Precision:** +/-0.002 mm
### Constraints
- **MOQ:** 1-10,000 pieces
- **Lead time:** 10-35 days (5 days samples, expedite available)
## Quality
100% first article inspection, SPC on production runs.
Defect rate: 800 PPM.
## Compliance
**IP protection:** NDA required. Isolated production cells.
**Export controls:** ITAR, EAR
---
schema: "https://factoryschema.org/v0.4/factory.schema.json"
name: "TaiPCB Technology Co., Ltd."
location:
city: Taoyuan
country: TW
timezone: Asia/Taipei
vertical: pcb
capabilities:
- multilayer PCB fabrication
- HDI (High Density Interconnect)
- flex-rigid PCB
- impedance control
- blind/buried vias
- heavy copper (up to 6 oz)
certifications:
- "ISO 9001:2015"
- "IATF 16949:2016"
- UL Listed
- "ISO 14001:2015"
website: "https://taipcb.example.com"
email: rfq@taipcb.example.com
updated_at: "2026-05-12"
has_inventory: false
has_rfq: true
skills:
- id: rfq-intake
endpoint: https://taipcb.argo.trade/skills/rfq-intake
auth: nda
description: Submit Gerbers, drill files, quantities, and board requirements for quoting.
docs: https://taipcb.argo.trade/docs/rfq-intake
- id: order-status
endpoint: https://taipcb.argo.trade/skills/order-status
auth: oauth2
description: Look up current state and expected ship date for a PO.
docs: https://taipcb.argo.trade/docs/order-status
---
# TaiPCB Technology Co., Ltd.
Advanced multilayer and HDI PCB fabrication for automotive,
telecom, and industrial applications. Founded 2003.
300-350 employees. Languages: Chinese, English, Japanese.
## Capabilities
### PCB Specifications
- **Max layers:** 32
- **Min trace/space:** 2.5 mil (63 um)
- **Min via diameter:** 0.1 mm
- **Max copper weight:** 6 oz
- **Board thickness:** 0.4-6.0 mm
### Materials
FR-4 (Tg 170C), FR-4 high-Tg, Rogers RO4350B,
polyimide, aluminum-backed, Isola 370HR.
### Constraints
- **MOQ:** 5-50,000 panels
- **Lead time:** 5-25 days (3 days samples)
- **Capacity:** 15,000 panels/month
## Quality
AOI after each imaging step, 100% electrical test.
Defect rate: 500 PPM.
---
schema: "https://factoryschema.org/v0.4/factory.schema.json"
name: "Sunrise Textiles Pvt. Ltd."
location:
city: Tirupur
region: Tamil Nadu
country: IN
timezone: Asia/Kolkata
vertical: textiles
capabilities:
- knitting
- dyeing
- cut-and-sew
- embroidery
- screen printing
- sublimation printing
- garment washing
certifications:
- GOTS
- OEKO-TEX Standard 100
- GRS (Global Recycled Standard)
- "ISO 9001:2015"
website: "https://sunrisetextiles.example.com"
email: orders@sunrisetextiles.example.com
updated_at: "2026-05-12"
has_inventory: false
has_rfq: true
skills:
- id: rfq-intake
endpoint: https://sunrise.argo.trade/skills/rfq-intake
auth: nda
description: Submit garment tech packs, artwork, quantities, and delivery requirements for quoting.
docs: https://sunrise.argo.trade/docs/rfq-intake
- id: sample-status
endpoint: https://sunrise.argo.trade/skills/sample-status
auth: oauth2
description: Track sample room status and expected completion date.
docs: https://sunrise.argo.trade/docs/sample-status
---
# Sunrise Textiles Pvt. Ltd.
Vertically integrated knit garment manufacturer specializing
in organic cotton basics and activewear. Founded 1997.
500-600 employees. Languages: Tamil, English, Hindi.
## Capabilities
### Fabric Types
Jersey, interlock, rib, pique, french terry, fleece.
GSM range: 120-400.
### Garment Types
T-shirts, polo shirts, hoodies, joggers, leggings, tank tops.
Size range: XS-5XL. Color matching: Pantone TPX/TCX.
### Materials
Organic cotton, BCI cotton, cotton-polyester blends,
recycled polyester, Tencel/lyocell, bamboo viscose.
### Constraints
- **MOQ:** 500-50,000 pieces
- **Lead time:** 21-45 days (10 days samples)
- **Capacity:** 50,000 pieces/month
## Quality
AQL 2.5 final inspection, inline QC at cutting and sewing.
Defect rate: 2,500 PPM.
## Compliance
**Environmental:** GOTS, GRS, zero liquid discharge dyeing,
solar-powered knitting unit.
**Social:** BSCI, SEDEX/SMETA 4-pillar.
Key sections from the full specification.
A factory.md file SHOULD be hosted at the well-known URI per RFC 8615:
https://{domain}/.well-known/factory.md
Content-Type: text/markdown; charset=utf-8Cache-Control: max-age=86400 (24 hours)/factory.md)| Field | Type | Description |
|---|---|---|
schema | string | Schema URI for validation |
name | string | Trade name of the factory (non-empty) |
location | string | object | Factory location — string shorthand or structured object with city, country, coordinates |
vertical | string | Industry vertical (e.g. "machining", "pcb", "textiles") |
| Field | Type | Description |
|---|---|---|
capabilities | string[] | Manufacturing processes offered (free-form strings) |
certifications | string[] | Industry certifications |
website | string | Factory website URL |
email | string | Contact email address |
skills | object[] | Callable skill endpoints with id, endpoint, and auth |
Factory.md separates structured data (YAML frontmatter) from rich descriptions (Markdown body):
NO, AT).Factory.md v0.4 puts machine-callable factory workflows directly in YAML frontmatter, so agents can discover the right endpoint without depending on a separate card format.
Each skill has a stable ID, a callable endpoint, and an auth mode. Descriptions and docs URLs are optional but recommended for human review and implementation detail.
skills:
- id: order-status
endpoint: https://acme.com/skills/order-status
auth: oauth2
description: Look up current state and expected ship date for a PO.
docs: https://skills.argotrade.io/order-status
| Field | Required | Description |
|---|---|---|
id | Yes | Stable kebab-case identifier, e.g. order-status |
endpoint | Yes | HTTPS URI agents can call for this skill |
auth | Yes | Authentication mode — one of open, api-key, oauth2, mtls, or nda |
version | No | Skill version (integer ≥ 1). Defaults to 1; omit unless greater |
description | No | Short human-readable summary of what the skill does |
docs | No | Documentation URL for inputs, outputs, examples, rate limits, and errors |
| Skill | Typical Use | Common Auth |
|---|---|---|
rfq-submit | Submit drawings, quantities, material, and delivery requirements | nda or oauth2 |
rfq-schema | Read the factory's RFQ requirements (required files, fields, and formats) | open |
order-status | Look up production state and expected ship date for a PO | oauth2 |
quote-status | Check whether a quote is submitted, in review, blocked, or completed | open or oauth2 |
certificate-retrieval | Fetch current compliance certificates and expiry dates | open |
capability-query | Ask whether the factory can make a given part or process | open |
The frontmatter is the discovery layer. Use the Markdown body or the skill docs URL for schemas, MIME types, examples, async behavior, webhook callbacks, and rate limits.
Serve your factory.md at the well-known URI so AI agents and platforms can discover it.
Start with the minimal example and add frontmatter fields and Markdown body sections. Validate frontmatter against the JSON Schema.
Set up a route to serve the file at /.well-known/factory.md:
location = /.well-known/factory.md {
alias /var/www/factory.md;
default_type "text/markdown; charset=utf-8";
add_header Cache-Control "public, max-age=86400";
add_header Access-Control-Allow-Origin "*";
}
RewriteEngine On
RewriteRule ^\.well-known/factory\.md$ /factory.md [L]
<Files "factory.md">
ForceType "text/markdown; charset=utf-8"
Header set Cache-Control "public, max-age=86400"
Header set Access-Control-Allow-Origin "*"
</Files>
handle /.well-known/factory.md {
root * /var/www
rewrite * /factory.md
file_server
header Content-Type "text/markdown; charset=utf-8"
header Cache-Control "public, max-age=86400"
header Access-Control-Allow-Origin "*"
}
curl -s https://yourdomain.com/.well-known/factory.md | head -20
To expose machine-callable workflows to AI agents and procurement platforms:
skills array to your factory.md frontmatterid, callable endpoint, and auth modedescription and a docs URL for input/output detailsSee the Callable Skills section for the recommended frontmatter shape.
Factory.md is an open standard, currently in beta. Contributions are welcome.
Open a GitHub Issue with the proposed field, section, or change — including motivation and example. Proposals are discussed for at least 14 days before a decision.
Found a schema validation issue or spec error? Open an issue with a reproduction example.
Fork, branch from main, update the schema + SPEC.md + examples, and open a pull request.