Factory.md

Make your factory machine-readable

v0.4 · beta

A 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.

Quick Start

1

Create

Create a factory.md file with 4 required frontmatter fields

2

Describe

Add recommended frontmatter fields and Markdown body sections

3

Validate

Validate frontmatter against the JSON Schema

4

Host

Serve at /.well-known/factory.md on your domain

Minimal Example
---
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.

Why Factory.md

🔍

Discoverable

Hosted at a RFC 8615 well-known URI. AI agents and platforms find your factory without any prior knowledge of your site structure.

✏️

Minimal

Start with just 4 required fields. Add capabilities, certifications, and rich Markdown descriptions as you go.

Machine-Readable

YAML frontmatter validated against JSON Schema Draft 2020-12. Structured data for search and filtering.

📖

Human-Readable

The Markdown body is natural language — readable by factory owners, procurement teams, and LLMs without any parsing. Describe your factory in your own words.

Schema Overview

Factory.md has two layers: structured YAML frontmatter for discovery and indexing, and a free-form Markdown body for rich descriptions.

Frontmatter Fields

  • schema req — Schema URI for validation
  • name req — Factory trade name
  • location req — String or structured object
  • vertical req — Industry vertical (e.g. "machining", "pcb", "sheet-metal")
  • capabilities — Array of process strings
  • certifications — Array of certification strings
  • website — Factory website URL
  • email — Contact email address
  • updated_at — Date the profile was last updated (YYYY-MM-DD)
  • has_inventory — Boolean: exposes inventory data
  • has_rfq — Boolean: accepts RFQ submissions
  • skills — Array of callable skill endpoints

Four required fields: schema, name, location, vertical. All other frontmatter fields are recommended.

Recommended Body Sections

  • Summary — One-paragraph description of what the factory does and who it serves
  • Capabilities — Process detail, finishes, tolerances, MOQ, engineering services
  • Inventory — What's stocked and how to access the feed (if has_inventory: true)
  • RFQ — Submission endpoint, required fields/files, NDA (if has_rfq: true)
  • Certifications & Compliance — Cert detail, IP protection, export controls, environmental, social
  • Quality — QC process, testing, inspection equipment, documentation, defect rates
  • Materials — Materials worked, by family, with grades and standards
  • Equipment — Major equipment with model, count, key specs (tables recommended)
  • Lead Times — By order type (sample, prototype, production), with expedite options
  • Shipping and Logistics — Incoterms, methods, markets, packaging, payment
  • Agent Access — Skill inputs, outputs, auth, docs, and operational details (if skills is present)
  • Contacts — Sales, engineering, quality contacts; business hours
  • About — Legal name, industries served, founded year, employees, languages

All body sections are optional. Write what matters for your factory.

Certifications

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.

Location

  • Shorthand: "Shenzhen, CN"
  • Or structured object:
  • city req, country req (ISO 3166-1 alpha-2)
  • region, postal_code, timezone, coordinates

Examples

Real-world factory profiles across manufacturing verticals.

Precision Works Manufacturing Co. — Aerospace-grade CNC machining in Shenzhen, China. 5-axis milling, wire EDM, AS9100D certified.
factory-machine-shop.md
---
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
TaiPCB Technology Co., Ltd. — Multilayer and HDI PCB fabrication in Taoyuan, Taiwan. Up to 32 layers, 2.5 mil trace/space. IATF 16949 and UL certified.
factory-pcb-fab.md
---
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.
Sunrise Textiles Pvt. Ltd. — Vertically integrated knit garment manufacturer in Tirupur, India. Organic cotton, GOTS certified, XS-5XL.
factory-textile.md
---
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.

Specification Highlights

Key sections from the full specification.

Discovery Mechanism

A factory.md file SHOULD be hosted at the well-known URI per RFC 8615:

https://{domain}/.well-known/factory.md
  • MUST be served over HTTPS
  • MUST use Content-Type: text/markdown; charset=utf-8
  • SHOULD set Cache-Control: max-age=86400 (24 hours)
  • MAY also be hosted at alternative paths (e.g. /factory.md)

Required Fields

FieldTypeDescription
schemastringSchema URI for validation
namestringTrade name of the factory (non-empty)
locationstring | objectFactory location — string shorthand or structured object with city, country, coordinates
verticalstringIndustry vertical (e.g. "machining", "pcb", "textiles")

Recommended Fields

FieldTypeDescription
capabilitiesstring[]Manufacturing processes offered (free-form strings)
certificationsstring[]Industry certifications
websitestringFactory website URL
emailstringContact email address
skillsobject[]Callable skill endpoints with id, endpoint, and auth

Two-Layer Architecture

Factory.md separates structured data (YAML frontmatter) from rich descriptions (Markdown body):

  • Frontmatter — validated against JSON Schema. Used for programmatic search, filtering, indexing, and skill discovery.
  • Body — free-form Markdown. Readable by humans and LLMs. Contains detailed capabilities, quality processes, equipment tables, compliance narratives, and anything else the factory wants to share.

Security Considerations

  • The file is intended to be public. Do NOT include internal pricing, employee PII, API keys, or confidential customer lists.
  • MUST be served over HTTPS to prevent tampering.
  • Consumers SHOULD NOT treat data as verified — claims are self-reported.
  • Publishers SHOULD quote YAML values that could be misinterpreted (e.g. country codes NO, AT).
  • Publishers MAY implement rate limiting to prevent excessive crawling.

Read Full Specification

Callable Skills

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.

Recommended Schema

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.

factory.md frontmatter
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 Reference

FieldRequiredDescription
idYesStable kebab-case identifier, e.g. order-status
endpointYesHTTPS URI agents can call for this skill
authYesAuthentication mode — one of open, api-key, oauth2, mtls, or nda
versionNoSkill version (integer ≥ 1). Defaults to 1; omit unless greater
descriptionNoShort human-readable summary of what the skill does
docsNoDocumentation URL for inputs, outputs, examples, rate limits, and errors

Common Skills

SkillTypical UseCommon Auth
rfq-submitSubmit drawings, quantities, material, and delivery requirementsnda or oauth2
rfq-schemaRead the factory's RFQ requirements (required files, fields, and formats)open
order-statusLook up production state and expected ship date for a POoauth2
quote-statusCheck whether a quote is submitted, in review, blocked, or completedopen or oauth2
certificate-retrievalFetch current compliance certificates and expiry datesopen
capability-queryAsk whether the factory can make a given part or processopen

Body Detail

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.

Adopt Factory.md

Serve your factory.md at the well-known URI so AI agents and platforms can discover it.

1. Create your file

Start with the minimal example and add frontmatter fields and Markdown body sections. Validate frontmatter against the JSON Schema.

2. Configure your web server

Set up a route to serve the file at /.well-known/factory.md:

Nginx
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 "*";
}
Apache
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>
Caddy
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 "*"
}

3. Verify

curl -s https://yourdomain.com/.well-known/factory.md | head -20

4. Add callable skills (Optional)

To expose machine-callable workflows to AI agents and procurement platforms:

  1. Add a skills array to your factory.md frontmatter
  2. Give each skill a stable id, callable endpoint, and auth mode
  3. Add a short description and a docs URL for input/output details
  4. Use the Markdown body for examples, caveats, MIME types, rate limits, and escalation paths

See the Callable Skills section for the recommended frontmatter shape.

Community

Factory.md is an open standard, currently in beta. Contributions are welcome.

Propose a Change

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.

Report a Bug

Found a schema validation issue or spec error? Open an issue with a reproduction example.

Submit a PR

Fork, branch from main, update the schema + SPEC.md + examples, and open a pull request.