home / mcp / anaplan mcp server

Anaplan MCP Server

Provides access to Anaplan Integration API v2 for exploring models, reading/writing data, and running bulk and transactional actions via 43 tools.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "larasrinath-anaplan-mcp": {
      "command": "node",
      "args": [
        "/absolute/path/to/anaplan-mcp/dist/index.js"
      ],
      "env": {
        "ANAPLAN_PASSWORD": "YOUR_PASSWORD",
        "ANAPLAN_USERNAME": "YOUR_USERNAME"
      }
    }
  }
}

You set up a Model Context Protocol (MCP) server that connects AI assistants to Anaplan's Integration API v2. It lets your AI tools explore model structures, read and write data, run imports/exports and processes, manage files, and administer lists through 43 structured tools, all with secure authentication and automatic token handling.

How to use

You interact with the Anaplan MCP server through an MCP client such as Claude Desktop or Claude Code. Start the server locally and configure your client to connect to it. Once connected, you can ask your AI assistant to navigate workspaces, inspect models, read or write cell data, run bulk actions like imports or exports, manage files, and modify lists. Use the 43 tools to perform tasks in a single conversational flow, with the server handling authentication, retries, and pagination where needed.

How to install

git clone https://github.com/larasrinath/anaplan-mcp.git
cd anaplan-mcp
npm install
npm run build
```

Configure your MCP client by creating or editing the MCP configuration to register this server. Include the following JSON snippet in your MCP client config, replacing the absolute path with the location where you built the server:
```json
{
  "mcpServers": {
    "anaplan": {
      "command": "node",
      "args": ["/absolute/path/to/anaplan-mcp/dist/index.js"],
      "env": {
        "ANAPLAN_USERNAME": "[email protected]",
        "ANAPLAN_PASSWORD": "your-password"
      }
    }
  }
}
```

Important: Use the exact absolute path to the built server in the args. After updating the MCP client configuration, restart the MCP client to load the new server and make the 43 Anaplan tools available to your AI.

Additional notes

Browser-based AI products cannot launch local MCP servers. MCP servers run as local processes on your machine, and the AI client spawns the server over stdio. If you use a web-based AI, you will need a desktop application on the same machine to connect to the MCP server.

Authentication

The server supports three authentication methods, auto-detected from environment variables. If multiple methods are configured, the highest-priority method is chosen. The methods are: Certificate, OAuth2 Device Grant, and Basic. Tokens are cached in memory and auto-refreshed before expiry, so you don’t need to manage tokens manually.

Security and best practices

- Keep your credentials secure and out of version control. Never expose API credentials in public places. - Test changes in non-production environments before applying to live data. - Review AI-generated actions before confirming operations that modify data, such as imports, writes, or deletes.

Available tools

show_workspaces

List all accessible workspaces to understand the scope of your Anaplan environment.

show_workspacedetails

Retrieve details about a workspace, including size and active status.

show_models

List models within a specific workspace to locate the model you need.

show_allmodels

List all models across all workspaces for quick discovery.

show_modeldetails

Get detailed metadata about a model, including its status and workspace association.

show_modelstatus

Check current model status such as memory usage and export progress.

show_modules

List modules inside a model to identify where data lives.

show_moduledetails

Provide detailed information about a module, including its dimensions.

show_lineitems

List line items within a module to understand how values are structured.

show_alllineitems

List all line items across a model for cross-module analysis.

show_lineitemdimensions

Show the dimension IDs associated with a line item.

show_lineitemdimensionitems

List items for a specific dimension within a line item.

show_savedviews

List saved views within a module for quick data access.

show_allviews

Enumerate all views in a model across modules.

show_viewdetails

Get dimension metadata for a view, including rows, columns, and pages.

show_lists

List all dimensions (lists) in a model to manage hierarchical data.

get_list_items

Retrieve items contained within a list.

show_listmetadata

Fetch list-level metadata such as properties, parent relationship, and item counts.

show_dimensionitems

List all items within a dimension at the model level.

show_viewdimensionitems

List selected items in a dimension as configured for a view.

lookup_dimensionitems

Look up dimension items by name or code for quick access.

show_imports

List available import actions to push data into Anaplan.

show_importdetails

Get the metadata for a specific import definition.

show_exports

List available export actions to extract data from Anaplan.

show_exportdetails

Get metadata for a specific export definition.

show_processes

List processes that can be run in Anaplan to automate workflows.

show_processdetails

Get metadata for a specific process definition.

show_files

List files stored in a model to manage data attachments.

show_actions

List available actions, including delete actions, for a model.

show_actiondetails

Get metadata for a specific action definition.

run_export

Execute an export action and return the exported data.

run_import

Upload data to a file, then run an import action.

run_process

Execute a process, enabling chained actions to run in sequence.

run_delete

Execute a delete action to remove data from a module.

upload_file

Upload CSV or text data to an Anaplan file, supporting chunked uploads for large files.

download_file

Download file content from a model for offline use.

delete_file

Delete a file from a model to clean up storage.

get_action_status

Check the status of a running action using its task ID.

read_cells

Read cell data from a module view to extract current values.

write_cells

Write values to specific cells in a module to update data.

add_list_items

Add new items to a list to expand the dataset.

update_list_items

Update properties of existing list items to reflect changes.

delete_list_items

Remove items from a list to prune the dataset.