
Appian Dev MCP
by Appian Corporation
Description
Appian developers increasingly want to work alongside AI coding assistants, but those assistants have no safe, structured way to interact with an Appian environment. Appian Dev MCP closes that gap: it lets you drive Appian design work through natural language in any MCP-compatible AI client (such as Claude or Codex). Instead of clicking through Appian Designer object by object, you can ask your assistant to scaffold a new application, create record types and their backing database tables, add expression rules and interfaces, configure constants and integrations, or make repetitive and bulk changes — accelerating prototyping, application scaffolding, and routine development. Because the MCP server runs in your environment and acts as the signed-in developer, all work stays within your site and your existing permission boundaries.
Features
- Embedded, ready-to-run MCP server — install the plug-in, download the bundled server from it, and point any MCP-compatible AI client (e.g., Claude) at it. No separate infrastructure to stand up.
- Broad design-object coverage (120+ tools) — list, read, create, update, and delete Applications, Record Types (including database tables, fields, relationships, views, and actions), Constants (including list-typed), Expression Rules, Interfaces, Sites, Web APIs, Integrations, Connected Systems, Process Models, Groups, Folders, and Documents.
- SAIL CLI — a new command line tool that allows agents to click around sites, process forms, and record actions just like an end user. They can verify the functionality they've built faster and much more token-efficiently than they can with equivalent browser-based tools like Playwright.
- Flexible authentication — browser-based single sign-on (SSO) by default, capturing your session through a browser login without the need to store credentials in plain text. HTTP basic auth is also supported.
- Security-first by design — access is limited to Designer and administrator roles, and every operation executes under the authenticated user's own permissions, scoped to the objects they're allowed to see.
After installing the plugin, please use https://docs.appian.com/suite/help/26.5/devmcp.html for instructions on installation and use.
Release notes
Bundled skills have been broadly overhauled, removing many instances of guidance that foundation models already know, as well as incorrect guidance.
New Features:
- Tempo Report support: new MCP tools to get, create, update, delete.
- removeObjectsFromApplication: new tool used with addToApp to move objects between apps.
- addObjectsToApplication supports more types (connected systems, integrations, translation sets), and now only requires UUIDs and not the object types. It now distinguishes added objects from those that were already in the app.
- Support for deadlines and exception flows on process model nodes.
- Process model data management (cleanup/archive/delete, now an enum) and alerts can be set on create/update, not just read.
- Input descriptions: read and write rule input descriptions on expression rules, interfaces, and integrations.
Quality and guidance:
- Design guidance is now applied consistently to every object change. Create/update is blocked when a change would introduce a new finding (e.g. a hallucinated keyword), closing gaps where the policy was applied only in spots.
- validateDesignObjects now pulls design guidance for all objects; it previously skipped translation sets, process model folders, and application objects. Also added two more lint checks: rule recursion and unattended model loops.
- versionId and identifier/enum tool parameters are now described, and several wrong tool-name references in descriptions were corrected.
Bug Fixes:
- Interfaces, expression rules, constants, and integrations can no longer be made with names that Designer does not allow.
- Process Modeler no longer shows a broken icon for AI Agent / AI Skill smart-service nodes.
- listCustomDataTypes no longer returns duplicate rows for CDT versions and should be much faster on large sites.
- update responses for expression rules and interfaces no longer echo the whole expression back, saving tokens.
SAIL CLI:
- Better support for tasks and task lists.
Version history (11)
26.9.0
New Features:
- validateDesignObjects: this tool runs design-quality checks over an object, application, or package, at three levels: check (expression validation), test (test-case execution), and lint (31 static quality/design-guidance checks).
- Translation Set support: new MCP tools for Translation Set design objects.
- Binary & ZIP document uploads: uploadDocument now takes a file path instead of base64-encoded text, so you can upload ZIPs and other binary files as Appian documents.
- More process model fields: GET on a process model now returns display name, cleanup/auto-archive/auto-delete settings, and alert configuration. Per-node descriptions can be read and set; PM name/description can handle multiple locales.
- Broader security & dependency reads: getObjectSecurity / getObjectDependents now support process model folders and Knowledge Centers. getObjectSecurity now supports data stores and can report the default (All Other Users) role for objects.
- Application object additions: addObjectsToApplication now accepts all document and folder objects.
Bug Fixes:
- Adding a Send Email node via updateProcessModel no longer crashes on the BodyHTML expression.
- addCustomRecordField no longer sets sourceFieldName, which could break the record type in Record Type Designer under some conditions.
- Setting a record field of type Group or Folder no longer silently produces an Integer column.
- A JSON 403 (permission denied) is no longer misread as an expired browser session, so you no longer get spurious re-authentication prompts when you lack access to an object.
SAIL CLI:
- File upload and report links supported
- Improved link labeling
26.6.110
Skills bundling: Appian skills are now bundled with the Dev MCP plugin. If you already have 26.6.105, this is the first release that will automatically check whether you have updated the skills yourself.
New Features:
- Folder tools now allow creating and moving between all folder types
Bug Fixes:
- addPackageObjects now works with CDTs and data stores. Previously these two types failed to resolve.
- Process models with a start form no longer crash getProcessModel. Previously, this failed with "Unexpected error: 'interfaceUuid'".
- Interfaces that reference a record list action can now be saved. Record reference checking no longer rejects these.
- Faster listGroups on sites with many groups (now uses paged group lookup).
- listObjects now caps page size at 50 and defaults to 25, preventing oversized responses.
- Version-mismatch messages now point at the correct dev-mcp-bundle URL.
SAIL CLI:
- Windows setup now working again, fixed setup-windows.bat.
- Set Date and Time values, read link-field cells, and pass negative numbers as values.
- Name grid rows past an action column; a value on a handle-driven reference is now correctly refused.
- A picker search that suggests nothing now fails clearly instead of silently; plus more agent-testing fixes.
26.6.105
Skills bundling: Appian skills are now bundled with the Dev MCP plugin, eliminating the need for a separate skills repo clone. Run uv sync --force if you're not customizing your skills.
Plugin/MCP server version sync check: The MCP server now fails loudly on first tool use if it detects a version mismatch with the installed plugin, preventing confusing tool errors.
New Features:
- New tools to support AI-assisted migrations from CDT to record types: CDTs, data stores, and data store entities can now be created, read, updated, and deleted through Dev MCP. All XsdAnnotations can be viewed but not all can be modified.
- List Objects tool: gets all object types without referencing an app; optionally filter by application, object type, last modified date, and/or last modified by.
- Package management tools: 11 new tools for managing Appian deployment packages — create, get, list, update, delete, and add/remove objects from packages.
- Release management tools: 5 new tools for managing Appian releases (release tags that packages are associated with) — create, get, list, update, delete.
Bug Fixes:
- addRecordTypeRelationship now validates that the relationship name doesn't collide with an existing field name, preventing silent conflicts.
- validateExpression and createExpressionRule now reject references to non-existent record types instead of silently accepting them.
- createRecordType now preserves field description and displayName when creating fields inline. Previously these were silently dropped.
- updateCustomRecordField now works correctly instead of always returning an error.
- SAIL CLI: Record actions without a start form now chain to the task form automatically.
- Test case assertion values now stored as expressions instead of plain text, fixing round-trip issues.
- listAgents, listAiSkills, listRoboticTasks no longer crash with "Unexpected error: 'type'"; they now also require appUuid.
26.6.100
New Features:
- createUser tool for creating Appian user accounts
- Process history tools: View process execution history, events, and audit trail
- Existing table support: Record types can now connect to existing database tables, not just ones created through Appian. Table source and field mappings can be changed after creation.
- Node escalation support: Configure escalation timing, reassignment, notifications, priority changes, and event-producing escalations on process model nodes
Bug Fixes:
- Process model validation now delegates to the platform's own validation, catching more errors before save and producing clearer messages
- Invalid process node configurations now return 400 with a clear error instead of saving a broken model and returning 500
- Write Records node outputs now saved correctly
- Blank or null visibilityExpr on record views is now coerced to the default instead of failing
- Interface input handling: malformed inputs are refused without modifying the rule, and changed inputs automatically update and reconcile test cases
- Consistently use UUIDs for errorAlertGroupUuid on process models and groupUuids in security role maps. This closes remaining gaps where tools still incorrectly accepted group names.
- Data source compatibility fix for pre-26.7 sites
- Added annotations to every tool per MCP schema to give IDEs better intuition about which tools are read-only, potentially destructive, and/or idempotent.
- SAIL CLI: support for all record filter types (including date range filters)
- SAIL CLI: support sites with page groups
26.6.95
Many bug fixes to connected systems and integration rule support: previously, round-tripping through Dev MCP could corrupt or drop multiple object properties.
- Credentials now match the designer's stored format: Password encryption is correctly handled and credentials are no longer mangled on round-trip.
- Integrations that save HTTP responses as Appian documents now work correctly
- Document integrations that need a JSON path to extract the response body now store and read the path correctly
- Multiple fixes to ensure properties are not inadvertently changed
- Better syntax error prevention on expressions created within integrations
Complete support for record-level, view, and action security: Every security property that can be configured in Designer can now be configured through Dev MCP.
Bug Fixes:
- All process model security roles are now supported
- Subprocess node inputs are now always prefixed correctly
- Creating an application now sets the process model folder role map correctly; this had been blocking non-admin users from creating models in the app
- The Update Constant smart service node configuration now saves correctly
- SAIL CLI now correctly uses Remember Me
- Fixed null value handling in MCP tools that caused confusing errors
- All group tools now use UUIDs instead of names to identify groups
26.6.90
New testing tool! SAIL CLI is a new command line tool that allows agents to click around sites, process forms, and record actions just like an end user. They can verify the functionality they've built faster and much more token-efficiently than they can with equivalent browser-based tools like Playwright. New tool: Create and update portals objects Tool update: Process model tools can now configure MNI and timer events Auth update: Browser authentication is now the default auth method for Dev MCP. Check the docs for details
Bug Fixes:
- Group tools now access groups by UUID instead of name
- Process model tools no longer overwrite unsupported configurations
- Process model tools store swimlane configs more reliably
- Process model tools now return the correct URLs
- Reliably auto-quote expressions inputs in process models (and elsewhere)
- Expression validation always has a service context; this prevents some validation failures for rules without inputs
- Expression errors now preserve function name and line location
- Auto-correct malformed record type references in expressions
- Creating record user filters defined by an expression no longer always fails validation
- Creating a record type now requires a data source to be selected when there are multiple available
- Record-level security updates are significantly improved
- Working with the Write Records node in process models fails less often
- The listColumns field is now included in updateRecordType responses
- Integration with no relative path can now be opened in the integration designer
- More reliable use of required inputs for integration nodes in process models
26.6.85
New tools: view object version history and past versions New execution behavior: Locked objects now reject edit attempts with a clear error New diagnostics tool for troubleshooting and getting version info for bug reports
Tool Fixes
- Document and folder descriptions are viewable
- Changing document metadata no longer versions the document
- Changing folder metadata no longer results in a new version
- Fixed record type deletion feedback for agents
- Fixed swimlane assignment and serialization in process models
- Fixed site page add/remove/reorder bugs
- Adding a new site page no longer causes existing site pages to be recreated and lose configurations
- Date, datetime, and time types now function reliably for constant values and for testing inputs
- Application creation works for non-admin Designer users
- Record types and web APIs can be edited immediately after creation for non-admin Designer users
- testProcessModel correctly handles record-typed parameters
Auth and Ops
- MCP server now auto-trusts corporate certs (users no longer get SSL errors on corporate networks)
- Users no longer need to set LCP_API_PATH in their config
- Multi-user auth improvements (users prompted less frequently)
26.6.80
Remember to reinstall the MCP server based on the bundle in the plugin.
Notable:
- Creating rules, interfaces, or constants in an app where objects have previously been deleted no longer fails.
- Interface and expression rule tools now support an expressionFilePath parameter. When provided, the SAIL expression is written to (or read from) a file on disk instead of passed inline. This is both faster and uses fewer tokens.
New Features
- You can now view and set default values for process variables using updateProcessModel.
- Process model connections now support activity chaining, labels, and two other flags.
- Node inputs can now be set to Integer, Boolean, Decimal, and other types, not just Text.
- createExpressionRule, createInterface, and createConstant now accept a parentFolderUuid parameter.
Bug Fixes
- Creating a POST Web API no longer returns an error
- Explicit PK values are now supported when inserting record data. Previously explicit PK values were silently ignored and auto-increment was always used.
- The Write Records smart service node now correctly applies default values for User and Timestamp fields when set to an empty string
- listIntegrations now returns only actual integrations. Previously it returned too many objects
- listApplicationObjects no longer silently truncates results at 200 per object type
- updateProcessModel now correctly validates partial updates without requiring you to resend the entire model. Previously, omitting unchanged sections could trigger spurious validation errors.
- Folder tools now work with all folder types to list, update, and delete. Previously only a subset was recognized. searchFolders now also searches the Knowledge Center tree, not just Rules folders.
- testInterface now correctly handles record-type inputs. Previously passing a record type value as a test input caused a deserialization failure.
- Creating or updating integrations that use multipart request bodies no longer produces broken integration objects
26.6.75
- SSO site auth fixed — Browser-based auth flow was broken on SSO-only Appian sites. Fix incorporated into the plugin.
- Impact analysis tool — New tool that uses impact analysis to find all dependents of a given object UUID, returning UUID, object type, name, and IA breadcrumb.
- replaceDocumentContent fixed — Was trying to create a new document instead of a new version, causing "UUID already exists" errors. Now correctly creates a new version.
- uploadDocument error codes fixed — Was returning generic 403 for all failures. Now returns 404 (parent folder not found) or 400 (UUID is not a folder) as appropriate.
- createRecordType data source resolution fixed — Was always using the first configured data source regardless of what was passed. Now resolves correctly.
- Test cases preserved on update — updateInterface and updateExpressionRule were wiping all existing test scenarios on save. Now preserves them when only expression/inputs/name/description change.
26.6.65
- SSO site auth fixed — Browser-based auth flow was broken on SSO-only Appian sites. Fix incorporated into the plugin.
- Impact analysis tool — New tool that uses impact analysis to find all dependents of a given object UUID, returning UUID, object type, name, and IA breadcrumb.
- replaceDocumentContent fixed — Was trying to create a new document instead of a new version, causing "UUID already exists" errors. Now correctly creates a new version.
- uploadDocument error codes fixed — Was returning generic 403 for all failures. Now returns 404 (parent folder not found) or 400 (UUID is not a folder) as appropriate.
- createRecordType data source resolution fixed — Was always using the first configured data source regardless of what was passed. Now resolves correctly.
- Test cases preserved on update — updateInterface and updateExpressionRule were wiping all existing test scenarios on save. Now preserves them when only expression/inputs/name/description change.
26.5.55
Python version requirement relaxed to 3.12
The MCP server bundle now requires Python 3.12 or later (previously 3.13). This broadens compatibility for users who haven't yet upgraded to the latest Python.
Improved error handling
- Tool errors now comply with the MCP protocol's isError flag, giving IDEs clearer signal on failures vs. successful empty results
- Better error messages with structured error types
New tools and capabilities
- updateApplication: rename applications
- updateGroup: rename groups
- EXTRA_LONG_TEXT field type support for record types
- PROCESS_MODEL constant type support
- Multiple (list-typed) constant support
- Record view visibility flags on updateRecordType
- titleExpression on updateRecordType
- Batched fields and relationships in createRecordType for fewer round-trips