Sync Remote MCP Provider
curl --request POST \
--url https://app.hasmcp.com/api/v1/providers/{id}/sync \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.hasmcp.com/api/v1/providers/{id}/sync"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.hasmcp.com/api/v1/providers/{id}/sync', 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://app.hasmcp.com/api/v1/providers/{id}/sync",
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://app.hasmcp.com/api/v1/providers/{id}/sync"
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://app.hasmcp.com/api/v1/providers/{id}/sync")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.hasmcp.com/api/v1/providers/{id}/sync")
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{
"tools": [
{
"id": "kSuB9Gf6aD4",
"providerID": "kSuB9Gf6aD4",
"method": "GET",
"path": "/users/{id}",
"name": "makePayment",
"title": "Make Payment",
"description": "<string>",
"pathArgsJSONSchema": {},
"queryArgsJSONSchema": {},
"reqBodyJSONSchema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"oauth2Scopes": [
"<string>"
],
"hints": [
"<string>"
]
}
],
"resources": [
{
"id": "kSuB9Gf6aD4",
"providerID": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "userProfile",
"description": "<string>",
"uri": "<string>",
"mimeType": "text/plain",
"size": 123,
"annotations": {}
}
],
"prompts": [
{
"id": "kSuB9Gf6aD4",
"providerID": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "summarizeText",
"description": "<string>",
"arguments": [
{
"name": "<string>",
"description": "<string>",
"required": true
}
],
"messages": [
{}
]
}
],
"instructionsUpdated": true,
"iconUpdated": true,
"created": 123,
"updated": 123,
"deleted": 123
}{
"error": {
"code": 422,
"message": "<string>",
"data": {}
}
}Providers
Sync Remote MCP Provider
Lists the tools, resources and prompts of the remote MCP server of an MCP provider with the user’s credentials and mirrors them into the provider, along with its instructions and icon. Existing items are matched by name; new ones are created, changed ones updated and the removed ones deleted.
POST
/
providers
/
{id}
/
sync
Sync Remote MCP Provider
curl --request POST \
--url https://app.hasmcp.com/api/v1/providers/{id}/sync \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.hasmcp.com/api/v1/providers/{id}/sync"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.hasmcp.com/api/v1/providers/{id}/sync', 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://app.hasmcp.com/api/v1/providers/{id}/sync",
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://app.hasmcp.com/api/v1/providers/{id}/sync"
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://app.hasmcp.com/api/v1/providers/{id}/sync")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.hasmcp.com/api/v1/providers/{id}/sync")
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{
"tools": [
{
"id": "kSuB9Gf6aD4",
"providerID": "kSuB9Gf6aD4",
"method": "GET",
"path": "/users/{id}",
"name": "makePayment",
"title": "Make Payment",
"description": "<string>",
"pathArgsJSONSchema": {},
"queryArgsJSONSchema": {},
"reqBodyJSONSchema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"oauth2Scopes": [
"<string>"
],
"hints": [
"<string>"
]
}
],
"resources": [
{
"id": "kSuB9Gf6aD4",
"providerID": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "userProfile",
"description": "<string>",
"uri": "<string>",
"mimeType": "text/plain",
"size": 123,
"annotations": {}
}
],
"prompts": [
{
"id": "kSuB9Gf6aD4",
"providerID": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"name": "summarizeText",
"description": "<string>",
"arguments": [
{
"name": "<string>",
"description": "<string>",
"required": true
}
],
"messages": [
{}
]
}
],
"instructionsUpdated": true,
"iconUpdated": true,
"created": 123,
"updated": 123,
"deleted": 123
}{
"error": {
"code": 422,
"message": "<string>",
"data": {}
}
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
Provider ID