List MCP Server Tools

Discover up to 1,000 tools within 5 MB, connect to the server, and update connection metadata. Results are unpaginated. Invalid OAuth returns 409 with MCP_SERVER_REAUTHORIZATION_REQUIRED; reauthorize through the browser. Unavailable servers return 503. HEAD checks access with the same authorization as GET but skips side effects, returning an empty 200 without payload headers on success. Workspace API keys return 403; use a personal API key or scoped OAuth token.

OAuth scope: api:write.

GET/api/v2/mcp-servers/{mcpServerId}/tools
X-API-Key<token>

Your Sim API key, personal or workspace-scoped. Generate one under Settings, then API Keys. Operations that reject workspace keys say so in their own description.

In: header

Path Parameters

mcpServerId*string

Unique MCP server identifier.

Length1 <= length

Query Parameters

workspaceId*string

Workspace that owns the MCP server.

Length1 <= length <= 128
refresh?boolean

Refresh tools using your credentials. Otherwise results may reuse another workspace member's recent discovery and omit newly added tools.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://www.sim.ai/api/v2/mcp-servers/string/tools?workspaceId=string" \  -H "X-API-Key: YOUR_API_KEY"
{
  "data": [
    {
      "name": "search_docs",
      "description": "Search the internal documentation",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Search terms"
          }
        },
        "required": [
          "query"
        ]
      },
      "serverId": "mcp-3f7a9c21",
      "serverName": "Docs server"
    }
  ],
  "nextCursor": null
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "Invalid request"
  }
}
{
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Authentication required"
  }
}
{
  "error": {
    "code": "FORBIDDEN",
    "message": "Insufficient workspace permissions",
    "details": {
      "code": "INSUFFICIENT_WORKSPACE_ROLE"
    }
  }
}
{
  "error": {
    "code": "NOT_FOUND",
    "message": "Not found"
  }
}
{
  "error": {
    "code": "CONFLICT",
    "message": "The request conflicts with the current state of the resource"
  }
}
{
  "error": {
    "code": "RATE_LIMITED",
    "message": "API rate limit exceeded",
    "details": {
      "retryAfter": "2026-01-01T00:00:30.000Z"
    }
  }
}
{
  "error": {
    "code": "INTERNAL_ERROR",
    "message": "Internal server error"
  }
}
{
  "error": {
    "code": "SERVICE_UNAVAILABLE",
    "message": "Service temporarily unavailable"
  }
}