Free cookie consent management tool by TermsFeed

MCP System Tools Reference

On This Page

System administrators, developers, and end users use this reference to understand the system-level Model Context Protocol (MCP) tools provided by Appian MCP Server out of the box.

Appian MCP Server enforces the same object security, record-level security, and group membership as the Appian platform. System tools are MCP tools provided by Appian that handle discovery, invocation, and data access. System administrators enable or disable tool collections in the Admin Console. For configuration instructions, see Enable and Configure Appian MCP Server.

Note:  This reference page lists system tool names for developer integration purposes. When describing MCP capabilities in user-facing content, refer to the capability (querying data, starting processes) rather than the tool name. Tool names are subject to change.

How system tools work with developer-enabled tools

Appian MCP Server provides two categories of Model Context Protocol (MCP) tools:

  • System tools (documented in the sections that follow) provide discovery and data access. System tools let external AI applications find available tools, retrieve schemas, invoke design objects, and query the data fabric.
  • Developer-enabled tools provide business logic. Developers make process models, expression rules, and AI agents available through MCP. For enablement instructions, see Make Design Objects Available as MCP Tools.

System tools and developer-enabled tools work together. The AI application uses system tools to discover and invoke developer-enabled tools.

Generic tools

Generic Model Context Protocol (MCP) tools handle discovery and invocation of developer-enabled design objects. These tools form the core workflow for interacting with Appian business logic through MCP.

appian_search_tools

Search for available design objects that have been made available as MCP tools.

Property Value
Tool Description Search for available MCP tools by keyword. Returns tool names, descriptions, and types matching the search query.
Permissions required Authenticated user. Results filtered by object security and group membership.

Inputs:

Name Type Required Description
query Text Yes A keyword or phrase describing the capability you are looking for.

Outputs:

Name Type Description
tools List of Map A list of matching tools with name, description, type, and identifier for each.

Limitations: Results only include tools the authenticated user has permission to access.

appian_get_tool_schema

Get the full input and output schema for a specific design object enabled as an MCP tool.

Property Value
Tool Description Retrieve the complete input and output schema for a specific MCP tool, including parameter names, types, required/optional designations, and nested field definitions.
Permissions required Authenticated user must have viewer access to the design object.

Inputs:

Name Type Required Description
toolId Text Yes The unique identifier of the MCP tool returned by appian_search_tools.

Outputs:

Name Type Description
schema Map The full input and output schema for the tool, including parameter definitions and data types.

appian_invoke_process_model

Start a process model that has been made available as an MCP tool and wait for completion.

Property Value
Tool Description Invoke a process model with the provided input parameters. The tool starts the process and waits for it to reach a terminal node.
Permissions required Authenticated user must have viewer access to the process model and must be an allowed initiator.

Inputs:

Name Type Required Description
toolId Text Yes The unique identifier of the MCP-enabled process model.
inputs Map No A map of input parameter names to values, matching the process model's input variables.

Outputs:

Name Type Description
processId Number (Integer) The ID of the process instance that was started.
status Text The completion status of the process.
outputs Map The output values from the completed process, if any.

Limitations: Process models with start forms or synchronous user input tasks stall until timeout. Design process models for MCP invocation without UI-dependent steps.

appian_get_process_status

Check the status of a running or completed process instance started through MCP.

Property Value
Tool Description Retrieve the current status of a process instance, including whether it is running, completed, or failed.
Permissions required Authenticated user must have viewer access to the process model.

Inputs:

Name Type Required Description
processId Number (Integer) Yes The process instance ID returned by appian_invoke_process_model.

Outputs:

Name Type Description
status Text The current status of the process instance (running, completed, failed, or cancelled).
outputs Map The output values from the process, if completed.

appian_invoke_expression_rule

Evaluate an expression rule that has been made available as an MCP tool with provided inputs.

Property Value
Tool Description Invoke an expression rule with the provided input parameters and return the result.
Permissions required Authenticated user must have viewer access to the expression rule.

Inputs:

Name Type Required Description
toolId Text Yes The unique identifier of the MCP-enabled expression rule.
inputs Map No A map of input parameter names to values, matching the expression rule's inputs.

Outputs:

Name Type Description
result Any Type The return value of the expression rule evaluation.

Limitations: If the expression rule queries objects the authenticated user lacks access to, the rule succeeds but returns null for inaccessible data.

appian_invoke_agent

Invoke an Appian AI agent that has been made available as an MCP tool with a message.

Property Value
Tool Description Send a prompt to an Appian AI agent and receive the response. The interaction is single-turn.
Permissions required Authenticated user must be on the role map for the AI agent and all of its underlying tools.

Inputs:

Name Type Required Description
toolId Text Yes The unique identifier of the MCP-enabled AI agent.
message Text Yes The natural language prompt to send to the AI agent.

Outputs:

Name Type Description
invocationId Text The unique identifier for this agent invocation.
response Text The AI agent's response to the prompt.
status Text The completion status of the agent invocation.

Limitations: Multi-turn conversations are not supported through MCP. Each invocation is a single prompt and response.

appian_get_agent_status

Check the status of a running or completed AI agent invocation started through MCP.

Property Value
Tool Description Retrieve the current status of an AI agent invocation, including whether it is running, completed, or failed.
Permissions required Authenticated user must be on the role map for the AI agent.

Inputs:

Name Type Required Description
invocationId Text Yes The invocation ID returned by appian_invoke_agent.

Outputs:

Name Type Description
status Text The current status of the agent invocation (running, completed, or failed).
response Text The AI agent's response, if completed.

Data fabric tools

Data fabric Model Context Protocol (MCP) tools provide direct access to Appian record data without requiring developers to enable individual record types as MCP tools. System administrators enable or disable the Query Data Fabric tool collection in the Admin Console. For background on the data fabric, see Appian Data Fabric.

Data fabric MCP tools identify record types by their SQL reference name. Appian automatically generates a SQL reference name for each record type, and developers can edit the name in the record type's properties. AI applications use the SQL reference name as the table identifier when constructing queries against the data fabric.

appian_data_fabric_metadata

Get available record types, fields, and relationships in the data fabric to understand which data to query.

Property Value
Tool Description Retrieve metadata about available record types, including field names, field types, and relationships between record types.
Permissions required Authenticated user. Results filtered by object security and field-level security.

Inputs:

Name Type Required Description
recordType Text No (Optional) If provided, returns metadata for a specific record type. If omitted, returns a list of all synced record types.

Outputs:

Name Type Description
recordTypes List of Map A list of record type definitions including the SQL reference name, fields (with types), and relationships.

appian_data_fabric_sql_query

Query record data using SQL syntax.

Property Value
Tool Description Execute a SQL query against Appian record data. Returns results filtered by record-level security and field-level security.
Permissions required The service account must have at least Viewer permission to the record type. Results are further filtered by record-level security and field-level security.

Inputs:

Name Type Required Description
query Text Yes A SQL query string targeting synced record types. The SQL reference name configured on the record type is used as the table name in the query.

Outputs:

Name Type Description
results List of Map The query results as a list of records, with each record containing field name/value pairs.
rowCount Number (Integer) The number of rows returned.

Limitations: Appian MCP Server cannot query the following record types:

End-to-end example

The following example shows how an AI application uses Model Context Protocol (MCP) system tools to answer a user's question:

  1. A user asks their AI application: "How many open support cases are assigned to the West region?"
  2. The AI application calls appian_data_fabric_metadata to discover available record types and finds a "Support Case" record type with fields for status and region.
  3. The AI application calls appian_data_fabric_sql_query with a SQL query filtering for open cases in the West region.
  4. The AI application receives the filtered results (respecting all record type security) and returns the count to the user.

For a more complex example using developer-enabled tools:

  1. A user asks: "Calculate the discount for order 12345."
  2. The AI application calls appian_search_tools with the query "calculate discount" and finds an MCP-enabled expression rule called "Calculate Order Discount."
  3. The AI application calls appian_get_tool_schema to retrieve the input schema (order ID as a required input).
  4. The AI application calls appian_invoke_expression_rule with the order ID.
  5. The AI application receives the calculated discount value and returns it to the user.

Feedback