Preview updating a directory server from its entry
curl --request POST \
--url https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview', 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.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview"
req, _ := http.NewRequest("POST", 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.post("https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"update": {
"drops_connections": true,
"from": {
"auth": "none",
"display_name": "<string>",
"headers": {},
"homepage": "<string>",
"url": "<string>"
},
"revision": "<string>",
"to": {
"auth": "none",
"display_name": "<string>",
"headers": {},
"homepage": "<string>",
"url": "<string>"
},
"to_revision": "<string>"
}
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"code": "mcp_server_key_invalid",
"error": "<string>"
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}MCP Servers
Preview updating a directory server from its entry
Reads the server’s integration directory entry again, probes its URL, and reports the display name, homepage, URL, headers and auth the update would move the server to, and whether its connections would go. Writes nothing. Refused with mcp_server_not_from_directory for a server not installed from the directory, integration_not_in_directory when the directory lists it no more, and integration_shape_changed when the directory installs it as a plugin now: delete it and install it again.
POST
/
mcp-servers
/
{mcpServerID}
/
directory-update-preview
Preview updating a directory server from its entry
curl --request POST \
--url https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview', 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.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
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.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview"
req, _ := http.NewRequest("POST", 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.post("https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.runaether.dev/v1/mcp-servers/{mcpServerID}/directory-update-preview")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"update": {
"drops_connections": true,
"from": {
"auth": "none",
"display_name": "<string>",
"headers": {},
"homepage": "<string>",
"url": "<string>"
},
"revision": "<string>",
"to": {
"auth": "none",
"display_name": "<string>",
"headers": {},
"homepage": "<string>",
"url": "<string>"
},
"to_revision": "<string>"
}
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"code": "mcp_server_key_invalid",
"error": "<string>"
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}{
"error": "<string>",
"code": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
]
}