curl --request DELETE \
--url https://api.blaxel.ai/v0/functions/{functionName} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.blaxel.ai/v0/functions/{functionName}"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.blaxel.ai/v0/functions/{functionName}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.blaxel.ai/v0/functions/{functionName}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.blaxel.ai/v0/functions/{functionName}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.blaxel.ai/v0/functions/{functionName}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blaxel.ai/v0/functions/{functionName}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"metadata": {
"name": "my-resource",
"createdAt": "<string>",
"updatedAt": "<string>",
"createdBy": "<string>",
"updatedBy": "<string>",
"displayName": "My Resource",
"externalId": "my-session-123",
"labels": {},
"plan": "<string>",
"url": "<string>",
"workspace": "<string>"
},
"spec": {
"enabled": true,
"integrationConnections": [
"<string>"
],
"policies": [
"<string>"
],
"public": false,
"region": "us-pdx-1",
"revision": {
"active": "rev-abc123",
"canary": "<string>",
"canaryPercent": 10,
"stickySessionTtl": 0,
"traffic": 100
},
"runtime": {
"envs": [
{
"name": "MY_ENV_VAR",
"secret": true,
"value": "my-value"
}
],
"generation": "mk3",
"image": "<string>",
"maxScale": 10,
"memory": 2048,
"minScale": 0,
"ports": [
{
"target": 8080,
"name": "http",
"protocol": "HTTP"
}
],
"transport": "http-stream"
},
"triggers": [
{
"configuration": {
"authenticationType": "blaxel",
"callbackSecret": "<string>",
"callbackUrl": "https://myapp.com/webhook",
"path": "/invoke",
"retry": 3,
"schedule": "0 * * * *",
"tasks": [
{}
],
"timeout": 300
},
"enabled": true,
"id": "trigger-1",
"type": "http"
}
]
},
"events": [
{
"canaryRevision": "<string>",
"message": "Deployment successful",
"revision": "rev-abc123",
"status": "DEPLOYED",
"time": "2025-01-15T10:30:00Z",
"type": "deployment"
}
]
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}Delete MCP server
Permanently deletes an MCP server function and all its deployment history. Any agents using this function’s tools will no longer be able to invoke them.
curl --request DELETE \
--url https://api.blaxel.ai/v0/functions/{functionName} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.blaxel.ai/v0/functions/{functionName}"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.blaxel.ai/v0/functions/{functionName}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.blaxel.ai/v0/functions/{functionName}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.blaxel.ai/v0/functions/{functionName}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.blaxel.ai/v0/functions/{functionName}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blaxel.ai/v0/functions/{functionName}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"metadata": {
"name": "my-resource",
"createdAt": "<string>",
"updatedAt": "<string>",
"createdBy": "<string>",
"updatedBy": "<string>",
"displayName": "My Resource",
"externalId": "my-session-123",
"labels": {},
"plan": "<string>",
"url": "<string>",
"workspace": "<string>"
},
"spec": {
"enabled": true,
"integrationConnections": [
"<string>"
],
"policies": [
"<string>"
],
"public": false,
"region": "us-pdx-1",
"revision": {
"active": "rev-abc123",
"canary": "<string>",
"canaryPercent": 10,
"stickySessionTtl": 0,
"traffic": 100
},
"runtime": {
"envs": [
{
"name": "MY_ENV_VAR",
"secret": true,
"value": "my-value"
}
],
"generation": "mk3",
"image": "<string>",
"maxScale": 10,
"memory": 2048,
"minScale": 0,
"ports": [
{
"target": 8080,
"name": "http",
"protocol": "HTTP"
}
],
"transport": "http-stream"
},
"triggers": [
{
"configuration": {
"authenticationType": "blaxel",
"callbackSecret": "<string>",
"callbackUrl": "https://myapp.com/webhook",
"path": "/invoke",
"retry": 3,
"schedule": "0 * * * *",
"tasks": [
{}
],
"timeout": 300
},
"enabled": true,
"id": "trigger-1",
"type": "http"
}
]
},
"events": [
{
"canaryRevision": "<string>",
"message": "Deployment successful",
"revision": "rev-abc123",
"status": "DEPLOYED",
"time": "2025-01-15T10:30:00Z",
"type": "deployment"
}
]
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}{
"error": "Resource already exists",
"code": 409,
"message": "Invalid request body"
}Authorizations
OAuth2 authentication with JWT tokens
Path Parameters
Unique name identifier of the MCP server function
Response
successful operation
MCP server deployment that exposes tools for AI agents via the Model Context Protocol (MCP). Deployed as a serverless auto-scaling endpoint using streamable HTTP transport.
Common metadata fields shared by all Blaxel resources including name, labels, timestamps, and ownership information
Show child attributes
Show child attributes
Configuration for an MCP server function including runtime settings, transport protocol, and connected integrations
Show child attributes
Show child attributes
Events happening on a resource deployed on Blaxel
Show child attributes
Show child attributes
Deployment status of a resource deployed on Blaxel
DELETING, TERMINATED, FAILED, DEACTIVATED, DEACTIVATING, UPLOADING, BUILDING, DEPLOYING, DEPLOYED, BUILT Was this page helpful?
