curl --request PATCH \
--url https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394 \
--header 'Authorization: Bearer gmcp_your_api_key' \
--header 'content-type: application/json' \
--data '
{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}
'
import requests
response = requests.patch(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
headers={
"Authorization": "Bearer gmcp_your_api_key",
"Content-Type": "application/json"
},
json={
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}
)
print(response.json())
const response = await fetch(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
{
method: "PATCH",
headers: {
"Authorization": "Bearer gmcp_your_api_key",
"Content-Type": "application/json"
},
body: JSON.stringify({
description: "Create a new customer in Stripe with metadata support",
timeout: 15,
retry_count: 2,
status: "active"
})
}
);
const data = await response.json();
$response = wp_remote_request(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
[
"method" => "PATCH",
"headers" => [
"Authorization" => "Bearer gmcp_your_api_key",
"Content-Type" => "application/json"
],
"body" => json_encode([
"description" => "Create a new customer in Stripe with metadata support",
"timeout" => 15,
"retry_count" => 2,
"status" => "active"
])
]
);
$data = json_decode(wp_remote_retrieve_body($response), true);
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}`)
req, _ := http.NewRequest("PATCH", "https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394", body)
req.Header.Set("Authorization", "Bearer gmcp_your_api_key")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
fmt.Println(string(data))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) throws Exception {
String json = "{\n \"description\": \"Create a new customer in Stripe with metadata support\",\n \"timeout\": 15,\n \"retry_count\": 2,\n \"status\": \"active\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394"))
.header("Authorization", "Bearer gmcp_your_api_key")
.header("Content-Type", "application/json")
.method("PATCH", HttpRequest.BodyPublishers.ofString(json))
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == 'https'
request = Net::HTTP::Patch.new(uri)
request['Authorization'] = 'Bearer gmcp_your_api_key'
request['Content-Type'] = 'application/json'
request.body = '{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}'
response = http.request(request)
puts JSON.parse(response.body)
{
"id": 5,
"uuid": "5376af81-6bb8-4b01-800c-508d7672e394",
"server_id": 1,
"name": "create_customer",
"description": "Create a new customer in Stripe with metadata support",
"endpoint_url": "https://api.stripe.com/v1/customers",
"http_method": "POST",
"input_schema": {
"type": "object",
"properties": {
"email": {"type": "string"},
"name": {"type": "string"}
},
"required": ["email"]
},
"parameter_mapping": {
"email": {"target": "body", "key": "email"},
"name": {"target": "body", "key": "name"}
},
"response_mapping": {
"selector": "",
"format": "json",
"template": ""
},
"headers": null,
"cache_ttl": 0,
"timeout": 15,
"rate_limit_per_min": 60,
"retry_count": 2,
"retry_backoff": "exponential",
"sort_order": 0,
"status": "active",
"tags": [],
"last_tested_at": null,
"last_test_response_ms": null,
"server_uuid": "836995ae-1cff-41ec-823e-a4f07ccca3a0",
"server_hex": "a1b2c3d4e5f6a1b2",
"created_at": "2025-03-18T10:00:00Z",
"updated_at": "2025-03-18T12:00:00Z"
}
{
"code": "getmcp_not_found",
"message": "Tool not found.",
"data": { "status": 404 }
}
Tools
Update Tool
Partially update an existing tool.
PATCH
/
wp-json
/
getmcp
/
v1
/
servers
/
{server_id}
/
tools
/
{id}
curl --request PATCH \
--url https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394 \
--header 'Authorization: Bearer gmcp_your_api_key' \
--header 'content-type: application/json' \
--data '
{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}
'
import requests
response = requests.patch(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
headers={
"Authorization": "Bearer gmcp_your_api_key",
"Content-Type": "application/json"
},
json={
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}
)
print(response.json())
const response = await fetch(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
{
method: "PATCH",
headers: {
"Authorization": "Bearer gmcp_your_api_key",
"Content-Type": "application/json"
},
body: JSON.stringify({
description: "Create a new customer in Stripe with metadata support",
timeout: 15,
retry_count: 2,
status: "active"
})
}
);
const data = await response.json();
$response = wp_remote_request(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
[
"method" => "PATCH",
"headers" => [
"Authorization" => "Bearer gmcp_your_api_key",
"Content-Type" => "application/json"
],
"body" => json_encode([
"description" => "Create a new customer in Stripe with metadata support",
"timeout" => 15,
"retry_count" => 2,
"status" => "active"
])
]
);
$data = json_decode(wp_remote_retrieve_body($response), true);
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}`)
req, _ := http.NewRequest("PATCH", "https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394", body)
req.Header.Set("Authorization", "Bearer gmcp_your_api_key")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
fmt.Println(string(data))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) throws Exception {
String json = "{\n \"description\": \"Create a new customer in Stripe with metadata support\",\n \"timeout\": 15,\n \"retry_count\": 2,\n \"status\": \"active\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394"))
.header("Authorization", "Bearer gmcp_your_api_key")
.header("Content-Type", "application/json")
.method("PATCH", HttpRequest.BodyPublishers.ofString(json))
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == 'https'
request = Net::HTTP::Patch.new(uri)
request['Authorization'] = 'Bearer gmcp_your_api_key'
request['Content-Type'] = 'application/json'
request.body = '{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}'
response = http.request(request)
puts JSON.parse(response.body)
{
"id": 5,
"uuid": "5376af81-6bb8-4b01-800c-508d7672e394",
"server_id": 1,
"name": "create_customer",
"description": "Create a new customer in Stripe with metadata support",
"endpoint_url": "https://api.stripe.com/v1/customers",
"http_method": "POST",
"input_schema": {
"type": "object",
"properties": {
"email": {"type": "string"},
"name": {"type": "string"}
},
"required": ["email"]
},
"parameter_mapping": {
"email": {"target": "body", "key": "email"},
"name": {"target": "body", "key": "name"}
},
"response_mapping": {
"selector": "",
"format": "json",
"template": ""
},
"headers": null,
"cache_ttl": 0,
"timeout": 15,
"rate_limit_per_min": 60,
"retry_count": 2,
"retry_backoff": "exponential",
"sort_order": 0,
"status": "active",
"tags": [],
"last_tested_at": null,
"last_test_response_ms": null,
"server_uuid": "836995ae-1cff-41ec-823e-a4f07ccca3a0",
"server_hex": "a1b2c3d4e5f6a1b2",
"created_at": "2025-03-18T10:00:00Z",
"updated_at": "2025-03-18T12:00:00Z"
}
{
"code": "getmcp_not_found",
"message": "Tool not found.",
"data": { "status": 404 }
}
Path Parameters
string
required
The UUID of the server the tool belongs to (e.g.
836995ae-1cff-41ec-823e-a4f07ccca3a0). Numeric IDs are also accepted for backwards compatibility.string
required
The UUID of the tool to update (e.g.
5376af81-6bb8-4b01-800c-508d7672e394). Numeric IDs are also accepted for backwards compatibility.Body Parameters
All fields are optional. Only include fields you want to update.string
Tool name.
string
Tool description.
string
API endpoint URL. Supports
{{param}} path placeholders.string
HTTP method:
GET, POST, PUT, PATCH, DELETE.object
JSON Schema for input parameters.
object
Maps input parameters to their location in the outbound HTTP request. Each key is a parameter name; the value is an object with:
target(string, required):path,query,body, orheader.key(string, optional): the key name to use in the request. Defaults to the parameter name.
object
Custom HTTP headers to include in every request to the external API.
integer
Cache TTL in seconds.
integer
Request timeout in seconds.
integer
Number of automatic retries on failure (0–5). Retries on connection errors and HTTP status codes 408, 429, 500, 502, 503, 504.
string
Delay strategy between retries. One of:
none (retry immediately), linear (1s, 2s, 3s…), exponential (1s, 2s, 4s…).string
Tool status:
active or paused.curl --request PATCH \
--url https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394 \
--header 'Authorization: Bearer gmcp_your_api_key' \
--header 'content-type: application/json' \
--data '
{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}
'
import requests
response = requests.patch(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
headers={
"Authorization": "Bearer gmcp_your_api_key",
"Content-Type": "application/json"
},
json={
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}
)
print(response.json())
const response = await fetch(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
{
method: "PATCH",
headers: {
"Authorization": "Bearer gmcp_your_api_key",
"Content-Type": "application/json"
},
body: JSON.stringify({
description: "Create a new customer in Stripe with metadata support",
timeout: 15,
retry_count: 2,
status: "active"
})
}
);
const data = await response.json();
$response = wp_remote_request(
"https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394",
[
"method" => "PATCH",
"headers" => [
"Authorization" => "Bearer gmcp_your_api_key",
"Content-Type" => "application/json"
],
"body" => json_encode([
"description" => "Create a new customer in Stripe with metadata support",
"timeout" => 15,
"retry_count" => 2,
"status" => "active"
])
]
);
$data = json_decode(wp_remote_retrieve_body($response), true);
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
body := strings.NewReader(`{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}`)
req, _ := http.NewRequest("PATCH", "https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394", body)
req.Header.Set("Authorization", "Bearer gmcp_your_api_key")
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
fmt.Println(string(data))
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Main {
public static void main(String[] args) throws Exception {
String json = "{\n \"description\": \"Create a new customer in Stripe with metadata support\",\n \"timeout\": 15,\n \"retry_count\": 2,\n \"status\": \"active\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394"))
.header("Authorization", "Bearer gmcp_your_api_key")
.header("Content-Type", "application/json")
.method("PATCH", HttpRequest.BodyPublishers.ofString(json))
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://yoursite.com/wp-json/getmcp/v1/servers/836995ae-1cff-41ec-823e-a4f07ccca3a0/tools/5376af81-6bb8-4b01-800c-508d7672e394')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == 'https'
request = Net::HTTP::Patch.new(uri)
request['Authorization'] = 'Bearer gmcp_your_api_key'
request['Content-Type'] = 'application/json'
request.body = '{
"description": "Create a new customer in Stripe with metadata support",
"timeout": 15,
"retry_count": 2,
"status": "active"
}'
response = http.request(request)
puts JSON.parse(response.body)
{
"id": 5,
"uuid": "5376af81-6bb8-4b01-800c-508d7672e394",
"server_id": 1,
"name": "create_customer",
"description": "Create a new customer in Stripe with metadata support",
"endpoint_url": "https://api.stripe.com/v1/customers",
"http_method": "POST",
"input_schema": {
"type": "object",
"properties": {
"email": {"type": "string"},
"name": {"type": "string"}
},
"required": ["email"]
},
"parameter_mapping": {
"email": {"target": "body", "key": "email"},
"name": {"target": "body", "key": "name"}
},
"response_mapping": {
"selector": "",
"format": "json",
"template": ""
},
"headers": null,
"cache_ttl": 0,
"timeout": 15,
"rate_limit_per_min": 60,
"retry_count": 2,
"retry_backoff": "exponential",
"sort_order": 0,
"status": "active",
"tags": [],
"last_tested_at": null,
"last_test_response_ms": null,
"server_uuid": "836995ae-1cff-41ec-823e-a4f07ccca3a0",
"server_hex": "a1b2c3d4e5f6a1b2",
"created_at": "2025-03-18T10:00:00Z",
"updated_at": "2025-03-18T12:00:00Z"
}
{
"code": "getmcp_not_found",
"message": "Tool not found.",
"data": { "status": 404 }
}
⌘I

