Tool Catalog
AgentQ does its work by calling tools: named, structured operations that map to specific Qualytics capabilities. A tool is closer to an API call than to a free-form instruction. AgentQ cannot browse the internet or reach any service you have not configured, and it can only call the tools in this catalog. Some of those tools accept SQL that AgentQ writes, but AgentQ never sees the results of a query.
The same catalog is available everywhere AgentQ is used:
- The built-in AgentQ chat inside Qualytics.
- External AI clients connected over MCP, such as Claude Desktop, ChatGPT, or Cursor.
- The agentic endpoints used to build your own applications.
Two narrower assistants exist as well. The quality check and check template assistants that back the authoring forms use a small read-only subset of these tools and can only propose a definition for you to accept, never save one.
Whichever surface is used, every tool runs as the signed-in user and is subject to that user's team permissions. AgentQ has no identity or access of its own.
What Each Tool Shares with the Model
Because AgentQ sends tool results to a language model, it is worth knowing what those results contain. Every tool in this catalog falls into one of three categories.
| Category | What reaches the model |
|---|---|
| No Sharing | No information about your data at all. Rule type catalogs, User Guide content, validation errors, and static guidance. |
| Metadata Shared | Information about your data, but no values from it. Datastore, table, and column names, data types, descriptions, tags, row and anomaly counts, quality scores, timestamps, and quality check definitions. |
| Source Data Shared | Everything in Metadata Shared, plus one or more individual values from your data, appearing either in a quality check failure explanation or as a profile statistic. |
The categories are cumulative: each one includes everything above it in the table. They are also a control. A Manager or Admin chooses how far down this list AgentQ may go, so a tool below may be unavailable in your deployment even when your own permissions allow it. No Sharing is included automatically wherever an AI provider is configured. See AgentQ Access Controls.
Three things hold across the whole catalog, regardless of category:
- No tool returns your records in bulk. There is no tool that hands the model rows, result sets, or sample records. Values in the Source Data Shared category appear singly and incidentally, in the same way a steward sees a value when reading why a check failed.
- Masked fields stay masked. AgentQ cannot reveal the underlying value of a field you have masked. See Masked Fields below.
- Credentials are never shared. Connection details and secrets for your datastores and integrations are never sent to the model.
These categories describe what tools share from your connected data sources. Some tool results also identify platform users: user_profile returns your own profile, anomaly details include assignees' names and email addresses, comments carry their author's name, an anomaly's change history names the person behind each change, and a check's details name its owner and default anomaly assignee. In the built-in AgentQ chat and through the agentic endpoints, your own name, email address, and role are also shared with the model at the start of the conversation, before any tool is called. The narrower authoring assistants do not do this, and over MCP nothing is shared until a tool runs.
The category shown for each tool below describes the most it can share. Most calls share less.
Discovery
| Tool | Data | Description |
|---|---|---|
list_datastores |
Metadata Shared | List datastores, with optional filters for name, enrichment-only datastores, and whether the datastore has recurring schedules. |
datastore_describe |
Metadata Shared | Get the settings and status of one datastore. Connection details are excluded. |
list_containers |
Metadata Shared | List the tables, views, and files in a datastore. |
container_describe |
Metadata Shared | Get the details of one container, including its profile summary. |
list_fields |
Metadata Shared | List the fields in a container with their data types and nullability. |
field_describe |
Metadata Shared | Get the details of one field. |
field_profile_describe |
Source Data Shared | Get a field's profile statistics. See Profile statistics. |
global_search |
Metadata Shared | Search datastores, containers, and fields by name and return ranked matches. |
user_profile |
Metadata Shared | Get your own profile: your name, email address, role, favorites, and recent activity. |
Quality Checks
| Tool | Data | Description |
|---|---|---|
list_quality_check_specs |
No Sharing | List the available rule types and the properties each one accepts. |
list_quality_checks |
Metadata Shared | List the quality checks defined on a container. |
quality_check_describe |
Metadata Shared | Get the full definition of one quality check. |
create_quality_check |
Metadata Shared | Create a quality check. |
update_quality_check |
Metadata Shared | Update an existing quality check, including moving it between Draft and Active. |
validate_quality_check |
Metadata Shared | Test a proposed change to a check without saving it. |
dry_run_quality_check |
Metadata Shared | Run a check without recording anomalies and return counts only. It does not return the records that would fail. |
favorite_quality_check |
Metadata Shared | Add or remove a check from your favorites. |
delete_quality_check |
Metadata Shared | Archive a quality check, which can be restored later. By default this also removes the anomalies the check raised, unless you ask to keep them. |
list_quality_check_templates |
Metadata Shared | List the global quality check templates. |
create_quality_check_template |
Metadata Shared | Create a global template. |
update_quality_check_template |
Metadata Shared | Update a global template. |
delete_quality_check_template |
Metadata Shared | Archive a global template. |
The authoring assistants add two propose-only tools, propose_quality_check and propose_quality_check_template, which return a suggested definition for your review and cannot save anything.
Computed Assets
| Tool | Data | Description |
|---|---|---|
preview_query |
No Sharing | Check that a SELECT statement is valid before anything is created. See Validating SQL. |
create_computed_table |
Metadata Shared | Create a computed table in a JDBC datastore. |
create_computed_file |
Metadata Shared | Create a computed file in a file-based datastore such as S3, ADLS, or GCS. |
create_computed_join |
Metadata Shared | Create a join across containers, including across datastores. |
create_computed_field |
Metadata Shared | Add a derived or type-cast field to an existing container. |
describe_computed_container |
Metadata Shared | Get the transformation definition of a computed asset, including its SQL. |
update_computed_container |
Metadata Shared | Update a computed asset definition. |
delete_computed_container |
Metadata Shared | Delete a computed asset. |
update_computed_field |
Metadata Shared | Update a computed field definition. |
delete_computed_field |
Metadata Shared | Delete a computed field. |
validate_container |
Metadata Shared | Validate a computed asset definition without creating it. |
Anomalies and Remediation
| Tool | Data | Description |
|---|---|---|
list_anomalies |
Source Data Shared | List anomalies, filterable by datastore, container, and status. Each anomaly's description is built from its failed check messages, which can quote a value. |
anomaly_describe |
Source Data Shared | Get the full details of one anomaly, including which checks failed and why. |
get_anomaly_failed_checks |
Source Data Shared | List the checks that failed for one anomaly, with their explanations. |
get_anomaly_history |
Source Data Shared | Get the change history of one anomaly, including earlier versions of its description. |
update_anomaly |
Metadata Shared | Change an anomaly's status, for example to Acknowledged. |
bulk_update_anomalies |
Metadata Shared | Change the status of several anomalies at once. |
archive_anomaly |
Metadata Shared | Archive an anomaly with a final resolution status. |
create_comment |
Metadata Shared | Add a comment to an anomaly. |
list_comments |
Source Data Shared | Read the comments on an anomaly. Comment text is written by people and can quote records, so it is treated as source data. |
update_comment |
Metadata Shared | Edit a comment. |
delete_comment |
Metadata Shared | Delete a comment. |
Operations and Schedules
| Tool | Data | Description |
|---|---|---|
run_sync |
Metadata Shared | Sync a datastore, discovering and registering its tables and views. |
run_profile |
Metadata Shared | Profile a container. |
run_scan |
Metadata Shared | Scan a container against its active quality checks. |
run_export |
Metadata Shared | Export anomalies, checks, or profiles from a datastore. |
run_materialize |
Metadata Shared | Materialize a computed asset. |
run_external_scan |
Source Data Shared | Check records you supply against a container's active checks. Unlike every other tool here, the records are provided to Qualytics by the caller rather than read from your datastore. Violations create anomalies, and the built-in chat receives their descriptions in the response. |
get_operation_status |
Metadata Shared | Poll an operation for progress and completion. |
list_operations |
Metadata Shared | List recent operations. |
describe_operation |
Metadata Shared | Get the details of one operation. |
abort_operation |
Metadata Shared | Stop a running operation. |
rerun_operation |
Metadata Shared | Run an operation again with the same settings. |
restart_operation |
Metadata Shared | Restart an operation. |
delete_operation |
Metadata Shared | Delete an operation record. |
list_schedules |
Metadata Shared | List recurring schedules. |
describe_schedule |
Metadata Shared | Get the details of one schedule. |
create_schedule |
Metadata Shared | Create a recurring schedule for a sync, profile, scan, export, or materialize operation. |
update_schedule |
Metadata Shared | Change a schedule. |
run_schedule |
Metadata Shared | Trigger a scheduled operation immediately. |
set_schedule_deactivation |
Metadata Shared | Pause or resume a schedule. |
delete_schedule |
Metadata Shared | Delete a schedule. |
Operations run in the background. These tools return an operation identifier straight away rather than waiting, so AgentQ polls for completion before moving on to a dependent step.
Stewardship
| Tool | Data | Description |
|---|---|---|
update_field |
Metadata Shared | Update a field's description, tags, or status, including marking it masked. |
bulk_update_fields |
Metadata Shared | Update several fields at once. |
delete_field |
Metadata Shared | Exclude or delete a field. Fields are archived rather than removed by default. |
restore_field |
Metadata Shared | Return an excluded or masked field to active status. |
merge_fields |
Metadata Shared | Merge two fields in the same container. |
update_container |
Metadata Shared | Update a container's description, tags, or settings. |
bulk_update_containers |
Metadata Shared | Update several containers at once. |
favorite_container |
Metadata Shared | Add or remove a container from your favorites. |
delete_container |
Metadata Shared | Exclude or delete a container. A source table or file is archived, while a computed asset is permanently deleted. |
update_container_score_settings |
Metadata Shared | Change quality score weights and decay for a container. |
update_datastore |
Metadata Shared | Update a datastore's description, tags, or settings. |
favorite_datastore |
Metadata Shared | Add or remove a datastore from your favorites. |
assign_datastore_group |
Metadata Shared | Assign a datastore to a shared group, or remove it from one. |
list_datastore_groups |
Metadata Shared | List the available datastore groups. |
update_datastore_score_settings |
Metadata Shared | Change quality score weights and decay for a datastore. |
Tags
| Tool | Data | Description |
|---|---|---|
manage_tags |
Metadata Shared | Apply, remove, or replace tags on datastores, containers, fields, and checks. |
list_tags |
Metadata Shared | List global tags. |
describe_tag |
Metadata Shared | Get the details of one global tag. |
create_tag |
Metadata Shared | Create a global tag. |
update_tag |
Metadata Shared | Update a global tag. |
delete_tag |
Metadata Shared | Delete a global tag. |
Insights and Scores
| Tool | Data | Description |
|---|---|---|
quality_scores |
Metadata Shared | Get quality scores across the eight dimensions for a datastore, container, or field. |
get_insights |
Metadata Shared | Get daily metrics and trends for an asset, such as anomaly counts and score changes. |
operation_insights |
Metadata Shared | Get operation execution counts over a date range. |
Promotion
| Tool | Data | Description |
|---|---|---|
promote_computed_table |
Metadata Shared | Copy computed table definitions to another datastore. |
promote_computed_file |
Metadata Shared | Copy computed file definitions to another datastore. |
promote_computed_field |
Metadata Shared | Copy computed field definitions to another container. |
promote_quality_check |
Metadata Shared | Copy quality checks to another container, landing as Draft by default. |
Promotion copies definitions, not data.
Guided Workflows
| Tool | Data | Description |
|---|---|---|
workflow_analyze_trends |
No Sharing | Guidance for analyzing quality score and anomaly trends over time. |
workflow_investigate_anomaly |
No Sharing | Guidance for investigating an anomaly and proposing remediation. |
workflow_interpret_quality_scores |
No Sharing | Guidance for reading quality scores in business terms. |
workflow_generate_quality_check |
No Sharing | Guidance for turning a business rule written in plain language into a check. |
workflow_transform_dataset |
No Sharing | Guidance for building a computed asset from a description. |
These tools return a structured plan for approaching a task. They do not read your data or run other tools themselves. Any data involved arrives through the discovery, check, and anomaly tools that AgentQ calls as it follows the plan, and those calls are categorized above in the usual way.
Notifications and Tickets
| Tool | Data | Description |
|---|---|---|
list_integrations |
Metadata Shared | List your configured notification and ticketing integrations. Credentials are excluded. |
send_notification |
Metadata Shared | Send a message through a configured channel such as Slack, Microsoft Teams, email, webhook, or PagerDuty. |
create_ticket |
Metadata Shared | Create a ticket in Jira or ServiceNow, optionally linked to an anomaly. |
Guidance
| Tool | Data | Description |
|---|---|---|
search_userguide |
No Sharing | Search the Qualytics User Guide content bundled with your deployment. This is not a web search, and AgentQ has no other way to retrieve outside content. |
report_tool_constraint |
No Sharing | Report that a documented task cannot be completed reliably with the tools available, instead of guessing. |
report_no_direct_tool |
No Sharing | Disclose that no tool returns the requested answer directly, and describe the derivation AgentQ would use instead. See Answer Basis. |
Masked Fields
Field masking is yours to control, and AgentQ respects it. Set a field's status to masked and the following applies:
| Behavior | What happens |
|---|---|
| Distinct values in profile histograms | Replaced with a masked placeholder. |
| Values quoted in a quality check failure explanation | Replaced with <masked>. |
| Expected value checks | Never suggested for a masked field. |
| Unmasking | Not available to AgentQ in any form. |
Exporting or materializing with masked values included is a separate, permission-gated action on the operation itself. A dry run (dry_run_quality_check) can also be asked to include masked values, and the request goes through the same permission checks; either way, the dry run only returns summary counts to the model, never the values themselves. AgentQ will not request masked values unless you ask in the conversation, and it will not carry that request forward into later turns.
Profile statistics
field_profile_describe returns the statistics Qualytics computes when profiling a field: minimum, maximum, mean, sum, quartiles, standard deviation, and length extremes. These scalar statistics are numeric, so for text fields only the length and count statistics are populated.
Histogram buckets are the one part of a profile that contains literal values from the field. They are omitted unless explicitly requested, and for a masked field they are replaced with a placeholder.
Validating SQL
preview_query confirms that a statement is valid before a computed asset is created. To do that it runs the statement against your datastore with a row limit, under your own permissions. The results are used only to determine whether the query works, and are then discarded. No rows and no column names are returned to the model, and nothing is created or saved.
Only SELECT statements and WITH clauses are accepted. See AgentQ Limits for the full list of blocked statements.
Permissions
Every tool checks your team permissions before it acts, using the same rules as the rest of the platform:
| Kind of tool | Typical requirement |
|---|---|
| Reading assets, profiles, scores, checks, anomalies, operations, and schedules | Reporter team permission |
| Reading and writing comments, and checking an operation's progress | Viewer team permission |
| Creating a check as a Draft, and dry running a check | Drafter team permission |
| Creating a check as Active, and updating, validating, or deleting a check | Author team permission |
| Updating an anomaly's status, tags, assignees, or description | Author team permission |
| Archiving an anomaly | Editor team permission |
| Creating, changing, and deleting computed assets, fields, containers, datastores, and score settings | Editor team permission |
| Running operations, and creating, changing, running, pausing, or deleting schedules | Editor team permission |
| Deleting an operation record | Editor team permission, and you must have started the operation yourself unless you have the Admin role |
| Managing global templates and global tags, and sending through integrations | Manager or Admin role |
Team permissions build on one another: Editor includes Author, Author includes Drafter, Drafter includes Viewer, and Viewer includes Reporter, so a higher level always meets a lower requirement. Comments are personal: you can edit or delete only your own, although an Admin can delete any comment.
If you lack the permission for a tool, AgentQ tells you the action was not permitted rather than working around it. It cannot act outside your access, and it cannot grant itself more. The one exception is the Admin role, which has access to every datastore and is not subject to team permission checks.
Writes take effect as soon as a tool runs. There is no confirmation step built into the tools, so AgentQ is instructed to get your agreement before anything destructive or irreversible. What a deletion does depends on the tool. Deleting a field, a quality check, or a check template archives it rather than removing it, and an archived field or check can be restored. Deleting a check also removes the anomalies it raised by default, unless you ask to keep them. The same goes for deleting a source table or file, while deleting a computed asset, a computed field, a tag, a schedule, a comment, or an operation record is permanent and cannot be undone. The validate and dry run tools let you check a definition before committing to it.
Related
- AgentQ Access Controls for how an administrator enables or disables these categories.
- AgentQ in Action for how these tools are surfaced during a conversation.
- MCP for how external clients discover and call them.
- AgentQ Limits for rate limits, listing limits, timeouts, and SQL constraints.
- Agentic Endpoints for building your own applications on these capabilities.