Skip to content
Scalekit Docs

AppSignal MCP

Vendor MCP25 toolsOAuth 2.1/DCRMonitoringDeveloper Tools

AppSignal is an application monitoring and performance management platform providing error tracking, performance monitoring, and alerting for Ruby...

AppSignal MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. 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>
  3. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'appsignalmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize AppSignal MCP:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'appsignalmcp_get_applications',
    toolInput: { context: 'YOUR_CONTEXT' },
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Update incidents, dashboard visual — Bulk update AppSignal incidents: change state, severity, assign or unassign team members
  • Actions reorder log line — Reorder log line actions to change their execution order during log ingestion
  • Trigger manage, archive — Create or update an anomaly detection trigger to monitor a metric threshold
  • Action manage log line — Create or update a log line action (trigger, filter, or metrics type)
  • Note manage incident — Create or update a note on an AppSignal incident
  • Dashboard manage — Create or update an AppSignal dashboard (title and description only)

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

appsignalmcp_archive_trigger#Archive an anomaly detection trigger by providing the trigger ID. This closes all associated alerts and incidents.4 params

Archive an anomaly detection trigger by providing the trigger ID. This closes all associated alerts and incidents.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment name. Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application. Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
idstringrequiredID of the trigger to archive. Use get_triggers() to find trigger IDs.
appsignalmcp_create_dashboard_visual#Create a visual component (timeseries or Big Number tile) on an AppSignal dashboard.16 params

Create a visual component (timeseries or Big Number tile) on an AppSignal dashboard.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the dashboard (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application containing the dashboard (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
dashboard_idstringrequiredID of the dashboard where you want to add the visual. Use manage_dashboard to create dashboards if needed.
titlestringrequiredTitle for the visual component. This will be displayed as the chart title and should clearly describe what metrics are being shown.
descriptionstringoptionalOptional description providing additional context about what the visual shows.
displaystringoptionalTimeseries visuals only. Display type: "line" (default), "area", or "area_relative".
draw_null_as_zerobooleanoptionalTimeseries visuals only. Whether to draw null/missing data points as zero values. Default: false (gaps will be shown for missing data).
formatstringoptionalFormat for displaying values. One of: number, percent, duration, throughput, size.
format_inputstringoptionalUnit of the incoming value. Only applies when format is "size", and is ignored for every other format. One of: bit, byte, kilobit, kilobyte, megabyte.
line_labelstringoptionalTimeseries visuals only. Customizable label for lines in the chart. Supports replacements: %name%, %field%, %tag% (where tag is the tag name). Defaults to %name% if not specified.
metricobjectoptionalBig Number (type: "number") visuals only. Single metric to display. Requires: name (the metric name), field (one of mean, p90, p95, count, gauge, counter), aggregate (one of max, min, avg, sum, first, last), and optional tags. Required when type is "number".
metricsarrayoptionalTimeseries visuals only. Array of metrics to display. Each metric requires: name (the metric name), fields (array of field aggregations: mean, p90, p95, count, gauge, counter), and optional tags (tag filters/groupings). Required when type is "timeseries".
min_y_axisnumberoptionalTimeseries visuals only. Minimum value for the Y-axis. Useful for setting a baseline or zoom level.
tagsarrayoptionalTimeseries visuals only. Global tags applied to every metric in this visual. Individual metric tags will be merged with these.
typestringoptionalVisual type. One of: timeseries, number. Defaults to "timeseries". "timeseries": line/area chart with one or more metrics over time (use the `metrics` field). "number": single-value KPI tile with one aggregated metric (use the `metric` field).
appsignalmcp_delete_log_line_action#Delete a log line action by providing the action ID.4 params

Delete a log line action by providing the action ID.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment name. Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application. Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
idstringrequiredID of the log line action to delete. Use get_app_resources(sections: ["log_line_actions"]) to find action IDs.
appsignalmcp_discover_metrics#Retrieve metric categories and dashboards, the metrics available within a specific category, or the visuals configured on a specific dashboard.4 params

Retrieve metric categories and dashboards, the metrics available within a specific category, or the visuals configured on a specific dashboard.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment (e.g. "production", "staging"). Not case-sensitive.
app_namestringrequiredName of the AppSignal application (e.g. "AppSignal" or "Project Name")
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
metric_subjectstringoptionalWhat to inspect. One of: - a metric category name (e.g. "performance_metrics", "host_metrics", "custom_metrics") - "dashboard:<dashboard_id>" to list the visuals on a specific dashboard Omit this argument to get the overview of all categories and dashboards.
appsignalmcp_get_anomaly_incidents#List AppSignal anomaly detection alerts, filtered by state or trigger ID, with page/per_page pagination.7 params

List AppSignal anomaly detection alerts, filtered by state or trigger ID, with page/per_page pagination.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to list alerts from (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found
app_namestringrequiredName of the AppSignal application to list alerts from (e.g. "AppSignal" or "Project Name")
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
pageintegeroptionalPage number for pagination (1-based, defaults to 1). Each page shows 50 alerts. Use this to view beyond the first page
per_pageintegeroptionalNumber of alerts per page (defaults to 50). Use this to request fewer results per page
statestringoptionalOptional state to filter by. Valid values: "open", "closed", "warmup", "cooldown", "archived". Shows all states if not specified
trigger_idstringoptionalOptional trigger ID to filter incidents by. Only returns incidents generated by this specific trigger. Use get_triggers to find trigger IDs.
appsignalmcp_get_app_resources#Discover available resources in an AppSignal application: users, notifiers, namespaces, dashboards, log sources, log views, log line actions, deploy markers, and uptime monitors.6 params

Discover available resources in an AppSignal application: users, notifiers, namespaces, dashboards, log sources, log views, log line actions, deploy markers, and uptime monitors.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to get resources from (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application to get resources from (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
deploy_marker_namespacestringoptionalOptional filter for the "deploy_markers" section: only return deploys for this namespace (e.g. "web", "background"). Ignored when deploy_markers is not requested.
deploy_marker_revisionstringoptionalOptional filter for the "deploy_markers" section: only return deploys whose revision starts with this value. A short revision (e.g. "abc1234") from a previous call works. Ignored when deploy_markers is not requested.
sectionsarrayoptionalOptional list of resource sections to retrieve. Valid values: "users", "notifiers", "namespaces", "dashboards", "log_sources", "log_views", "log_line_actions", "deploy_markers", "uptime_monitors". If not specified, returns all sections.
appsignalmcp_get_applications#Retrieve all AppSignal applications the user has access to.1 param

Retrieve all AppSignal applications the user has access to.

NameTypeRequiredDescription
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
appsignalmcp_get_exception_incidents#List and search AppSignal exceptions and errors, filtered by date range, states, namespaces, or deploy revision, with page/per_page pagination.10 params

List and search AppSignal exceptions and errors, filtered by date range, states, namespaces, or deploy revision, with page/per_page pagination.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to list incidents from (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found
app_namestringrequiredName of the AppSignal application to list incidents from (e.g. "AppSignal" or "Project Name")
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
endstringoptionalEnd of time range to search (ISO 8601 format, e.g. "2023-07-07T23:59:59Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time like "2026-06-26T20") are rejected. Required if start is provided
namespacesstringoptionalOptional comma-separated list of namespaces to filter by (e.g. "web,background"). Shows all namespaces if not specified
pageintegeroptionalPage number for pagination (1-based, defaults to 1). Each page shows 50 incidents. Use this to view beyond the first page
per_pageintegeroptionalNumber of incidents per page (defaults to 50). Use this to request fewer results per page
revisionstringoptionalOptional deploy revision to scope incidents to a specific deploy. Use "last" to filter by the most recent deploy, or pass a revision hash (e.g. a git SHA). A short revision prefix works too (matched case-insensitively); if it matches more than one deploy, the most recent wins. Use get_app_resources(sections: ["deploy_markers"]) to list available revisions. Ignored when start/end (timeframe) is provided.
startstringoptionalStart of time range to search (ISO 8601 format, e.g. "2023-07-01T00:00:00Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time like "2026-06-26T20") are rejected. If omitted, shows incidents since last deploy
statesstringoptionalOptional comma-separated list of states to filter by. Valid values: "open", "closed", "wip" (work in progress). Shows all states if not specified
appsignalmcp_get_incident#Get detailed information about a specific AppSignal incident by incident number.4 params

Get detailed information about a specific AppSignal incident by incident number.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment where the incident occurred (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application where the incident occurred (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
numbernumberrequiredThe incident number to retrieve. This is the numeric ID shown in AppSignal URLs and API responses.
appsignalmcp_get_log_lines#Query log lines for an AppSignal application using AppSignal's expression query syntax.9 params

Query log lines for an AppSignal application using AppSignal's expression query syntax.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to query logs from (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application to query logs from (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
querystringrequiredExpression query to filter log lines. Can be an empty string to retrieve all logs. Supports: =, !=, :, !:, >, <, >=, <=, AND, OR, parentheses. Examples: "severity=error", "message:timeout AND hostname=web-1", ""
endstringoptionalEnd of time range (ISO 8601 format, e.g. "2025-01-01T11:00:00Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time like "2026-06-26T20") are rejected. Defaults to now.
limitintegeroptionalMaximum number of log lines to return (1-100, default 50).
orderstringoptionalSort order for results. "desc" returns newest first (default), "asc" returns oldest first.
source_idsarrayoptionalIDs of log sources to query. If omitted, all sources for the application are queried. Use get_app_resources(sections: ["log_sources"]) to find available source IDs.
startstringoptionalStart of time range (ISO 8601 format, e.g. "2025-01-01T10:00:00Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time like "2026-06-26T20") are rejected. Defaults to one query window ago. Must be within your account's query window of end.
appsignalmcp_get_metric_names#Retrieve all metric names for the given AppSignal application.3 params

Retrieve all metric names for the given AppSignal application.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to get metric names from (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application to get metric names from (e.g. "AppSignal" or "Project Name").
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
appsignalmcp_get_metric_tags#Retrieve all tag combinations and metric type for a specific metric.4 params

Retrieve all tag combinations and metric type for a specific metric.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the metric (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application containing the metric (e.g. "AppSignal" or "Project Name").
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
metric_namestringrequiredName of the metric to get tag combinations for. Use get_metric_names to find available metrics.
appsignalmcp_get_metrics_list#Retrieve aggregated metric data for a given time range, metric, type, and tag combinations.8 params

Retrieve aggregated metric data for a given time range, metric, type, and tag combinations.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the metric (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application containing the metric (e.g. "AppSignal" or "Project Name").
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
endstringrequiredEnd of time range to search (ISO 8601 format, e.g. "2023-07-07T23:59:59Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time) are rejected.
metric_namestringrequiredName of the metric to get aggregated metric data for. Use get_metric_names to find available metrics.
metric_typestringrequiredThe metric type/field to query. Valid values: count, counter, gauge, mean, p90, p95. Use get_metric_tags to find the available type for your metric.
startstringrequiredStart of time range to search (ISO 8601 format, e.g. "2023-07-01T00:00:00Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time) are rejected.
tagsarrayoptionalTag combinations to filter metrics. Each tag has a 'key' and 'value'. You can use wildcards '*' for partial matches on values. Use get_metric_tags to find valid combinations for your metric.
appsignalmcp_get_metrics_timeseries#Retrieve timeseries data for a given time range, metric, type, and tag combinations.8 params

Retrieve timeseries data for a given time range, metric, type, and tag combinations.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the metric (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application containing the metric (e.g. "AppSignal" or "Project Name").
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
endstringrequiredEnd of time range to search (ISO 8601 format, e.g. "2023-07-07T23:59:59Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time) are rejected.
metric_namestringrequiredName of the metric to get timeseries data for. Use get_metric_names to find available metrics.
metric_typestringrequiredThe metric type/field to query. Valid values: count, counter, gauge, mean, p90, p95. Use get_metric_tags to find the available type for your metric.
startstringrequiredStart of time range to search (ISO 8601 format, e.g. "2023-07-01T00:00:00Z"). Must be a complete date-time including the time of day; partial values (a date only, or a truncated time) are rejected.
tagsarrayoptionalTag combinations to filter metrics. Each tag has a 'key' and 'value'. You can use wildcards '*' for partial matches on values. Use get_metric_tags to find valid combinations for your metric.
appsignalmcp_get_more_tools#Check for additional tools whenever a task might benefit from specialized capabilities.2 params

Check for additional tools whenever a task might benefit from specialized capabilities.

NameTypeRequiredDescription
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
descriptionstringrequiredA description of your goal and what kind of tool would help accomplish it.
appsignalmcp_get_performance#Performance overview: sample-based performance incidents and slow actions from traces.10 params

Performance overview: sample-based performance incidents and slow actions from traces.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to query (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
endstringoptionalEnd of time range (ISO 8601 format, e.g. "2025-01-07T23:59:59Z"). Must be a complete date-time including the time of day. Required if start is provided.
namespacesstringoptionalOptional comma-separated list of namespaces to filter by (e.g. "web,background"). Shows all namespaces if not specified. Applies to both performance incidents and OTel actions.
pageintegeroptionalPage number for pagination (1-based, defaults to 1). Each page shows 50 incidents. Paginates sample-based incidents only; OTel actions are returned as a complete ranked list.
per_pageintegeroptionalNumber of incidents per page (defaults to 50). Use this to request fewer results per page. Paginates sample-based incidents only.
revisionstringoptionalOptional deploy revision to scope incidents to a specific deploy. Use "last" for the most recent deploy, or pass a revision hash. Only applies to sample-based incidents. Ignored when start/end is provided.
startstringoptionalStart of time range (ISO 8601 format, e.g. "2025-01-01T00:00:00Z"). Must be a complete date-time including the time of day. For sample-based incidents, defaults to the most recent deploy. For OTel actions, defaults to 24 hours ago.
statesstringoptionalOptional comma-separated list of states to filter by. Valid values: "open", "closed", "wip" (work in progress). Only applies to sample-based performance incidents, ignored for OTel actions.
appsignalmcp_get_traces#Query performance and error traces, inspect span trees, and view span details.13 params

Query performance and error traces, inspect span trees, and view span details.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment name (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
action_namestringoptionalThe action name to find traces for (e.g. "BlogPostsController#index", "Sidekiq::SomeWorker#perform", "SampleTimelineQuery"). Required for performance traces. Not needed for error traces (use digest instead).
digeststringoptionalThe exception incident digest to find error traces for. Get this value from get_incident or get_exception_incidents. When provided, queries error traces instead of performance traces. Cannot be combined with namespace/action_name.
endstringoptionalEnd of time range (ISO 8601 format, e.g. "2025-01-01T11:00:00Z"). Must be a complete date-time including the time of day. Defaults to now. Performance traces only.
include_sensitivebooleanoptionalWhen true, includes HTTP headers, request parameters, and session data in span detail output. Only applies in span detail mode (requires span_id). Defaults to false.
limitintegeroptionalMaximum number of traces to return (1-100, default 25). List mode only.
min_duration_msnumberoptionalMinimum trace duration in milliseconds (performance trace list mode only). Only return traces slower than this threshold.
namespacestringoptionalThe namespace to search in (e.g. "web", "background", "graphql"). Required for performance traces. Not needed for error traces (use digest instead).
span_idstringoptionalThe span ID to inspect within a trace. Requires trace_id. Returns full span details including tags (e.g. user_id, hostname), span attributes, and timing. Use trace mode first (with trace_id, without span_id) to find span IDs.
startstringoptionalStart of time range (ISO 8601 format, e.g. "2025-01-01T10:00:00Z"). Must be a complete date-time including the time of day. Defaults to 24 hours ago. Performance traces only.
trace_idstringoptionalThe trace ID to inspect. When provided, returns the full span tree for this trace. Combine with span_id to get detailed information about a specific span. Use list mode first (without trace_id) to find trace IDs.
appsignalmcp_get_triggers#List anomaly detection triggers for an AppSignal application.7 params

List anomaly detection triggers for an AppSignal application.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to list triggers from (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application to list triggers from (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
kindstringoptionalOptional trigger kind to filter by (e.g. 'Advanced', 'HostCPUUsage', 'Performance'; see manage_trigger's kind enum for the full list of valid values).
metric_namestringoptionalOptional metric name to filter triggers by. Only returns triggers monitoring this specific metric.
pageintegeroptionalPage number for pagination (1-based, defaults to 1). Each page shows 50 triggers.
tagsarrayoptionalOptional tags to filter triggers by. Only returns triggers with matching tag filters.
appsignalmcp_manage_dashboard#Create or update an AppSignal dashboard (title and description only).6 params

Create or update an AppSignal dashboard (title and description only).

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to create/update the dashboard in (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application to create/update the dashboard in (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
titlestringrequiredTitle of the dashboard. This will be displayed as the main heading and should clearly describe the dashboard's purpose.
descriptionstringoptionalOptional description of the dashboard's purpose and contents. Use this to provide context about what metrics or data the dashboard shows.
idstringoptionalDashboard ID for updating an existing dashboard. If provided, the tool will update the existing dashboard. If not provided, a new dashboard will be created.
appsignalmcp_manage_incident_note#Create or update a note on an AppSignal incident. Supports linking GitHub issues via URL.6 params

Create or update a note on an AppSignal incident. Supports linking GitHub issues via URL.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the incident (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application containing the incident (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contentstringrequiredContent of the note. Markdown formatting is supported. Include a full GitHub issue URL (e.g. https://github.com/owner/repo/issues/123) to automatically link that issue to the incident when GitHub is configured.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
numbernumberrequiredThe incident number to add or update a note on. This is the numeric ID shown in AppSignal URLs and API responses.
idstringoptionalOptional id of an existing note to update. When provided, the note's content is replaced instead of creating a new note. You can only edit notes you authored.
appsignalmcp_manage_log_line_action#Create or update a log line action (trigger, filter, or metrics type).9 params

Create or update a log line action (trigger, filter, or metrics type).

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment name. Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application. Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
action_typestringoptionalType of action. Required when creating a new action. Cannot be changed on update.
idstringoptionalID of an existing log line action to update. If provided, updates the existing action. If not provided, creates a new action.
log_line_metricsarrayoptionalMetric definitions for "metrics" type actions. Required when creating a metrics action. When updating, replaces all existing metric definitions.
namestringoptionalName of the log line action. Required when creating a new action.
querystringoptionalQuery expression to match against log lines. Required when creating a new action.
source_idsarrayoptionalList of log source IDs this action applies to. If empty or not provided, the action applies to all log sources.
appsignalmcp_manage_trigger#Create or update an anomaly detection trigger to monitor a metric threshold. Triggers are immutable: updating one archives the old trigger and creates a new one, so all fields must be provided on both create and update.19 params

Create or update an anomaly detection trigger to monitor a metric threshold. Triggers are immutable: updating one archives the old trigger and creates a new one, so all fields must be provided on both create and update.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment to create/update the trigger in (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application to create/update the trigger in (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
comparison_operatorstringrequiredThe comparison operator for the threshold condition.
condition_valuenumberrequiredThe threshold value to compare against. For example, 500.0 for "response time > 500ms" or 80.0 for "disk usage > 80%".
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
cooldown_durationintegerrequiredNumber of minutes the condition must no longer be met before an alert is closed. Use 0 for immediate closing.
fieldstringrequiredThe metric field to compare against.
kindstringrequiredThe trigger kind/classification. Use "Advanced" for custom metrics.
metric_namestringrequiredThe metric this trigger monitors. Use get_metric_names() to discover available metrics for the application.
warmup_durationintegerrequiredNumber of minutes the condition must be met before an alert is opened. Use 0 for immediate alerting, higher values to avoid false positives.
dashboard_idstringoptionalDashboard ID to link in notifications.
descriptionstringoptionalDescription of what this trigger monitors and what to do when it fires.
formatstringoptionalThe data format of the metric (e.g. "duration", "size", "number", "percent").
format_inputstringoptionalThe input size for the "size" format (e.g. "kilobyte", "megabyte").
idstringoptionalID of an existing trigger to update. If provided, the existing trigger will be archived and a new one created with the same version chain. If not provided, a new trigger is created.
namestringoptionalDisplay name for the trigger. If not provided, the metric name is used.
no_match_is_zerobooleanoptionalIf true, treat missing metric data as 0. Useful for counters that may not report when there's no activity. Defaults to false.
notifier_idsarrayoptionalList of notifier IDs to send alerts to. Defaults to empty list if not provided.
tagsarrayoptionalTag filters to scope which metrics are included. Values support wildcards (*).
appsignalmcp_reorder_log_line_actions#Reorder log line actions to change their execution order during log ingestion.4 params

Reorder log line actions to change their execution order during log ingestion.

NameTypeRequiredDescription
action_idsarrayrequiredOrdered list of log line action IDs defining the new execution order.
app_environmentstringrequiredThe environment of the AppSignal app (e.g. production, staging).
app_namestringrequiredThe name of the AppSignal app.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
appsignalmcp_update_dashboard_visual#Update a visual component on an AppSignal dashboard.15 params

Update a visual component on an AppSignal dashboard.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the visual (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found.
app_namestringrequiredName of the AppSignal application containing the visual (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
visual_idstringrequiredID of the visual component to update. You can find visual IDs from dashboard listings (discover_metrics) or create responses.
descriptionstringoptionalNew description. If not provided, the current description is kept. Set to an empty string to remove the description.
displaystringoptionalTimeseries visuals only. Display type: "line", "area", or "area_relative". If not provided, the current display type is kept.
draw_null_as_zerobooleanoptionalTimeseries visuals only. Whether to draw null/missing data points as zero values. If not provided, current setting is kept.
formatstringoptionalFormat for displaying values. One of: number, percent, duration, throughput, size. If not provided, the current format is kept.
format_inputstringoptionalUnit of the incoming value. Only applies when format is "size", and is cleared for every other format. One of: bit, byte, kilobit, kilobyte, megabyte. If not provided, the current format_input is kept.
line_labelstringoptionalTimeseries visuals only. Customizable label for lines in the chart. Supports replacements: %name%, %field%, %tag%. If not provided, current line_label is kept.
metricobjectoptionalBig Number (type: "number") visuals only. Replaces the entire metric definition. If not provided, the existing metric is kept.
metricsarrayoptionalTimeseries visuals only. Replaces the entire array of metrics. If not provided, existing metrics are kept.
min_y_axisnumberoptionalTimeseries visuals only. Minimum value for the Y-axis. If not provided, current min_y_axis is kept.
tagsarrayoptionalTimeseries visuals only. Global tags applied to every metric in this visual. If provided, these replace existing global tags.
titlestringoptionalNew title. If not provided, the current title is kept.
appsignalmcp_update_incidents#Bulk update AppSignal incidents: change state, severity, assign or unassign team members.8 params

Bulk update AppSignal incidents: change state, severity, assign or unassign team members.

NameTypeRequiredDescription
app_environmentstringrequiredEnvironment containing the incidents (e.g. "production", "staging"). Not case-sensitive. Closest matches are suggested if not found. Common values are "production", "staging", "development".
app_namestringrequiredName of the AppSignal application containing the incidents (e.g. "AppSignal" or "Project Name"). Not case-sensitive.
contextstringrequiredDescribe why you are calling this tool and how it fits into your overall task
assign_usersarrayoptionalList of user IDs to assign as handlers for these incidents. These users must be members of the application.
incidentsarrayoptionalList of incident numbers to update. These are the numeric IDs shown in the AppSignal UI and incident lists.
severitystringoptionalNew severity level to set for all listed incidents.
statestringoptionalNew state to set for all listed incidents.
unassign_usersarrayoptionalList of user IDs to remove as handlers from these incidents. Only removes the listed users, others remain assigned.