Skip to main content
Glama
Rootly-AI-Labs

Rootly MCP server

Official

listUsers

Retrieve and filter user data from the Rootly MCP server using parameters like email, creation date, and sorting options to manage and analyze user information efficiently.

Instructions

List users

Query Parameters:

  • page_number: No description.

  • page_size: No description.

  • filter_search: No description.

  • filter_email: No description.

  • filter_created_at_gt: No description.

  • filter_created_at_gte: No description.

  • filter_created_at_lt: No description.

  • filter_created_at_lte: No description.

  • sort: comma separated if needed. eg: created_at,updated_at

  • include: comma separated if needed. eg: email_addresses,phone_numbers

Responses:

  • 200 (Success): user found

    • Content-Type: application/vnd.api+json

    • Example:

{ "key": "value" }
  • 401: responds with unauthorized for invalid token

    • Content-Type: application/vnd.api+json

    • Example:

{ "key": "value" }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
filter_created_at_gtNo
filter_created_at_gteNo
filter_created_at_ltNo
filter_created_at_lteNo
filter_emailNo
filter_searchNo
includeNocomma separated if needed. eg: email_addresses,phone_numbers
page_numberNo
page_sizeNo
sortNocomma separated if needed. eg: created_at,updated_at

Implementation Reference

  • DEFAULT_ALLOWED_PATHS includes the "/users" endpoint (lines 150-152), which enables the "listUsers" tool by including the corresponding OpenAPI path in the filtered spec.
    DEFAULT_ALLOWED_PATHS = [ "/incidents/{incident_id}/alerts", "/alerts", "/alerts/{alert_id}", "/severities", "/severities/{severity_id}", "/teams", "/teams/{team_id}", "/services", "/services/{service_id}", "/functionalities", "/functionalities/{functionality_id}", # Incident types "/incident_types", "/incident_types/{incident_type_id}", # Action items (all, by id, by incident) "/incident_action_items", "/incident_action_items/{incident_action_item_id}", "/incidents/{incident_id}/action_items", # Workflows "/workflows", "/workflows/{workflow_id}", # Workflow runs "/workflow_runs", "/workflow_runs/{workflow_run_id}", # Environments "/environments", "/environments/{environment_id}", # Users "/users", "/users/{user_id}", "/users/me", # Status pages "/status_pages", "/status_pages/{status_page_id}", # On-call schedules and shifts "/schedules", "/schedules/{schedule_id}", "/schedules/{schedule_id}/shifts", "/shifts", "/schedule_rotations/{schedule_rotation_id}", "/schedule_rotations/{schedule_rotation_id}/schedule_rotation_users", "/schedule_rotations/{schedule_rotation_id}/schedule_rotation_active_days", # On-call overrides "/schedules/{schedule_id}/override_shifts", "/override_shifts/{override_shift_id}", # On-call shadows and roles "/schedules/{schedule_id}/on_call_shadows", "/on_call_shadows/{on_call_shadow_id}", "/on_call_roles", "/on_call_roles/{on_call_role_id}", ]
  • FastMCP.from_openapi() call registers all operations from the filtered OpenAPI specification as MCP tools, including "listUsers" for GET /v1/users based on Rootly API spec.
    mcp = FastMCP.from_openapi( openapi_spec=filtered_spec, client=http_client.client, name=name, timeout=30.0, tags={"rootly", "incident-management"}, )
  • AuthenticatedHTTPXClient.request() is the core proxy method that executes HTTP requests to Rootly API for all dynamic tools, including listUsers.
    async def request(self, method: str, url: str, **kwargs): """Override request to transform parameters.""" # Transform query parameters if 'params' in kwargs: kwargs['params'] = self._transform_params(kwargs['params']) # Call the underlying client's request method and let it handle everything return await self.client.request(method, url, **kwargs)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Rootly-AI-Labs/Rootly-MCP-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server