Lambda Labs MCP by usefulapi
Read GPU instances, types, images, filesystems and firewall rules; launch and terminate instances.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"lambda-labs": {
"url": "https://lambda-labs.usefulapi.io/mcp"
}
}
}Remote endpoints
https://lambda-labs.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (15)
🟢lambda_list_instances
List your running GPU cloud instances (id, name, ip, status, region, instance_type, ssh_key_names, filesystems, jupyter_url). Lambda Cloud REST: GET /api/v1/instances.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_get_instance(id)
Get full details of a single instance by id (status, ip, region, instance_type, ssh/filesystem attachments, jupyter url, available actions). Lambda Cloud REST: GET /api/v1/instances/{id}.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The instance id."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_list_instance_types
List all GPU instance types with their specs (vcpus, memory, storage, gpus), hourly price (price_cents_per_hour), and which regions currently have capacity available. Use this to pick region_name + instance_type_name before launching. Lambda Cloud REST: GET /api/v1/instance-types.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_list_images
List available machine images (id, name, family, version, region availability) that can be selected when launching an instance. Lambda Cloud REST: GET /api/v1/images.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_list_filesystems
List your persistent filesystems (id, name, region, status, created_at) that can be attached to instances at launch. Lambda Cloud REST: GET /api/v1/file-systems.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_list_firewall_rules
List the account's inbound firewall rules (protocol, port range, source CIDR, description). Lambda Cloud REST: GET /api/v1/firewall-rules.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_list_firewall_rulesets
List firewall rulesets (id, name, region, rules) that can be applied to instances. Lambda Cloud REST: GET /api/v1/firewall-rulesets.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_get_firewall_ruleset(id)
Get a single firewall ruleset by id. Lambda Cloud REST: GET /api/v1/firewall-rulesets/{id}.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The firewall ruleset id."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢lambda_list_audit_events(start, end, resource_type, page_token)
List account audit-log events, optionally filtered by time window and resource type, with page_token pagination. Lambda Cloud REST: GET /api/v1/audit-events.
Input Schema
{
"type": "object",
"properties": {
"start": {
"description": "Only events at/after this ISO 8601 timestamp.",
"type": "string"
},
"end": {
"description": "Only events at/before this ISO 8601 timestamp.",
"type": "string"
},
"resource_type": {
"description": "Restrict to events on this resource type (e.g. 'instance', 'filesystem').",
"type": "string"
},
"page_token": {
"description": "Pagination token — pass the value returned by a previous page to fetch the next.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴lambda_launch_instance(region_name, instance_type_name, ssh_key_names, file_system_names, name, ...)
Launch one or more GPU cloud instances. COSTS MONEY: billing starts as soon as the instance boots (hourly rate per instance_type). Pick region_name + instance_type_name from lambda_list_instance_types (only regions with capacity available), and pass exactly one existing SSH key name in ssh_key_names (create keys in the Lambda dashboard). Lambda Cloud REST: POST /api/v1/instance-operations/launch.
Input Schema
{
"type": "object",
"properties": {
"region_name": {
"type": "string",
"description": "Region to launch in (e.g. 'us-east-1') — must have capacity for the type."
},
"instance_type_name": {
"type": "string",
"description": "Instance type to launch (e.g. 'gpu_1x_a100') — from lambda_list_instance_types."
},
"ssh_key_names": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Names of SSH keys to install (exactly one supported). The key must already exist in your account."
},
"file_system_names": {
"description": "Names of existing persistent filesystems to attach.",
"type": "array",
"items": {
"type": "string"
}
},
"name": {
"description": "A friendly name for the instance (max 64 chars).",
"type": "string",
"maxLength": 64
},
"hostname": {
"description": "Custom hostname (1-63 chars, lowercase alphanumeric and hyphens, pattern ^[a-z0-9][0-9a-z-]{0,62}$).",
"type": "string"
},
"image_id": {
"description": "Specific image id to boot (from lambda_list_images). Mutually exclusive with image_family.",
"type": "string"
},
"image_family": {
"description": "Image family to boot (latest in family). Mutually exclusive with image_id.",
"type": "string"
},
"user_data": {
"description": "cloud-init user-data script to run on first boot (max 1MB).",
"type": "string"
},
"tags": {
"description": "Key/value tags to attach to the instance.",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Tag key."
},
"value": {
"type": "string",
"description": "Tag value."
}
},
"required": [
"key",
"value"
],
"description": "A key/value tag."
}
},
"quantity": {
"description": "How many instances to launch (default 1). EACH one is billed separately.",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"region_name",
"instance_type_name",
"ssh_key_names"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴lambda_restart_instances(instance_ids)
Restart one or more running instances by id (a reboot — the instances are NOT destroyed and billing continues). Lambda Cloud REST: POST /api/v1/instance-operations/restart.
Input Schema
{
"type": "object",
"properties": {
"instance_ids": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Ids of the instances to restart."
}
},
"required": [
"instance_ids"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴lambda_terminate_instances(instance_ids)
Terminate (permanently destroy) one or more instances by id. This STOPS billing for them but DESTROYS the instances and any non-persistent data — persistent filesystems survive. Irreversible. Lambda Cloud REST: POST /api/v1/instance-operations/terminate.
Input Schema
{
"type": "object",
"properties": {
"instance_ids": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Ids of the instances to terminate (destroy)."
}
},
"required": [
"instance_ids"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴lambda_update_instance(id, name, tags)
Update a live instance's name and/or tags. Only provided fields are changed. Lambda Cloud REST: POST /api/v1/instances/{id}.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The instance id to update."
},
"name": {
"description": "New friendly name (max 64 chars).",
"type": "string",
"maxLength": 64
},
"tags": {
"description": "Replace the instance's key/value tags.",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Tag key."
},
"value": {
"type": "string",
"description": "Tag value."
}
},
"required": [
"key",
"value"
],
"description": "A key/value tag."
}
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴lambda_create_filesystem(name, region)
Create a new persistent filesystem in a region (can then be attached to instances at launch). Lambda Cloud REST: POST /api/v1/filesystems.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Filesystem name (1-60 chars, must start with a letter, then letters/digits/hyphens — pattern ^[a-zA-Z]+[0-9a-zA-Z-]*$)."
},
"region": {
"type": "string",
"description": "Region to create the filesystem in (e.g. 'us-east-1')."
}
},
"required": [
"name",
"region"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴lambda_delete_filesystem(id)
Delete a persistent filesystem by id. Irreversible — DESTROYS all data on it. The filesystem must not be attached to any instance. Lambda Cloud REST: DELETE /api/v1/filesystems/{id}.
Input Schema
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The filesystem id to delete."
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence