Server definition
- Hash
- sha256:7e7c3307ca2a8459f62ae01a7ec5aac78844f457793015508995994011529d4d
- What it is
- What a remote MCP server returned when asked what it offers: 12 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Find the official UNECE Rec. 20 engineering unit symbol for a given description. ALWAYS call this before using any engineering unit — NEVER guess unit symbols.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"query": {
"description": "Description or common name of the unit (e.g. \"revolutions per minute\", \"celsius\", \"pressure bar\")",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "find_engineering_unit",
"outputSchema": null
},
{
"description": "Find reusable Interfaces / AddIns by capability — pass a member name or keyword (e.g. \"SerialNumber\", \"DeviceHealth\", \"Location\") and get the standard blocks that already expose it. PREFER applying/composing an existing block over redefining its members inline. Interfaces are applied with `interfaces:`; addins (types with a DefaultInstanceBrowseName) are composed with `addIns:`. A single property → use the Interface; a whole named sub-object → use the AddIn.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"query": {
"description": "Member name or capability keyword (e.g. \"SerialNumber\", \"health\", \"calibration\")",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "find_reusable_block",
"outputSchema": null
},
{
"description": "Get the grammar reference for the OPC UA modeler YAML DSL: file header, top-level sections, name-prefix conventions, minimal examples, and common mistakes. Call this FIRST before writing any YAML model by hand. Works without an API key.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "get_dsl_reference",
"outputSchema": null
},
{
"description": "Get detailed information about a specific type: its components, properties, methods, interfaces, and optional members. Use this to understand a type's structure before creating instances or subtypes. `specRef`, on the type and on a member, is the link to the section of the specification that defines it: cite it.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"alias": {
"description": "Companion spec alias where the type is defined (e.g. \"machinery\")",
"type": "string"
},
"browseName": {
"description": "The type browse name (e.g. \"MachineryItemIdentificationType\")",
"type": "string"
}
},
"required": [
"alias",
"browseName"
],
"type": "object"
},
"name": "get_type_details",
"outputSchema": null
},
{
"description": "List all well-known OPC UA companion spec namespace aliases with their full names, URIs, and dependencies. Use this to discover what namespaces are available.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "list_namespaces",
"outputSchema": null
},
{
"description": "List ALL ObjectTypes, VariableTypes, and InterfaceTypes defined in a specific companion spec namespace. ALWAYS call this before using any type from a namespace — NEVER guess type names.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"alias": {
"description": "Companion spec alias (e.g. \"machinery\", \"di\", \"robotics\")",
"type": "string"
}
},
"required": [
"alias"
],
"type": "object"
},
"name": "list_types",
"outputSchema": null
},
{
"description": "Generate an OPC UA YAML model from a natural language description using AI. Requires an API key (set OPCUA_MODELER_API_KEY env var). The AI will auto-detect relevant companion specs, generate a validated model with documentation, and auto-correct validation errors.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"forceSpecs": {
"description": "Companion spec aliases to force (e.g. [\"di\", \"ia\"])",
"items": {
"type": "string"
},
"type": "array"
},
"prompt": {
"description": "Natural language description of the OPC UA model to generate",
"type": "string"
}
},
"required": [
"prompt"
],
"type": "object"
},
"name": "opcua_model_create",
"outputSchema": null
},
{
"description": "Generate OPC UA NodeSet2.xml and Symbols.CSV from a YAML model. Requires an API key (set OPCUA_MODELER_API_KEY env var). Returns base64-encoded artifacts if the model is valid, or diagnostics if validation fails. Optionally set include_docs=true to also generate markdown documentation.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"include_docs": {
"description": "Set to true to include markdown documentation (slower)",
"type": "boolean"
},
"yaml": {
"description": "The full YAML model source to generate from",
"type": "string"
}
},
"required": [
"yaml"
],
"type": "object"
},
"name": "opcua_model_generate",
"outputSchema": null
},
{
"description": "Reverse-engineer a NodeSet2.xml file back into the YAML DSL format. Requires an API key (set OPCUA_MODELER_API_KEY env var). Optionally specify the target namespace URI to extract.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"namespace_uri": {
"description": "Target namespace URI to extract (auto-detected if omitted)",
"type": "string"
},
"self_contained": {
"description": "Return one self-contained .opcua.yaml stream: the model, its NodeId symbol table and dependency declarations (default: bare YAML)",
"type": "boolean"
},
"xml": {
"description": "The NodeSet2.xml content to reverse-engineer",
"type": "string"
}
},
"required": [
"xml"
],
"type": "object"
},
"name": "opcua_model_reverse",
"outputSchema": null
},
{
"description": "Validate an OPC UA YAML model for correctness. Returns diagnostics with severity (error/warning/info), codes, messages, and line numbers. Works without an API key (limited to 50 calls/day). ALWAYS validate before generating.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"yaml": {
"description": "The full YAML model source to validate",
"type": "string"
}
},
"required": [
"yaml"
],
"type": "object"
},
"name": "opcua_model_validate",
"outputSchema": null
},
{
"description": "Given one or more companion spec namespace aliases, returns the full resolved dependency list that MUST go in the YAML `namespaces:` section. Always call this before generating the namespaces block.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"aliases": {
"description": "Companion spec aliases to resolve (e.g. [\"machineTool\", \"robotics\"])",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"aliases"
],
"type": "object"
},
"name": "resolve_dependencies",
"outputSchema": null
},
{
"description": "Search for types across ALL companion specs by keyword. Use this when you don't know which namespace defines a type. Returns matching types with their namespace alias.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"query": {
"description": "Search keyword (e.g. \"identification\", \"temperature\", \"motion\")",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search_types",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:7e7c3307ca2a8459f62ae01a7ec5aac78844f457793015508995994011529d4d | sha256sum