Crimp
Plan DC electrical systems: find components, calculate circuits, check designs and create drafts.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"crimp": {
"url": "https://crimp.studio/api/mcp"
}
}
}远程端点
https://crimp.studio/api/mcpstreamable-http它能做什么
工具清单
工具(5)
🟢search_components(query, category, limit, offset)
Search Crimp's catalog by name, manufacturer, model or ID. Returns stable catalog IDs and published component data; use get_component for terminals and full fields. Read-only; no AI model call.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 160
},
"category": {
"type": "string",
"enum": [
"battery",
"charger",
"solar",
"source",
"engine",
"distribution",
"load",
"monitor"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 10000
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"tool": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"apiVersion": {
"type": "string"
},
"engineVersion": {
"type": "string"
},
"schemaVersion": {
"type": "integer"
}
},
"required": [
"apiVersion",
"engineVersion",
"schemaVersion"
]
},
"data": {},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {}
},
"required": [
"code",
"message"
]
}
},
"required": [
"ok",
"tool",
"metadata"
]
}🟢get_component(catalogId)
Read one exact catalog component, including terminal IDs, electrical specs and known configuration. Catalog data does not verify an installed part or its protection evidence.
输入模式
{
"type": "object",
"properties": {
"catalogId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
},
"required": [
"catalogId"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"tool": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"apiVersion": {
"type": "string"
},
"engineVersion": {
"type": "string"
},
"schemaVersion": {
"type": "integer"
}
},
"required": [
"apiVersion",
"engineVersion",
"schemaVersion"
]
},
"data": {},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {}
},
"required": [
"code",
"message"
]
}
},
"required": [
"ok",
"tool",
"metadata"
]
}🟢calculate_circuit(kind, input, units)
Run the existing wire or DC-DC calculator deterministically. Every input field is required: use null for unknown numbers/options and an empty string for missing evidence. Unknown evidence stays unknown. kind=wire requires the wire input shape; kind=dc-dc requires the charger input shape. No fuse selection or installation certification.
输入模式
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"wire",
"dc-dc"
]
},
"input": {
"anyOf": [
{
"type": "object",
"properties": {
"voltageV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"currentA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"oneWayLengthM": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"dropPct": {
"anyOf": [
{
"anyOf": [
{
"type": "number",
"const": 3
},
{
"type": "number",
"const": 10
}
]
},
{
"type": "null"
}
]
},
"insulation": {
"anyOf": [
{
"type": "string",
"enum": [
"105",
"other"
]
},
{
"type": "null"
}
]
},
"environment": {
"anyOf": [
{
"type": "string",
"enum": [
"outside-30",
"engine-50",
"other"
]
},
{
"type": "null"
}
]
},
"routing": {
"anyOf": [
{
"type": "string",
"enum": [
"two-conductors",
"bundle",
"other"
]
},
{
"type": "null"
}
]
},
"bundleFactor": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"bundleEvidence": {
"type": "string",
"maxLength": 240
}
},
"required": [
"voltageV",
"currentA",
"oneWayLengthM",
"dropPct",
"insulation",
"environment",
"routing",
"bundleFactor",
"bundleEvidence"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"requestedOutputA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"inputVoltageV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"outputVoltageV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"efficiencyPct": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"efficiencyEvidence": {
"type": "string",
"maxLength": 240
},
"alternatorAvailableA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"vehicleLoadsA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"reserveA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"vehicleEvidence": {
"type": "string",
"maxLength": 240
},
"batteryMaxChargeA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"bmsMaxChargeA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"otherChargingA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"batteryEvidence": {
"type": "string",
"maxLength": 240
},
"bmsEvidence": {
"type": "string",
"maxLength": 240
},
"chargingPermitted": {
"type": [
"boolean",
"null"
]
},
"model": {
"type": "string",
"enum": [
"unselected",
"orion-xs-50",
"documented"
]
},
"modelTemperatureC": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"modelCoolingConfirmed": {
"type": [
"boolean",
"null"
]
},
"modelEvidence": {
"type": "string",
"maxLength": 240
},
"modelInputMinV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"modelInputMaxV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"modelOutputMinV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"modelOutputMaxV": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"modelInputMaxA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
},
"modelOutputMaxA": {
"anyOf": [
{
"type": "number",
"minimum": -1000000,
"maximum": 10000000
},
{
"type": "null"
}
]
}
},
"required": [
"requestedOutputA",
"inputVoltageV",
"outputVoltageV",
"efficiencyPct",
"efficiencyEvidence",
"alternatorAvailableA",
"vehicleLoadsA",
"reserveA",
"vehicleEvidence",
"batteryMaxChargeA",
"bmsMaxChargeA",
"otherChargingA",
"batteryEvidence",
"bmsEvidence",
"chargingPermitted",
"model",
"modelTemperatureC",
"modelCoolingConfirmed",
"modelEvidence",
"modelInputMinV",
"modelInputMaxV",
"modelOutputMinV",
"modelOutputMaxV",
"modelInputMaxA",
"modelOutputMaxA"
],
"additionalProperties": false
}
]
},
"units": {
"type": "string",
"enum": [
"metric",
"imperial"
]
}
},
"required": [
"kind",
"input"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"tool": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"apiVersion": {
"type": "string"
},
"engineVersion": {
"type": "string"
},
"schemaVersion": {
"type": "integer"
}
},
"required": [
"apiVersion",
"engineVersion",
"schemaVersion"
]
},
"data": {},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {}
},
"required": [
"code",
"message"
]
}
},
"required": [
"ok",
"tool",
"metadata"
]
}🟢analyze_system(system, autoSizeTargetPct)
Analyze an explicit current-schema System with Crimp's canonical sizing, diagnostics and energy engine. Read-only. Maximum 40 component nodes, 20 zones and 100 cables. Unknown fields, invalid references and other schema versions are rejected. Results preserve provisional currents, unknown fault protection and estimated inputs; no findings is not certification. No scenario sweep in v1.
输入模式
{
"type": "object",
"properties": {
"system": {
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"version": {
"type": "number",
"const": 17
},
"nodes": {
"maxItems": 60,
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": -1000000,
"maximum": 1000000
},
"y": {
"type": "number",
"minimum": -1000000,
"maximum": 1000000
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"parentId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"label": {
"type": "string",
"maxLength": 200
},
"kind": {
"type": "string",
"const": "component"
},
"definitionId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"customDefinition": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"name": {
"type": "string",
"maxLength": 200
},
"shortName": {
"type": "string",
"maxLength": 120
},
"subtitle": {
"type": "string",
"maxLength": 200
},
"category": {
"type": "string",
"enum": [
"battery",
"charger",
"solar",
"source",
"engine",
"distribution",
"load",
"monitor"
]
},
"manufacturer": {
"type": "string",
"maxLength": 120
},
"model": {
"type": "string",
"maxLength": 120
},
"description": {
"type": "string",
"maxLength": 2000
},
"terminals": {
"maxItems": 64,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"label": {
"type": "string",
"maxLength": 120
},
"polarity": {
"type": "string",
"enum": [
"positive",
"negative",
"ground",
"signal",
"neutral"
]
},
"direction": {
"type": "string",
"enum": [
"input",
"output",
"bidi"
]
},
"maxAmp": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"side": {
"type": "string",
"enum": [
"left",
"right",
"top",
"bottom"
]
},
"offset": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"color": {
"type": "string",
"maxLength": 40
}
},
"required": [
"id",
"label",
"polarity",
"direction",
"maxAmp",
"side",
"offset"
],
"additionalProperties": false
}
},
"internalDcConnections": {
"maxItems": 64,
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
{
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
],
"additionalItems": false,
"minItems": 2,
"maxItems": 2
}
},
"oneWayDcConnections": {
"maxItems": 64,
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
{
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
],
"additionalItems": false,
"minItems": 2,
"maxItems": 2
}
},
"currentShunt": {
"type": "object",
"properties": {
"batteryTerminalId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"systemTerminalId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"referenceTerminalId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
},
"required": [
"batteryTerminalId",
"systemTerminalId"
],
"additionalProperties": false
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 10000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 10000
},
"image": {
"type": "string",
"maxLength": 2048
},
"capacityAh": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"voltage": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"inputVoltage": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"outputVoltage": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"conversionEfficiency": {
"type": "number",
"minimum": 0.001,
"maximum": 1
},
"maxInputA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"hybridSourceOutputLimitA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"acVoltage": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"watts": {
"type": "number",
"minimum": 0,
"maximum": 10000000
},
"loadCurrentModel": {
"type": "string",
"enum": [
"constant-current",
"constant-power"
]
},
"ampDraw": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"ampOutput": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"ampSurge": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"isFuseBlock": {
"type": "boolean"
},
"outputCurrentLimitsA": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"additionalProperties": {
"type": "number",
"minimum": 0,
"maximum": 100000
}
},
"equipmentLimitExemption": {
"type": "string",
"enum": [
"fuse",
"busbar"
]
},
"fuseSlotType": {
"type": "string",
"enum": [
"ATC",
"MIDI",
"MAXI",
"MEGA",
"ANL",
"MRBF",
"ClassT",
"NH"
]
},
"interchangeableTerminalGroups": {
"maxItems": 64,
"type": "array",
"items": {
"minItems": 1,
"maxItems": 64,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
}
},
"renderVariant": {
"type": "string",
"enum": [
"card",
"switch",
"busbar",
"junction",
"chassis-ground",
"fuse-holder"
]
},
"dutyHoursPerDay": {
"type": "number",
"minimum": 0,
"maximum": 24
},
"alwaysOn": {
"type": "boolean"
},
"peakSunHoursDefault": {
"type": "number",
"minimum": 0,
"maximum": 24
},
"chargeAmpsTypical": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"chemistry": {
"type": "string",
"enum": [
"lifepo4",
"agm",
"lead-acid",
"gel"
]
},
"maxDischargeA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"maxChargeA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"shortCircuitA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"pvMaxVoc": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"pvVoc": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"pvMaxSeriesFuseA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"compatibleVoltages": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
}
},
"simulateStates": {
"type": "object",
"properties": {
"default": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"options": {
"minItems": 1,
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"label": {
"type": "string",
"maxLength": 120
},
"ampMultiplier": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"ampOverride": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"role": {
"type": "string",
"enum": [
"draw",
"output"
]
},
"intraLinks": {
"maxItems": 64,
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
{
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
],
"additionalItems": false,
"minItems": 2,
"maxItems": 2
}
}
},
"required": [
"id",
"label"
],
"additionalProperties": false
}
}
},
"required": [
"default",
"options"
],
"additionalProperties": false
},
"settings": {
"maxItems": 24,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"label": {
"type": "object",
"properties": {
"key": {
"type": "string",
"maxLength": 160
},
"vars": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "number",
"minimum": -1000000000,
"maximum": 1000000000
}
]
}
}
},
"required": [
"key"
],
"additionalProperties": false
},
"help": {
"type": "object",
"properties": {
"key": {
"type": "string",
"maxLength": 160
},
"vars": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "number",
"minimum": -1000000000,
"maximum": 1000000000
}
]
}
}
},
"required": [
"key"
],
"additionalProperties": false
},
"semantics": {
"type": "string",
"const": "disables-output"
},
"type": {
"type": "string",
"const": "toggle"
},
"default": {
"type": "boolean"
}
},
"required": [
"id",
"label",
"type",
"default"
],
"additionalProperties": false
}
},
"bms": {
"type": "object",
"properties": {
"placement": {
"type": "string",
"enum": [
"internal",
"external"
]
},
"switching": {
"anyOf": [
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"const": "signal"
}
},
"required": [
"mode"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"const": "fet"
},
"leg": {
"type": "string",
"enum": [
"negative",
"positive"
]
}
},
"required": [
"mode",
"leg"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"const": "contactor"
}
},
"required": [
"mode"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"const": "relay"
}
},
"required": [
"mode"
],
"additionalProperties": false
}
]
},
"continuousDischargeA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"continuousChargeA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"surge": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"amps": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"seconds": {
"anyOf": [
{
"type": "number",
"minimum": 0.000001,
"maximum": 86400
},
{
"type": "null"
}
]
}
},
"required": [
"amps",
"seconds"
],
"additionalProperties": false
}
},
"controls": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"charge-permit",
"discharge-permit",
"pre-alarm",
"alternator-field",
"heater",
"generic"
]
},
"kind": {
"type": "string",
"enum": [
"dry-contact",
"source",
"sink",
"opto"
]
},
"maxA": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"maxV": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
}
},
"required": [
"role",
"kind"
],
"additionalProperties": false
}
},
"requiresExternalSwitchgear": {
"type": "boolean"
},
"busSeparation": {
"type": "string",
"enum": [
"single",
"dual"
]
},
"lowTempChargeCutoffC": {
"type": "number",
"minimum": -100,
"maximum": 100
},
"lowTempDischargeCutoffC": {
"type": "number",
"minimum": -100,
"maximum": 100
},
"lowTempCutoffConfigurable": {
"type": "boolean"
},
"chemistrySupport": {
"maxItems": 16,
"type": "array",
"items": {
"type": "object",
"properties": {
"chemistry": {
"type": "string",
"enum": [
"lifepo4",
"li-ion",
"nmc",
"lto"
]
},
"cellsMin": {
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"cellsMax": {
"type": "integer",
"minimum": 1,
"maximum": 1000
}
},
"required": [
"chemistry",
"cellsMin",
"cellsMax"
],
"additionalProperties": false
}
},
"alternatorControl": {
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"enum": [
"charge-relay",
"ignition-cut",
"field-cut",
"can-regulator",
"current-limit"
]
}
},
"compatibleBatteryIds": {
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
}
},
"unpublished": {
"maxItems": 40,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
}
}
},
"required": [
"placement",
"switching",
"busSeparation"
],
"additionalProperties": false
},
"source": {
"type": "string",
"const": "ai"
},
"aiEstimatedFields": {
"maxItems": 60,
"type": "array",
"items": {
"type": "string",
"maxLength": 120
}
},
"aiAssumptions": {
"maxItems": 40,
"type": "array",
"items": {
"type": "string",
"maxLength": 500
}
}
},
"required": [
"id",
"name",
"category",
"terminals",
"width",
"height"
],
"additionalProperties": false
},
"notes": {
"type": "string",
"maxLength": 8000
},
"terminalOverrides": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"additionalProperties": {
"type": "object",
"properties": {
"side": {
"type": "string",
"enum": [
"left",
"right",
"top",
"bottom"
]
},
"offset": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"pinned": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"dutyHoursPerDayOverride": {
"type": "number",
"minimum": 0,
"maximum": 24
},
"alwaysOnOverride": {
"type": "boolean"
},
"rotation": {
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 90
},
{
"type": "number",
"const": 180
},
{
"type": "number",
"const": 270
}
]
},
"studCount": {
"type": "integer",
"minimum": 1,
"maximum": 64
},
"isFusebox": {
"type": "boolean"
},
"fuseAmp": {
"anyOf": [
{
"type": "number",
"minimum": 0,
"maximum": 100000
},
{
"type": "null"
}
]
},
"provisional": {
"type": "boolean"
},
"batteryFuse": {
"type": "object",
"properties": {
"ratingA": {
"type": "number",
"minimum": 0.01,
"maximum": 100000
},
"type": {
"type": "string",
"enum": [
"ATC",
"MIDI",
"MAXI",
"MEGA",
"ANL",
"MRBF",
"ClassT",
"NH"
]
}
},
"required": [
"ratingA"
],
"additionalProperties": false
},
"settings": {
"type": "object",
"propertyNames": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"additionalProperties": {
"type": "boolean"
}
},
"partEstimated": {
"type": "boolean"
}
},
"required": [
"id",
"position",
"kind",
"definitionId"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": -1000000,
"maximum": 1000000
},
"y": {
"type": "number",
"minimum": -1000000,
"maximum": 1000000
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"parentId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"label": {
"type": "string",
"maxLength": 200
},
"kind": {
"type": "string",
"const": "zone"
},
"width": {
"type": "number",
"minimum": 1,
"maximum": 1000000
},
"height": {
"type": "number",
"minimum": 1,
"maximum": 1000000
},
"color": {
"type": "string",
"maxLength": 40
},
"isEngineBay": {
"type": "boolean"
}
},
"required": [
"id",
"position",
"kind",
"width",
"height"
],
"additionalProperties": false
}
]
}
},
"cables": {
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"fromNodeId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"fromTerminalId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"toNodeId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"toTerminalId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"lengthM": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"lengthEstimated": {
"type": "boolean"
},
"wireSizeMm2Override": {
"anyOf": [
{
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
{
"type": "null"
}
]
},
"ampacityDerating": {
"type": "number",
"minimum": 0.01,
"maximum": 1
},
"fuseAmpOverride": {
"anyOf": [
{
"type": "number",
"minimum": 0,
"maximum": 100000
},
{
"type": "null"
}
]
},
"fuseAmpAuto": {
"type": "boolean"
},
"fuseTypeOverride": {
"type": "string",
"enum": [
"ATC",
"MIDI",
"MAXI",
"MEGA",
"ANL",
"MRBF",
"ClassT",
"NH"
]
},
"notes": {
"type": "string",
"maxLength": 8000
},
"label": {
"type": "string",
"maxLength": 200
},
"labelColor": {
"type": "string",
"maxLength": 100
},
"waypoints": {
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": -1000000,
"maximum": 1000000
},
"y": {
"type": "number",
"minimum": -1000000,
"maximum": 1000000
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
}
},
"vdropClass": {
"anyOf": [
{
"type": "string",
"enum": [
"critical",
"non-critical"
]
},
{
"type": "null"
}
]
},
"seriesLink": {
"type": "boolean"
}
},
"required": [
"id",
"fromNodeId",
"fromTerminalId",
"toNodeId",
"toTerminalId",
"lengthM"
],
"additionalProperties": false
}
},
"zoneDistances": {
"type": "object",
"propertyNames": {
"type": "string",
"maxLength": 201
},
"additionalProperties": {
"type": "number",
"minimum": 0,
"maximum": 1000
}
}
},
"required": [
"name",
"version",
"nodes",
"cables",
"zoneDistances"
],
"additionalProperties": false
},
"autoSizeTargetPct": {
"anyOf": [
{
"type": "number",
"const": 3
},
{
"type": "number",
"const": 5
}
]
}
},
"required": [
"system"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"tool": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"apiVersion": {
"type": "string"
},
"engineVersion": {
"type": "string"
},
"schemaVersion": {
"type": "integer"
}
},
"required": [
"apiVersion",
"engineVersion",
"schemaVersion"
]
},
"data": {},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {}
},
"required": [
"code",
"message"
]
}
},
"required": [
"ok",
"tool",
"metadata"
]
}🟢create_draft(draft)
Build and analyze a Crimp planning draft from exact catalog IDs and structured connections, without an AI model call. Agent provides physical lengths and provenance; Crimp selects terminals, layout, wire and fuse suggestions. Display the exact returned reviewUrl as a clickable HTTPS link labeled Review schematic in Crimp; do not substitute a local HTML wrapper. The link opens a view-only preview; Edit a copy is a separate explicit action that creates a new local project. At most 10 counted equipment items, 40 components and 100 cables. Does not save, replace or publish a user's project. Retain assumptions and review findings before installation.
输入模式
{
"type": "object",
"properties": {
"draft": {
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 200
},
"components": {
"minItems": 1,
"maxItems": 40,
"type": "array",
"items": {
"type": "object",
"properties": {
"ref": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"catalogId": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"label": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
]
},
"count": {
"type": "integer",
"minimum": 1,
"maximum": 8
},
"partEstimated": {
"type": "boolean"
},
"countEstimated": {
"type": "boolean"
}
},
"required": [
"ref",
"catalogId",
"label",
"count",
"partEstimated",
"countEstimated"
],
"additionalProperties": false
}
},
"connections": {
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"fromPort": {
"type": "string",
"enum": [
"input",
"output",
"any"
]
},
"to": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"pattern": "^[A-Za-z0-9_.-]+$"
},
"toPort": {
"type": "string",
"enum": [
"input",
"output",
"any"
]
},
"polarity": {
"type": "string",
"enum": [
"positive",
"negative"
]
},
"lengthM": {
"type": "number",
"minimum": 0.01,
"maximum": 1000
},
"lengthEstimated": {
"type": "boolean"
},
"marker": {
"anyOf": [
{
"type": "string",
"maxLength": 120
},
{
"type": "null"
}
]
},
"seriesLink": {
"type": "boolean"
}
},
"required": [
"from",
"fromPort",
"to",
"toPort",
"polarity",
"lengthM",
"lengthEstimated",
"marker",
"seriesLink"
],
"additionalProperties": false
}
},
"assumptions": {
"maxItems": 40,
"type": "array",
"items": {
"type": "string",
"maxLength": 500
}
}
},
"required": [
"name",
"components",
"connections",
"assumptions"
],
"additionalProperties": false
}
},
"required": [
"draft"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"tool": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"apiVersion": {
"type": "string"
},
"engineVersion": {
"type": "string"
},
"schemaVersion": {
"type": "integer"
}
},
"required": [
"apiVersion",
"engineVersion",
"schemaVersion"
]
},
"data": {},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"details": {}
},
"required": [
"code",
"message"
]
}
},
"required": [
"ok",
"tool",
"metadata"
]
}社区
证据