GPU rentals, scientific experiments, custom code, node sweeps and inspectable calculation reports.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer EMT Compute API key with the scopes needed by your workflow
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Attach work to an already rented dedicated 2–4-node cluster. Does NOT start SSH remotely: run emt_cluster.py locally with the returned job ID and your private key. Whole cluster stops on completion/cancel; billing continues during preparation.
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http emt-compute https://emtcompute.com/mcp \ --header 'Authorization: Bearer YOUR_TOKEN'
Headers
Authorization (required): Bearer EMT Compute API key with the scopes needed by your workflowAttach work to an already rented dedicated 2–4-node cluster. Does NOT start SSH remotely: run emt_cluster.py locally with the returned job ID and your private key. Whole cluster stops on completion/cancel; billing continues during preparation.
| Argument | Type | Description |
|---|---|---|
| ssh | string | |
| name* | string | |
| runs* | array | |
| seed | integer | |
| files | array | |
| level | string | |
| config | object | |
| experiment* | any | |
| maxMinutes | integer | |
| clusterOrder* | string | |
| releaseCluster* | boolean | |
| idempotency_key* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name",
"experiment",
"runs",
"clusterOrder",
"releaseCluster",
"idempotency_key"
],
"properties": {
"ssh": {
"type": "string",
"maxLength": 4096
},
"name": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"runs": {
"type": "array",
"items": {
"type": "object",
"required": [
"params"
],
"properties": {
"params": {
"type": "object",
"propertyNames": {
"maxLength": 64
},
"additionalProperties": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"maxLength": 2000
},
{
"type": "boolean"
}
]
}
}
},
"additionalProperties": false
},
"maxItems": 64,
"minItems": 1
},
"seed": {
"type": "integer",
"default": 0,
"maximum": 2147483648,
"minimum": 0
},
"files": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"default": [],
"maxItems": 20
},
"level": {
"enum": [
"student",
"lab",
"frontier"
],
"type": "string",
"default": "student"
},
"config": {
"type": "object",
"propertyNames": {
"maxLength": 64
},
"additionalProperties": {}
},
"experiment": {
"anyOf": [
{
"type": "object",
"required": [
"kind",
"preset"
],
"properties": {
"kind": {
"type": "string",
"const": "preset"
},
"preset": {
"type": "string",
"maxLength": 64
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"kind",
"entry"
],
"properties": {
"kind": {
"type": "string",
"const": "script"
},
"entry": {
"type": "string",
"pattern": "^[\\w][\\w .()+-]*\\.py$",
"maxLength": 120
},
"title": {
"type": "string",
"maxLength": 120
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"kind",
"command"
],
"properties": {
"kind": {
"type": "string",
"const": "command"
},
"setup": {
"type": "string",
"default": "",
"maxLength": 20000
},
"title": {
"type": "string",
"maxLength": 120
},
"command": {
"type": "string",
"maxLength": 20000,
"minLength": 1
},
"environment": {
"enum": [
"emt-lab",
"emt-lab-devel",
"emt-lab-jax"
],
"type": "string",
"default": "emt-lab"
}
},
"additionalProperties": false
}
]
},
"maxMinutes": {
"type": "integer",
"default": 60,
"maximum": 1440,
"minimum": 10
},
"clusterOrder": {
"type": "string",
"format": "uuid"
},
"releaseCluster": {
"type": "boolean",
"const": true
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]+$",
"maxLength": 120,
"minLength": 16
}
},
"additionalProperties": false
}Cancel an owned experiment and request release of all its GPU nodes or attached cluster. Unfinished work can be lost. Recheck releasing until false.
| Argument | Type | Description |
|---|---|---|
| job* | string | |
| confirm_stop* | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job",
"confirm_stop"
],
"properties": {
"job": {
"type": "string",
"format": "uuid"
},
"confirm_stop": {
"type": "boolean",
"const": true
}
},
"additionalProperties": false
}Current GPU offers. Prices in USD micro-units per GPU/hour; unknown metrics remain null. Paginated to keep responses small.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| model | string | |
| offset | integer |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 30,
"minimum": 1
},
"model": {
"type": "string",
"maxLength": 80
},
"offset": {
"type": "integer",
"default": 0,
"maximum": 100000,
"minimum": 0
}
},
"additionalProperties": false
}Quote selected whole nodes on one fabric without renting.
| Argument | Type | Description |
|---|---|---|
| hours* | integer | |
| nodes* | array | |
| cluster* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"cluster",
"nodes",
"hours"
],
"properties": {
"hours": {
"type": "integer",
"maximum": 720,
"minimum": 1
},
"nodes": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"maxItems": 16,
"minItems": 2
},
"cluster": {
"type": "string",
"maxLength": 300,
"minLength": 1
}
},
"additionalProperties": false
}Current whole-node cluster offers; fabric declarations do not establish independent EMT qualification.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Inspect an owned experiment and its authenticated result, output and calculation-report download links. Files are not sent into the model context.
| Argument | Type | Description |
|---|---|---|
| job* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"job"
],
"properties": {
"job": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}Owned experiment jobs, including reports and release state. Requires read scope.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}List scientific presets or inspect one preset's parameters, equations, methods and custom-input schema. Does not run a calculation.
| Argument | Type | Description |
|---|---|---|
| id | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "string",
"maxLength": 64
}
},
"additionalProperties": false
}Quote 1–4 nodes for an experiment; hours × hourly gives the GPU rental ceiling in micro-USD. Reserve is only an initial hold, not total cost.
| Argument | Type | Description |
|---|---|---|
| fp64 | boolean | |
| node | string | |
| count | integer | |
| model | string | |
| nodes | integer | |
| minVram | integer | |
| maxMinutes | integer | |
| environment | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"fp64": {
"type": "boolean",
"default": false
},
"node": {
"type": "string",
"maxLength": 200
},
"count": {
"type": "integer",
"default": 1,
"maximum": 8,
"minimum": 1
},
"model": {
"type": "string",
"maxLength": 80
},
"nodes": {
"type": "integer",
"default": 1,
"maximum": 4,
"minimum": 1
},
"minVram": {
"type": "integer",
"default": 8,
"maximum": 1024,
"minimum": 0
},
"maxMinutes": {
"type": "integer",
"default": 60,
"maximum": 1440,
"minimum": 10
},
"environment": {
"enum": [
"emt-lab",
"emt-lab-devel",
"emt-lab-jax"
],
"type": "string",
"default": "emt-lab"
}
},
"additionalProperties": false
}Metrics and lifecycle for an owned order. Missing telemetry is unknown.
| Argument | Type | Description |
|---|---|---|
| order* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order"
],
"properties": {
"order": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
}Owned GPU orders and lifecycle states. Requires read scope.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Create a fresh expiring GPU quote without renting or charging.
| Argument | Type | Description |
|---|---|---|
| node* | string | |
| count* | integer | |
| hours* | integer |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"node",
"count",
"hours"
],
"properties": {
"node": {
"type": "string",
"format": "uuid"
},
"count": {
"type": "integer",
"maximum": 256,
"minimum": 1
},
"hours": {
"type": "integer",
"maximum": 720,
"minimum": 1
}
},
"additionalProperties": false
}Start a PAID GPU rental. Requires explicit spending authorization, fresh quote, rent scope, credit and accepted terms. Store payload and key before requesting.
| Argument | Type | Description |
|---|---|---|
| ssh | string | |
| name* | string | |
| ports | integer | |
| quote* | string | |
| volume | string | |
| backups | boolean | |
| jupyter | boolean | |
| template* | string | |
| idempotency_key* | string | |
| confirm_paid_rental* | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"quote",
"name",
"template",
"confirm_paid_rental",
"idempotency_key"
],
"properties": {
"ssh": {
"type": "string",
"maxLength": 4096
},
"name": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"ports": {
"type": "integer",
"default": 10,
"maximum": 200,
"minimum": 0
},
"quote": {
"type": "string",
"format": "uuid"
},
"volume": {
"type": "string",
"format": "uuid"
},
"backups": {
"type": "boolean",
"default": false
},
"jupyter": {
"type": "boolean",
"default": false
},
"template": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]+$",
"maxLength": 120,
"minLength": 16
},
"confirm_paid_rental": {
"type": "boolean",
"const": true
}
},
"additionalProperties": false
}Start a PAID whole-node cluster rental. Public SSH key only. Confirm cost and fabric limits with the user first.
| Argument | Type | Description |
|---|---|---|
| ssh* | string | |
| name* | string | |
| quote* | string | |
| idempotency_key* | string | |
| confirm_paid_rental* | boolean | |
| acknowledgeSlowNetwork | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"quote",
"name",
"ssh",
"confirm_paid_rental",
"idempotency_key"
],
"properties": {
"ssh": {
"type": "string",
"maxLength": 4096
},
"name": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"quote": {
"type": "string",
"format": "uuid"
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]+$",
"maxLength": 120,
"minLength": 16
},
"confirm_paid_rental": {
"type": "boolean",
"const": true
},
"acknowledgeSlowNetwork": {
"type": "boolean",
"const": true
}
},
"additionalProperties": false
}Start a PAID scientific preset, customer script or command. Parameter sets distribute across quoted nodes; this does not automatically parallelize a single solver. Auto-continuation may rent additional segments up to its budget. Review all costs before confirming.
| Argument | Type | Description |
|---|---|---|
| ssh | string | |
| auto | object | |
| name* | string | |
| runs* | array | |
| seed | integer | |
| files | array | |
| level | string | |
| config | object | |
| quotes* | array | |
| resume | object | |
| experiment* | any |
Public GPU container templates for ordinary rentals.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Terminate every node in an owned rental. Local disks are deleted; retained volumes and backups remain billed. Inspect status until release is confirmed.
| Argument | Type | Description |
|---|---|---|
| order* | string | |
| confirm_local_data_loss* | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order",
"confirm_local_data_loss"
],
"properties": {
"order": {
"type": "string",
"format": "uuid"
},
"confirm_local_data_loss": {
"type": "boolean",
"const": true
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 4, 2026.
| idempotency_key* | string |
| confirm_paid_rental* | boolean |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"quotes",
"name",
"experiment",
"runs",
"confirm_paid_rental",
"idempotency_key"
],
"properties": {
"ssh": {
"type": "string",
"maxLength": 4096
},
"auto": {
"type": "object",
"required": [
"budgetMicro",
"maxSegments"
],
"properties": {
"budgetMicro": {
"type": "integer",
"maximum": 100000000000,
"minimum": 100000
},
"maxSegments": {
"type": "integer",
"maximum": 1000,
"minimum": 2
}
},
"additionalProperties": false
},
"name": {
"type": "string",
"maxLength": 80,
"minLength": 1
},
"runs": {
"type": "array",
"items": {
"type": "object",
"required": [
"params"
],
"properties": {
"params": {
"type": "object",
"propertyNames": {
"maxLength": 64
},
"additionalProperties": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"maxLength": 2000
},
{
"type": "boolean"
}
]
}
}
},
"additionalProperties": false
},
"maxItems": 64,
"minItems": 1
},
"seed": {
"type": "integer",
"default": 0,
"maximum": 2147483648,
"minimum": 0
},
"files": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"default": [],
"maxItems": 20
},
"level": {
"enum": [
"student",
"lab",
"frontier"
],
"type": "string",
"default": "student"
},
"config": {
"type": "object",
"propertyNames": {
"maxLength": 64
},
"additionalProperties": {}
},
"quotes": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"maxItems": 4,
"minItems": 1
},
"resume": {
"type": "object",
"required": [
"job"
],
"properties": {
"job": {
"type": "string",
"format": "uuid"
}
},
"additionalProperties": false
},
"experiment": {
"anyOf": [
{
"type": "object",
"required": [
"kind",
"preset"
],
"properties": {
"kind": {
"type": "string",
"const": "preset"
},
"preset": {
"type": "string",
"maxLength": 64
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"kind",
"entry"
],
"properties": {
"kind": {
"type": "string",
"const": "script"
},
"entry": {
"type": "string",
"pattern": "^[\\w][\\w .()+-]*\\.py$",
"maxLength": 120
},
"title": {
"type": "string",
"maxLength": 120
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"kind",
"command"
],
"properties": {
"kind": {
"type": "string",
"const": "command"
},
"setup": {
"type": "string",
"default": "",
"maxLength": 20000
},
"title": {
"type": "string",
"maxLength": 120
},
"command": {
"type": "string",
"maxLength": 20000,
"minLength": 1
},
"environment": {
"enum": [
"emt-lab",
"emt-lab-devel",
"emt-lab-jax"
],
"type": "string",
"default": "emt-lab"
}
},
"additionalProperties": false
}
]
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_.:-]+$",
"maxLength": 120,
"minLength": 16
},
"confirm_paid_rental": {
"type": "boolean",
"const": true
}
},
"additionalProperties": false
}