The Algolia Monitoring connector lets your AI agent act in each user's Algolia Monitoring account. Each user connects their own Algolia Monitoring API key once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 9 tools.
- Tools
- 9
- What they doRead · write · destructive
- 9 · 0 · 09 read0 write0 destructive
- Users sign in with
- API key
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Algolia Monitoring connection
In AgentKit > Connections, create an Algolia Monitoring connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'algoliamonitoring'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Algolia Monitoring:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'algoliamonitoring_get_status',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "algoliamonitoring"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Algolia Monitoring:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="algoliamonitoring_get_status",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user opens the link once and enters their Algolia Monitoring credentials there. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolalgoliamonitoring_get_cluster_statusGet the current operational status of one or more specific Algolia clusters.Read-onlyGet Status of Selected Clusters
Get the current operational status of one or more specific Algolia clusters. Returns a status map keyed by cluster name, where each value is operational, degraded_performance, partial_outage, or major_outage. Use this to check clusters you already know by name. Use get_status for every cluster, and list_cluster_incidents for incident history on these clusters.
Inputs
clustersstringrequired- Comma-separated list of Algolia cluster names to query, with no spaces. Use the cluster names returned by get_status or list_servers. Example: c1-de,c2-de,c3-de.
algoliamonitoring_get_indexing_timeGet indexing latency metrics for one or more Algolia clusters.Read-onlyGet Indexing Time
Get indexing latency metrics for one or more Algolia clusters. Returns time series per cluster name, where each point has a millisecond Unix timestamp and a latency value in milliseconds, measured on Algolia's internal monitoring index. Use this for infrastructure-level monitoring, not for the indexing performance of your own index. Use get_latency for search latency.
Inputs
clustersstringrequired- Comma-separated list of Algolia cluster names to query, with no spaces. Use the cluster names returned by get_status or list_servers. Example: c1-de,c2-de,c3-de. These are infrastructure-level metrics, not a measure of a single application's indexing.
algoliamonitoring_get_infrastructure_metricsGet infrastructure metrics for your Algolia application, aggregated over a chosen time window.Read-onlyGet Infrastructure Metrics
Get infrastructure metrics for your Algolia application, aggregated over a chosen time window. Returns time series keyed by metric and then by server name, where each point has a millisecond Unix timestamp and a value. Metrics cover CPU idleness, SSD usage, RAM used for search and indexing, and average build time. Use this for resource usage trends. Requires an Algolia Premium or Elevate plan. Use get_latency for search latency and get_cluster_status for current health.
Inputs
metricstringrequired- Infrastructure metric to report. One of avg_build_time (average index build time in seconds), ssd_usage (SSD usage as a percentage of RAM), ram_search_usage (RAM used for search in MB), ram_indexing_usage (RAM used for indexing in MB), cpu_usage (CPU idleness in percent), or * to return all metrics. Example: cpu_usage.one of
avg_build_timessd_usageram_search_usageram_indexing_usagecpu_usage* periodstringrequired- Time window over which to aggregate the metrics. One of minute (last minute, 1 data point per 10 seconds), hour (last hour, 1 per minute), day (last day, 1 per 10 minutes), week (last week, 1 per hour), or month (last month, 1 per day). Example: week.one of
minutehourdayweekmonth
algoliamonitoring_get_latencyGet the average search request latency for one or more Algolia clusters.Read-onlyGet Search Latency
Get the average search request latency for one or more Algolia clusters. Returns time series per cluster name, where each point has a millisecond Unix timestamp and a latency value in milliseconds. Use this to measure search speed. Use get_indexing_time for indexing latency, and get_cluster_status for current health.
Inputs
clustersstringrequired- Comma-separated list of Algolia cluster names to query, with no spaces. Use the cluster names returned by get_status or list_servers. Example: c1-de,c2-de,c3-de.
algoliamonitoring_get_reachabilityTest whether one or more Algolia clusters are reachable from Algolia's monitoring probes.Read-onlyGet Cluster Reachability
Test whether one or more Algolia clusters are reachable from Algolia's monitoring probes. Returns a map keyed by cluster name, where each value maps a probe name to true when reachable or false when not. Use this to diagnose connectivity problems. Use get_cluster_status for the reported operational status.
Inputs
clustersstringrequired- Comma-separated list of Algolia cluster names to query, with no spaces. Use the cluster names returned by get_status or list_servers. Example: c1-de,c2-de,c3-de.
algoliamonitoring_get_statusGet the current operational status of all Algolia clusters and instances.Read-onlyGet Status of All Clusters
Get the current operational status of all Algolia clusters and instances. Returns a status map keyed by cluster name, where each value is operational, degraded_performance, partial_outage, or major_outage. Use this for a fleet-wide health overview. Use get_cluster_status to check specific clusters, and list_incidents for known incidents.
Inputs
This tool takes no inputs.
algoliamonitoring_list_cluster_incidentsList known incidents for one or more specific Algolia clusters.Read-onlyList Incidents for Selected Clusters
List known incidents for one or more specific Algolia clusters. Returns incidents grouped by cluster name; each entry has a millisecond Unix timestamp and a details object with a title and a status (operational, degraded_performance, partial_outage, or major_outage). Use this when you know the cluster names. Use list_incidents for all clusters, and get_cluster_status for current health only.
Inputs
clustersstringrequired- Comma-separated list of Algolia cluster names to query, with no spaces. Use the cluster names returned by get_status or list_servers. Example: c1-de,c2-de,c3-de.
algoliamonitoring_list_incidentsList known incidents across all Algolia clusters.Read-onlyList All Incidents
List known incidents across all Algolia clusters. Returns incidents grouped by cluster name; each entry has a millisecond Unix timestamp and a details object with a title and a status (operational, degraded_performance, partial_outage, or major_outage). Use this for a fleet-wide incident history. Use list_cluster_incidents to limit results to specific clusters, and get_status for current health only.
Inputs
This tool takes no inputs.
algoliamonitoring_list_serversList the servers that belong to Algolia clusters.Read-onlyList Servers
List the servers that belong to Algolia clusters. Returns an inventory array where each server has a name, cluster, region, replica flag, status, and type. When authenticated, the list covers the cluster assigned to your Algolia application. Use this to discover cluster and server names before calling get_cluster_status, get_latency, or other cluster-specific tools.
Inputs
This tool takes no inputs.
No tools match.