Connect your AI Agents to Anaplan in minutes

Merge lets you securely connect your agents to Anaplan and thousands of tools instantly

Available tools

list_exports

List all export actions defined in an Anaplan model. Export actions extract data from modules or lists to files. Returns export IDs, names, types, and source/target information. Use export IDs with run_export to execute data extractions.

get_export

Get detailed information about a specific Anaplan export action. Returns export name, type, source module/view, target file, and format configuration. Use to understand export configuration before running.

run_export

Execute an Anaplan export action to extract data from a model. Starts an asynchronous export task and returns task ID for monitoring. Use get_export_task to monitor progress and get_export_data to retrieve the exported data once the task completes successfully.

get_export_task

Get the status and progress of a running or completed Anaplan export task. Returns task state (NOT_STARTED, IN_PROGRESS, COMPLETE, CANCELLED, FAILED), progress percentage, current step, and any failure details. Poll this endpoint until task state is COMPLETE, then use get_export_data.

get_export_data

Download the data from a completed Anaplan export task. Only call after get_export_task shows state=COMPLETE. Returns the exported data content (typically CSV format). Requires workspace_id, model_id, export_id, and task_id.

list_files

List all files available in an Anaplan model. Files are used as sources for imports and targets for exports. Returns file IDs, names, formats, delimiters, and chunk information. Use file IDs with upload_file to prepare data for imports.

get_file

Get detailed information about a specific Anaplan file. Returns file name, format, delimiter, encoding, header row, first data row, and chunk count. Use to understand file structure before uploading or downloading.

upload_file

Upload content to an Anaplan file (for small files). Replaces the entire file content with the provided string data. Typically used for CSV data to be imported. For large files, use upload_file_chunk to upload in parts. File must already exist in the model (created via Anaplan UI or API).

upload_file_chunk

Upload a chunk of a large file to Anaplan. For files larger than 50MB, split content into chunks and upload sequentially. Chunk index is 0-based. Data should be base64-encoded binary content. After uploading all chunks, the file is automatically assembled.

download_file

Download the content of an Anaplan file. Returns the file content (typically CSV data from exports). For large files with multiple chunks, this downloads the first chunk. Use get_file first to check chunk_count if downloading large files.

delete_file

Delete a file from an Anaplan model. Removes the file and its content. Cannot be undone. Use with caution as imports relying on this file will fail.

list_imports

List all import actions defined in an Anaplan model. Import actions load data from files or other sources into modules or lists. Returns import IDs, names, types, and source/target information. Use import IDs with run_import to execute data loads.

get_import

Get detailed information about a specific Anaplan import action. Returns import name, type, source file/location, target module/list, and mapping configuration. Use to understand import configuration before running.

run_import

Execute an Anaplan import action to load data into a model. Starts an asynchronous import task and returns task ID for monitoring. Optionally pass mapping_parameters for dynamic column mappings. Upload source file first using upload_file if importing from a file. Use get_import_task to monitor import progress and check for errors.

get_import_task

Get the status and progress of a running or completed Anaplan import task. Returns task state (NOT_STARTED, IN_PROGRESS, COMPLETE, CANCELLED, FAILED), progress percentage, current step, and any failure details. Use to monitor import execution and check for errors. Poll this endpoint until task state is COMPLETE or FAILED.

list_lists

List all dimension lists in an Anaplan model. Lists are hierarchical dimensions (e.g., Products, Regions, Time Periods) that provide structure and categorization for module data. Returns list IDs, names, item counts, and property information. Essential for understanding model dimensions and managing reference data.

get_list

Get detailed information about a specific Anaplan dimension list. Returns list name, properties, item count, subset count, and selective access configuration. Use to understand list structure before adding or modifying items.

get_list_items

Get all items in an Anaplan dimension list with their properties. Returns item IDs, names, codes, parent relationships (for hierarchies), and custom property values. Use include_all=True to get all properties for each item. Essential for reading reference data and hierarchical structures.

add_list_items

Add new items to an Anaplan dimension list. Supports adding items with names, codes, parent relationships (for hierarchies), and custom property values. Use for maintaining reference data, adding new products, regions, or other dimensions. Items array should contain objects with name (required), code (optional), parent (optional), and properties (optional) fields.

update_list_item

Update properties of an existing item in an Anaplan dimension list. Can modify name, code, parent relationship, and custom property values. Requires workspace_id, model_id, list_id, item_id, and properties dict. Use for updating reference data, renaming items, or changing hierarchies.

delete_list_items

Delete items from an Anaplan dimension list by item IDs. Removes items and their data from the model. Use with caution as deletion affects all modules using this dimension. Requires workspace_id, model_id, list_id, and array of item_ids to delete.

list_models

List all models within a specific Anaplan workspace. Models are the core containers for enterprise planning data, containing modules, lists, import/export actions, and business logic. Returns model IDs, names, active states, memory usage, and category information. Requires workspace_id - use list_workspaces first to get available workspace IDs.

get_model

Get detailed information about a specific Anaplan model by workspace and model ID. Returns comprehensive model metadata including name, active state, memory usage, last modification details, category, and direct URL for web access. Essential for understanding model configuration before running imports, exports, or processes.

get_model_calendar

Get the calendar configuration for an Anaplan model. The model calendar defines time periods, fiscal years, and date hierarchies used throughout the model for time-based planning and reporting. Important for understanding how time dimensions are structured in the model.

list_versions

List all versions (scenarios) in an Anaplan model. Versions represent different planning scenarios like Actuals, Budget, Forecast. They allow comparison of different data sets across the same model structure. Returns version IDs and names that can be used for filtering data operations.

list_modules

List all modules within an Anaplan model. Modules are the primary containers for data in Anaplan, each representing a multi-dimensional data cube with line items and dimensions. Returns module IDs, names, and codes. Use module IDs to access views, line items, and data within each module.

get_module

Get detailed information about a specific Anaplan module by ID. Returns module name, code, and configuration details. Useful for understanding module structure before accessing its views or line items.

list_views

List all saved views within an Anaplan module. Views are pre-configured perspectives of module data with specific row/column arrangements and page filters. Returns view IDs and names. Use view IDs with get_view_data to retrieve formatted data from the module.

get_view_data

Retrieve data from a specific Anaplan view in JSON, CSV, or TXT format. Views provide formatted access to module data with pre-configured dimensions. Supports page selections for filtering data by specific dimension items. Use for reading planning data, reports, or exporting data subsets. Parameters: workspace_id, model_id, module_id, view_id required; export_format optional (json/csv/txt); pages optional for filtering.

list_line_items

List all line items within an Anaplan module. Line items are the individual data elements (columns) in a module, each with its own format, formula, and dimension mappings. Returns line item IDs, names, codes, formats, formulas, and applied dimensions. Essential for understanding module structure and data content.

list_processes

List all processes defined in an Anaplan model. Processes are multi-step workflows that combine imports, exports, delete actions, and other operations into a single executable sequence. Returns process IDs, names, and step information. Use process IDs with run_process for automated workflow execution.

get_process

Get detailed information about a specific Anaplan process. Returns process name, all steps with their types and order, and configuration details. Use to understand workflow composition before executing.

run_process

Execute an Anaplan process to run a multi-step automated workflow. Starts an asynchronous process task and returns task ID for monitoring. The process will execute all configured steps in sequence. Use get_process_task to monitor progress and check for errors.

get_process_task

Get the status and progress of a running or completed Anaplan process task. Returns task state, progress percentage, current step being executed, and any failure details. Processes may have multiple steps, so currentStep shows which step is active. Poll until state is COMPLETE or FAILED.

list_actions

List all generic actions in an Anaplan model (delete actions, etc.). Actions are single-step operations that modify data in the model. For imports, exports, and processes, use their specific list tools. Returns action IDs, names, and types.

get_action

Get detailed information about a specific Anaplan action. Returns action name, type, and configuration details. Use to understand action behavior before running.

run_action

Execute a generic Anaplan action (delete action, etc.). Starts an asynchronous task and returns task ID for monitoring. For imports, exports, and processes, use their specific run tools. Use get_import_task, get_export_task, or get_process_task to monitor based on the action type.

list_users

List all users with access to a specific Anaplan workspace. Returns user IDs, names, emails, roles, and active status. Useful for understanding who has access to planning data and for assigning tasks or permissions.

get_user

Get detailed information about a specific Anaplan user by ID. Returns user name, email, first/last name, role, active status, and last login timestamp. Requires workspace_id and user_id.

get_current_user

Get information about the currently authenticated Anaplan user. Returns the user ID, email, name, and tenant ID associated with the API credentials being used. Useful for auditing and understanding current access context.

validate_credential

Validate Anaplan credentials. Verifies credentials during setup.

list_workspaces

List all workspaces accessible to the authenticated user in Anaplan. Workspaces are organizational containers that hold models for enterprise planning. Returns workspace IDs, names, active status, and storage information. Use this to discover available workspaces before accessing models or data.

get_workspace

Get detailed information about a specific Anaplan workspace by ID. Returns workspace name, active status, storage allowance and current usage. Use workspace IDs obtained from list_workspaces to access specific workspace details. Required before accessing models within a workspace.

View all tools by creating a free accountSee more tools

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}
11
Copy Code

Open 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}
Copy Code
Copied!

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  }
Copy Code

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}
Copy Code

FAQs on using Merge's Anaplan  MCP server

FAQs on using Merge's Anaplan  MCP server

Explore other MCP servers built and managed by Merge

No items found.

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