FoundryNet for Agents
A machine-readable interface for any AI agent evaluating whether to use these tools. Everything below is structured so an agent can decide in one pass: what FoundryNet does, which machines it covers, how to connect, and how to verify results.
Capability manifest
Source of truth: /.well-known/agent-card.json
- machine_identity — Register any industrial machine with a persistent cryptographic identity that survives operator changes.
- telemetry_normalization — Translate raw OEM telemetry from 16 manufacturer families into one canonical vocabulary.
- natural_language_automation — Create operational automations from plain-English instructions with confirm-before-activate safety.
- work_attestation — Produce tamper-evident work records anchored to an immutable public ledger (opt-in).
- self_validation — Continuously red-team mapping accuracy with dimensional analysis and drift detection.
Use cases
- Cross-OEM fleet monitoring
- Equipment-as-a-service usage metering
- Machine credit scoring
- Autonomous factory operations
- Industrial agent orchestration
Supported OEMs (16 families)
Fanuc · Siemens · Haas · DMG Mori · Mazak · Okuma · Mitsubishi · Mori Seiki · Doosan · Hyundai-WIA · Hardinge · Komatsu · ABB · KUKA · Universal Robots · Yaskawa
Protocol
Model Context Protocol over SSE, bearer-key auth. Endpoint:
https://foundrynet-mcp-production.up.railway.app/mcp · 14 tools.
Connect an agent in 60 seconds
FoundryNet Forge is a Model Context Protocol (MCP) server — 14 tools over SSE, bearer-key auth. Add it to any MCP client (Claude Desktop, Cursor, an agent framework):
claude mcp add --transport sse foundrynet \
https://foundrynet-mcp-production.up.railway.app/mcp \
--header "Authorization: Bearer fnet_YOUR_KEY"
Or as JSON config:
{
"mcpServers": {
"foundrynet": {
"url": "https://foundrynet-mcp-production.up.railway.app/mcp",
"headers": { "Authorization": "Bearer fnet_YOUR_KEY" }
}
}
}
SDK quickstart — the full loop in four calls
# 1. resolve a stable identity
identify_machine(oem="Fanuc", model="R-2000iC", serial="F2209-8841")
# -> { "mint_id": "MINT-4de03b...", ... }
# 2. normalize raw OEM telemetry to canonical field names
normalize_telemetry(machine_id="MINT-4de03b", data={"Spindle_Speed": 11800, "servo_load_x": 73})
# -> { "spindle_speed_rpm": 11800, "axes.x_load_pct": 73, "coverage_pct": 100 }
# 3. create an automation in plain English (confirm before it activates)
create_automation(mint_id="MINT-4de03b",
instruction="Throttle the line when spindle load crosses 85% for 3 seconds")
# 4. verify what happened (opt-in attestation)
verify_on_chain(mint_id="MINT-4de03b")
# -> { "settled": 12, "merkle_root": "…" } # SHA-256 hashes only
Evaluating FoundryNet?
Read the Agent Card for the structured
capability/pricing/OEM manifest. Try it free — a fnet_ key gives 50 normalize
calls with no card. For the broader physical-agent ecosystem (every project connecting agents
to real machines, honestly listed), see PhysicalMCP.