Servers

Manage Servers

List, inspect, delete servers, and manage the tools attached to them.

List Servers

Retrieve all servers in your project with GET /mcp/servers.

ParameterTypeDescription
include_toolsbooleanInclude full tool details for each server
limitintegerNumber of servers to return (1-100)
offsetintegerNumber of servers to skip for pagination
curl https://api.agentdojo.dev/mcp/servers?include_tools=true&limit=10 \
  -H "Authorization: Bearer YOUR_API_KEY"

Response:

{
  "servers": [
    {
      "id": 15,
      "slug": "pushover-alerts",
      "name": "Pushover Alerts",
      "description": "Server with Pushover notification tools",
      "url": "https://api.agentdojo.dev/pushover-alerts",
      "is_active": true,
      "request_count": 42,
      "last_used_at": "2026-02-05T14:22:00.000Z"
    },
    {
      "id": 18,
      "slug": "data-tools",
      "name": "Data Tools",
      "description": "Server for data processing",
      "url": "https://api.agentdojo.dev/data-tools",
      "is_active": true,
      "request_count": 7,
      "last_used_at": "2026-02-04T09:15:00.000Z"
    }
  ],
  "total": 2,
  "limit": 10,
  "offset": 0
}

Get Server Details

Retrieve full details for a specific server with GET /mcp/servers/{id}. This returns the server's toolkits, tools with credential status, and usage stats.

curl https://api.agentdojo.dev/mcp/servers/15 \
  -H "Authorization: Bearer YOUR_API_KEY"

Response:

{
  "id": 15,
  "slug": "pushover-alerts",
  "name": "Pushover Alerts",
  "description": "Server with Pushover notification tools",
  "url": "https://api.agentdojo.dev/pushover-alerts",
  "api_key": "sk_server_abc123...",
  "is_active": true,
  "request_count": 42,
  "last_used_at": "2026-02-05T14:22:00.000Z",
  "toolkits": [
    {
      "id": 32,
      "name": "Pushover",
      "credential_id": 52,
      "credential_status": "active",
      "tools": [
        {
          "id": 101,
          "name": "send_notification",
          "description": "Send a push notification via Pushover",
          "is_enabled": true
        },
        {
          "id": 102,
          "name": "get_devices",
          "description": "List registered Pushover devices",
          "is_enabled": true
        }
      ]
    }
  ],
  "created_at": "2026-01-15T10:30:00.000Z"
}

Delete Server

Permanently delete a server with DELETE /mcp/servers/{id}. This removes the server and its endpoint. Connected clients will no longer be able to reach it.

curl -X DELETE https://api.agentdojo.dev/mcp/servers/15 \
  -H "Authorization: Bearer YOUR_API_KEY"

Response:

{
  "success": true,
  "message": "Server deleted successfully"
}

Server Tools Management

Manage individual tools on a server after creation. You can add new tools, remove existing ones, or update tool configurations.

Add Tools

Add tools to a server with POST /mcp/servers/{server_id}/tools.

curl -X POST https://api.agentdojo.dev/mcp/servers/15/tools \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "toolkit_id": 45,
    "credential_id": 60
  }'

Update a Tool

Update a specific tool on a server with PUT /mcp/servers/{server_id}/tools/{tool_id}.

curl -X PUT https://api.agentdojo.dev/mcp/servers/15/tools/101 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "is_enabled": false
  }'

Remove Tools

Remove tools from a server with DELETE /mcp/servers/{server_id}/tools.

curl -X DELETE https://api.agentdojo.dev/mcp/servers/15/tools \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "toolkit_id": 45
  }'

Server Stats

Server usage is automatically tracked. The request_count and last_used_at fields are updated each time a client sends a request to your server. These stats are included in both the list and detail endpoints, so you can monitor server activity without any additional setup.

{
  "request_count": 42,
  "last_used_at": "2026-02-05T14:22:00.000Z"
}

Next Steps