Connect your AI Agents to Axiom in minutes

Available tools
list_annotations
List annotations, optionally filtered by dataset names and a time range (ISO 8601). Returns annotation IDs, types, datasets, and times.
get_annotation
Retrieve a single annotation by ID. Use list_annotations to find valid IDs.
create_annotation
Create an annotation that appears on charts for the given datasets. Requires a type (lowercase alphanumeric and hyphens) and at least one dataset name.
update_annotation
Update an annotation's fields. Only provided fields are changed. Use list_annotations to find valid IDs.
delete_annotation
Permanently delete an annotation by ID. Use list_annotations to find valid IDs.
list_datasets
List all datasets in the organization. Returns dataset IDs, names, kinds, descriptions, and retention settings.
get_dataset
Retrieve a single dataset by ID. The dataset ID is the same as its name. Use list_datasets to find valid IDs.
create_dataset
Create a new dataset. Provide a unique name and optionally a description, kind, and retention settings. Kind defaults to axiom:events:v1.
update_dataset
Update a dataset's description or retention settings. The name and kind cannot be changed. Use list_datasets to find valid IDs.
delete_dataset
Permanently delete a dataset and all its data. This cannot be undone. Use list_datasets to find valid IDs.
trim_dataset
Queue deletion of data older than maxDuration (e.g. '24h', '30d') in a dataset. Deletion may take several hours. Use list_datasets to find valid IDs.
vacuum_dataset
Vacuum a dataset to prune fields that have not received data recently, reducing the field schema. Use list_datasets to find valid IDs.
list_monitors
List all monitors (alerting rules). Returns monitor IDs, names, types, APL queries, and thresholds.
get_monitor
Retrieve a single monitor by ID. Use list_monitors to find valid IDs.
get_monitor_history
Retrieve a monitor's alert history (open/closed state changes) within a time range. Requires startTime and endTime (ISO 8601). Use list_monitors to find valid IDs.
create_monitor
Create a monitor. Requires a name and type (Threshold, MatchEvent, or AnomalyDetection). Provide an aplQuery plus operator/threshold for Threshold monitors. Use list_notifiers to find notifier IDs.
update_monitor
Update a monitor. Fetches the current monitor and applies only the fields you provide, so omitted fields are preserved. Use list_monitors to find valid IDs.
delete_monitor
Permanently delete a monitor by ID. Use list_monitors to find valid IDs.
list_notifiers
List all notifiers (alert delivery targets such as email, Slack, or webhook). Returns notifier IDs, names, and type-specific properties.
get_notifier
Retrieve a single notifier by ID. Use list_notifiers to find valid IDs.
create_notifier
Create a notifier. Requires a name and a properties object whose shape depends on the type, e.g. {'email': {'emails': ['a@b.com']}} or {'slack': {'slackUrl': '...'}}.
update_notifier
Update a notifier. Axiom replaces the notifier, so provide both name and the full properties object (fetch current values with get_notifier first). Use list_notifiers to find valid IDs.
delete_notifier
Permanently delete a notifier by ID. Monitors referencing it will no longer deliver to this target. Use list_notifiers to find valid IDs.
list_orgs
List the organizations accessible to the current token, including plan information.
get_org
Retrieve a single organization by ID. Use list_orgs to find valid IDs.
query_apl
Run an APL (Axiom Processing Language) query across one or more datasets and return tabular results. Wrap dataset names in ['brackets']. Supply startTime/endTime (RFC3339 or relative like now-1h). Returns query stats and result tables.
list_tokens
List API tokens in the organization. Returns token metadata (IDs, names, capabilities, expiration). Raw token values are never returned.
get_token
Retrieve metadata for a single API token by ID. The raw token value is not returned. Use list_tokens to find valid IDs.
get_current_user
Retrieve the user that the current API token belongs to, including their role.
list_users
List all users in the organization, including their names, emails, and roles.
get_user
Retrieve a single user by ID. Use list_users to find valid IDs.
validate_credential
Validate the Axiom API token and organization ID with a lightweight datasets lookup. A personal access token requires an organization ID; scoped API tokens do not.

How to set up Merge Agent Handler
In an mcp.json file, add the configuration below, and restart Cursor.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5 "headers": {
6 "Authorization": "Bearer yMt*****"
7 }
8 }
9 }
10}
11Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.
Make sure Claude is using the Node v20+.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "yMt*****"
14 }
15 }
16 }
17}Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "<ah-production-access-key>"
14 }
15 }
16 }
17 }In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".
You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.
Learn more in the official documentation ↗
1{
2 "inputs": [
3 {
4 "type": "promptString",
5 "id": "agent-handler-auth",
6 "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7 "password": true
8 }
9 ],
10 "servers": {
11 "agent-handler": {
12 "type": "stdio",
13 "command": "npx",
14 "args": [
15 "-y",
16 "mcp-remote@latest",
17 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18 "--header",
19 "Authorization: Bearer ${input:agent-handler-auth}"
20 ]
21 }
22 }
23}FAQs on using Merge's Axiom MCP server
FAQs on using Merge's Axiom MCP server
What is an Axiom MCP?
An Axiom MCP is a server that exposes Axiom's log and event data to your agents as callable tools. Your agents can use them to run APL queries, inspect dataset schemas, check monitor status, retrieve saved queries, and more.
Axiom offers an official MCP server, but you can also use one from a third-party platform, like Merge Agent Handler.
How can I use the Axiom MCP server?
The use cases naturally depend on the agent you've built, but here are a few common ones:
- Incident investigation: when an alert fires, an agent can query the relevant Axiom dataset for the error pattern, correlate it across services, and summarize the likely cause for the on-call engineer
- Log-driven root cause analysis: an agent can pull event data around a deploy timestamp and compare error rates before and after to confirm whether a release introduced a regression
- On-demand metrics in Slack: an engineer can ask their AI for the p95 latency or error count on a service over the last hour, and the agent runs the APL query and returns the result inline
- Monitor health reporting: an agent can review which Axiom monitors are currently triggered and assemble a daily reliability digest for the platform team
What are popular tools for Axiom's MCP server?
Here are some of the most commonly used tools:
query_apl: runs an Axiom Processing Language query against a dataset and returns the results. Useful for agents that need to answer a specific question about log or event data
get_dataset_schema: returns the fields and types in a dataset. Call this when an agent needs to understand a dataset's shape before constructing a query
list_datasets: returns all datasets available in the account. Good for workflows that need to locate the right data source before drilling in
get_saved_queries: retrieves previously saved APL queries. Helpful when an agent needs to reuse a team's established query instead of writing one from scratch
list_monitors: returns configured monitors and their current state. Use this when an agent reports on alerting health or checks whether a condition is already being watched
get_monitor_history: returns the trigger history for a monitor. Useful for agents that analyze how often an alert has fired over a window
What makes Merge Agent Handler's Axiom MCP server better than alternative Axiom MCP servers?
A few things set Merge Agent Handler's Axiom MCP server apart from building your own or using a community alternative:
- Enterprise-grade security and DLP: Merge Agent Handler includes built-in data loss prevention controls that let you block or redact sensitive fields before they reach an agent. For Axiom, this means log payloads containing tokens, IP addresses, or customer PII can be stripped before query results reach the agent
- Managed authentication and credentials: Merge stores and refreshes Axiom credentials on your behalf. You never expose raw API tokens to an agent or manage rotation manually
- Real-time observability and audit trail: Every tool call made against Axiom is logged with timestamp, tool name, input parameters, and response metadata. You get a record of exactly which datasets and queries an agent touched without adding instrumentation
- Tool Packs and controlled access: Tool Packs let you bundle specific Axiom tools with tools from other connectors into a single MCP endpoint, scoped to a specific use case. An agent gets exactly the tools it needs, nothing more
How can I start using Merge Agent Handler's Axiom MCP server?
You can take the following steps:
1. Create or log into your Merge Agent Handler account.
2. Install the Merge CLI by running pipx install merge-api, then run merge configure to link the CLI to your Merge account and merge login to authenticate your session.
3. Register the Agent Handler MCP server with Claude Code by running claude mcp add --transport http agent-handler https://ah-api.merge.dev/mcp, then open Claude Code and run /mcp to confirm agent-handler appears with a connected status.
4. Select agent-handler from the MCP list. This opens a browser window where you select which integrations to authenticate. Choose Axiom and complete the auth flow. Merge stores and manages the credentials going forward.
5. Open a Claude Code session and start querying Axiom data directly. The first time you use an Axiom tool, a Magic Link may appear to complete connector authentication.
If you want to connect Merge Agent Handler's Axiom MCP with internal or customer-facing agentic products, you can follow the steps in our docs.
Can employees use Merge Agent Handler to connect their AI tools to Axiom?
Yes, Agent Handler for Employees lets your employees connect Claude, ChatGPT, Microsoft Copilot, Cursor, and other MCP-compatible AI tools to Axiom without bypassing IT governance.
Instead of setting up direct connections with personal credentials that IT can't monitor or revoke, each employee authenticates through Agent Handler and gets individual credentials tied to their identity. An engineer can ask their AI to query a dataset, check a monitor, or summarize an error spike without ever handling a raw API token.
IT also provisions access by role or group via SCIM. An on-call SRE, for example, gets Axiom access to query incident logs, PagerDuty to manage alerts, and Slack to coordinate the response; while a platform engineer gets Axiom access to investigate event data, GitHub to trace the offending change, and Jira to file the follow-up.
Every tool call an employee's AI makes to Axiom is also inspected against your DLP rules and logged to a searchable audit trail, giving security teams full visibility into what data was accessed and by whom.
Ready to try it out?
Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now























