Everstack
API ReferenceMcpRegister Mcp Server

Register Mcp Server

POST/v1/mcp/servers
POST/v1/mcp/servers

Your instance endpoint, shown on the instance page in the dashboard. Each instance has its own host; there is no shared API host.

Request Body

PropertyTypeRequiredDescription
tenantIdstringNo
namestringNo
urlstringNo
transportType"MCP_TRANSPORT_TYPE_UNSPECIFIED" | "MCP_TRANSPORT_TYPE_SSE" | "MCP_TRANSPORT_TYPE_STREAMABLE_HTTP" | "MCP_TRANSPORT_TYPE_STDIO"No
authType"MCP_AUTH_TYPE_UNSPECIFIED" | "MCP_AUTH_TYPE_NONE" | "MCP_AUTH_TYPE_API_KEY" | "MCP_AUTH_TYPE_BEARER" | "MCP_AUTH_TYPE_OAUTH2"No
authConfigobjectNo
toolFilterobjectNo
headersobjectNo
stdioConfigobjectNo
enabledbooleanNo

Responses

200 Register a new MCP server and discover its tools

PropertyTypeDescription
serverobject
toolsobject[]

default An unexpected error response.

PropertyTypeDescription
codeinteger
messagestring
detailsobject[]

Request

curl -X POST "http://localhost:8089/v1/mcp/servers" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"tenantId":"string","name":"string","url":"string","transportType":"MCP_TRANSPORT_TYPE_UNSPECIFIED","authType":"MCP_AUTH_TYPE_UNSPECIFIED","toolFilter":{"type":"string","tools":["string"]},"stdioConfig":{"command":"string","args":["string"],"workingDir":"string"},"enabled":true}'
const response = await fetch("http://localhost:8089/v1/mcp/servers", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "tenantId": "string",
  "name": "string",
  "url": "string",
  "transportType": "MCP_TRANSPORT_TYPE_UNSPECIFIED",
  "authType": "MCP_AUTH_TYPE_UNSPECIFIED",
  "toolFilter": {
    "type": "string",
    "tools": [
      "string"
    ]
  },
  "stdioConfig": {
    "command": "string",
    "args": [
      "string"
    ],
    "workingDir": "string"
  },
  "enabled": true
}),
});
const data = await response.json();
import requests

response = requests.post(
    "http://localhost:8089/v1/mcp/servers",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json",
    },
    json={
  "tenantId": "string",
  "name": "string",
  "url": "string",
  "transportType": "MCP_TRANSPORT_TYPE_UNSPECIFIED",
  "authType": "MCP_AUTH_TYPE_UNSPECIFIED",
  "toolFilter": {
    "type": "string",
    "tools": [
      "string"
    ]
  },
  "stdioConfig": {
    "command": "string",
    "args": [
      "string"
    ],
    "workingDir": "string"
  },
  "enabled": true
},
)
data = response.json()

Response

{
  "server": {
    "id": "string",
    "tenantId": "string",
    "name": "string",
    "url": "string",
    "transportType": "MCP_TRANSPORT_TYPE_UNSPECIFIED",
    "authType": "MCP_AUTH_TYPE_UNSPECIFIED",
    "toolFilter": {
      "type": "string",
      "tools": [
        "string"
      ]
    },
    "stdioConfig": {
      "command": "string",
      "args": [
        "string"
      ],
      "workingDir": "string"
    },
    "enabled": true,
    "healthStatus": "MCP_SERVER_HEALTH_STATUS_UNSPECIFIED",
    "healthLastCheck": "2024-01-01T00:00:00Z",
    "createdAt": "2024-01-01T00:00:00Z",
    "updatedAt": "2024-01-01T00:00:00Z",
    "toolCount": 0
  },
  "tools": [
    {
      "id": "string",
      "serverId": "string",
      "name": "string",
      "description": "string",
      "discoveredAt": "2024-01-01T00:00:00Z",
      "lastSeenAt": "2024-01-01T00:00:00Z"
    }
  ]
}
{
  "code": 0,
  "message": "string",
  "details": [
    {
      "@type": "string"
    }
  ]
}