Alteryx Server

Alteryx Server

jupiterbak

Unlock advanced workflow automation, user management, and job tracking with Alteryx Server. Learn about Alteryx Server c

Integrates with Alteryx Server's REST API to enable workflow execution, collection management, user administration, schedule automation, job monitoring, and credential management for data analytics operations.

12295 views8Local (stdio)

About Alteryx Server

Alteryx Server is a community-built MCP server published by jupiterbak that provides AI assistants with tools and capabilities via the Model Context Protocol. Unlock advanced workflow automation, user management, and job tracking with Alteryx Server. Learn about Alteryx Server c It is categorized under developer tools, analytics data.

How to install

You can install Alteryx Server in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Alteryx Server is released under the NOASSERTION license.

AYX-MCP-Wrapper

Python 3.10+ License: MIT MCP Protocol

⚠️ DISCLAIMER

This is NOT an official implementation.

This project is a personal initiative and is not affiliated with, endorsed by, or supported by any company. Even if the maintainer is an employee of a related company, this project is developed independently without any official backing or support.


A Model Context Protocol (MCP) server that provides a comprehensive interface to Alteryx Servers. This wrapper enables AI assistants and other MCP clients to interact with Alteryx Server for managing workflows, collections, users, schedules, credentials, and more.

Features

  • Advanced Search: Find users, workflows, and assets with flexible search options
  • Workflow Operations: Execute, transfer, and manage workflows with full control
  • Workflow Assets: Download workflow packages and extract XML for analysis
  • Job Monitoring: Track and manage workflow execution jobs in real-time
  • Collections Management: Create, update, delete, and organize collections
  • User Management: Manage users, their assets, and permissions efficiently
  • Schedule Management: Create and manage workflow schedules and automation
  • Credential Management: Handle server credentials and secure connections

Prerequisites

  • Python 3.10+ - Modern Python with type hints support
  • Alteryx Server - With API access enabled
  • OAuth2 Credentials - Client ID and Secret for authentication

Installation

Quick Start with uv (Recommended)

# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install the MCP server
uv pip install mcp-server-alteryx

Using pip

pip install mcp-server-alteryx

From Source

git clone https://github.com/jupiterbak/AYX-MCP-Wrapper.git
cd AYX-MCP-Wrapper
uv sync
uv run pip install -e .

Configuration

Environment Variables

Set up your Server credentials using environment variables:

# Required: Server API URL
export ALTERYX_API_HOST="https://your-server.com/webapi/"

# Required: OAuth2 Client Credentials
export ALTERYX_CLIENT_ID="your-client-id"
export ALTERYX_CLIENT_SECRET="your-client-secret"

# Optional: SSL Verification (default: true)
export ALTERYX_VERIFY_SSL="1"

# Optional: temporary folder
export ALTERYX_TEMP_DIRECTORY="your-temp-directory"

# Optional: Logging level
export LOG_LEVEL="INFO"

Configuration File

Alternatively, create a .env file in your project root:

ALTERYX_API_HOST=https://your-server.com/webapi/
ALTERYX_CLIENT_ID=your-client-id
ALTERYX_CLIENT_SECRET=your-client-secret
ALTERYX_VERIFY_SSL=1
ALTERYX_TEMP_DIRECTORY=your-temp-directory
LOG_LEVEL=INFO

Usage

Claude Desktop Integration

To use this MCP server with Claude Desktop, add the following configuration to your Claude Desktop settings:

{
  "mcpServers": {
    "alteryx": {
      "command": "uvx",
      "args": ["mcp-server-alteryx", "--transport", "stdio"],
      "env": {
        "ALTERYX_API_HOST": "https://your-server.com/webapi/",
        "ALTERYX_CLIENT_ID": "your-client-id",
        "ALTERYX_CLIENT_SECRET": "your-client-secret",
        "ALTERYX_VERIFY_SSL": "1",
        "ALTERYX_TEMP_DIRECTORY": "your-temp-directory"
      }
    }
  }
}

However, we recommend to use it in combination with the "Sequential Thinking" tool:

```json
{   "mcpServers": {
  "sequential-thinking": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    },
    "alteryx": {
      "command": "uvx",
      "args": ["mcp-server-alteryx", "--transport", "stdio"],
      "env": {
        "ALTERYX_API_HOST": "http://localhost/webapi/",
        "ALTERYX_CLIENT_ID": "your-client-id",
        "ALTERYX_CLIENT_SECRET": "your-client-secret",
        "ALTERYX_VERIFY_SSL": "1",
        "ALTERYX_TEMP_DIRECTORY": "your-temp-directory"
      }
    }
  }
}

Configuration Options:

  • command: The uvx executable to use
  • args: Command line arguments for the MCP server
  • env: Environment variables for Server authentication

Transport Options:

  • stdio: Standard input/output (recommended for Claude Desktop)
  • sse: Server-Sent Events
  • streamable-http: HTTP streaming

Cursor Integration

For Cursor IDE integration, add to your Cursor settings:

{
  "mcpServers": {
    "alteryx": {
      "command": "uvx",
      "args": ["mcp-server-alteryx", "--transport", "stdio"],
      "env": {
        "ALTERYX_API_HOST": "https://your-alteryx-server.com/webapi/",
        "ALTERYX_CLIENT_ID": "your-client-id",
        "ALTERYX_CLIENT_SECRET": "your-client-secret",
        "ALTERYX_TEMP_DIRECTORY": "your-temp-directory"
      }
    }
  }
}

Command Line Interface

The MCP server can be run with different transport options:

# Using stdio transport (default)
uvx run src.main --transport stdio

# Using Server-Sent Events (SSE)
uvx run src.main --transport sse

# Using HTTP streaming
uvx run src.main --transport streamable-http

# Set log level
uvx run src.main --log-level DEBUG

# Run with custom configuration
uvx run src.main --transport stdio --log-level INFO

Available Tools

The MCP server provides comprehensive tools organized by functionality:

Collections Management

FunctionDescriptionParameters
get_all_collections()Retrieve all accessible collectionsNone
get_collection_by_id(collection_id)Get specific collection detailscollection_id: str
create_collection(name)Create a new collectionname: str
update_collection_name_or_owner(collection_id, name, owner_id)Update collection propertiescollection_id: str, name: str, owner_id: str
add_workflow_to_collection(collection_id, workflow_id)Add workflow to collectioncollection_id: str, workflow_id: str
remove_workflow_from_collection(collection_id, workflow_id)Remove workflow from collectioncollection_id: str, workflow_id: str
add_schedule_to_collection(collection_id, schedule_id)Add schedule to collectioncollection_id: str, schedule_id: str
remove_schedule_from_collection(collection_id, schedule_id)Remove schedule from collectioncollection_id: str, schedule_id: str
delete_collection(collection_id)Delete a collectioncollection_id: str

Workflow Operations

FunctionDescriptionParameters
get_all_workflows()Retrieve all accessible workflowsNone
get_workflow_by_id(workflow_id)Get specific workflow detailsworkflow_id: str
update_workflow_name_or_comment(workflow_id, name, comment)Update workflow propertiesworkflow_id: str, name: str, comment: str
transfer_workflow(workflow_id, new_owner_id)Transfer workflow ownershipworkflow_id: str, new_owner_id: str
get_workflow_jobs(workflow_id)Get jobs for a workflowworkflow_id: str
start_workflow_execution(workflow_id, input_data)Start workflow execution and return job IDworkflow_id: str, input_data: List[InputData]
execute_workflow_with_monitoring(workflow_id, input_data)Execute workflow and monitor completionworkflow_id: str, input_data: List[InputData]
download_workflow_package_file(workflow_id, output_directory)Download workflow packageworkflow_id: str, output_directory: str
get_workflow_xml(workflow_id)Extract workflow XMLworkflow_id: str

User Management

FunctionDescriptionParameters
get_all_users()Retrieve all accessible usersNone
get_user_by_id(user_id)Get specific user detailsuser_id: str
get_user_by_email(email)Find user by emailemail: str
get_user_by_name(name)Find user by namename: str
get_user_by_first_name(first_name)Find user by first namefirst_name: str
get_all_user_assets(user_id)Get all assets owned by useruser_id: str
get_user_assets_by_type(user_id, asset_type)Get specific asset typesuser_id: str, asset_type: str
update_user_details(user_id, first_name, last_name, email)Update user informationuser_id: str, first_name: str, last_name: str, email: str
transfer_all_assets(user_id, new_owner_id, transfer_workflows, transfer_schedules, transfer_collections)Transfer user assetsuser_id: str, new_owner_id: str, transfer_workflows: bool, transfer_schedules: bool, transfer_collections: bool
deactivate_user(user_id)Deactivate a useruser_id: str
reset_user_password(user_id)Reset user passworduser_id: str

Schedule Management

FunctionDescriptionParameters
get_all_schedules()Retrieve all accessible schedulesNone
get_schedule_by_id(schedule_id)Get specific schedule detailsschedule_id: str
deactivate_schedule(schedule_id)Deactivate a scheduleschedule_id: str
activate_schedule(schedule_id)Activate a scheduleschedule_id: str
update_schedule_name_or_comment(schedule_id, name, comment)Update schedule propertiesschedule_id: str, name: str, comment: str
change_schedule_owner(schedule_id, new_owner_id)Change schedule ownershipschedule_id: str, new_owner_id: str

Job Monitoring

FunctionDescriptionParameters
get_all_job_messages(job_id)Get messages for a specific jobjob_id: str
get_job_by_id(job_id)Get job details

README truncated. View full README on GitHub.

Alternatives

Related Skills

Browse all skills
usage-export

Export OpenClaw usage data to CSV for analytics tools like Power BI. Hourly aggregates by activity type, model, and channel.

1
mcp-developer

Use when building MCP servers or clients that connect AI systems with external tools and data sources. Invoke for MCP protocol compliance, TypeScript/Python SDKs, resource providers, tool functions.

1
ccxt-typescript

CCXT cryptocurrency exchange library for TypeScript and JavaScript developers (Node.js and browser). Covers both REST API (standard) and WebSocket API (real-time). Helps install CCXT, connect to exchanges, fetch market data, place orders, stream live tickers/orderbooks, handle authentication, and manage errors. Use when working with crypto exchanges in TypeScript/JavaScript projects, trading bots, arbitrage systems, or portfolio management tools. Includes both REST and WebSocket examples.

1
dotnet-backend

.NET/C# backend developer for ASP.NET Core APIs with Entity Framework Core. Builds REST APIs, minimal APIs, gRPC services, authentication with Identity/JWT, authorization, database operations, background services, SignalR real-time features. Activates for: .NET, C#, ASP.NET Core, Entity Framework Core, EF Core, .NET Core, minimal API, Web API, gRPC, authentication .NET, Identity, JWT .NET, authorization, LINQ, async/await C#, background service, IHostedService, SignalR, SQL Server, PostgreSQL .NET, dependency injection, middleware .NET.

109
supabase-developer

Build full-stack applications with Supabase (PostgreSQL, Auth, Storage, Real-time, Edge Functions). Use when implementing authentication, database design with RLS, file storage, real-time features, or serverless functions.

87
python-expert

Senior Python developer expertise for writing clean, efficient, and well-documented code. Use when: writing Python code, optimizing Python scripts, reviewing Python code for best practices, debugging Python issues, implementing type hints, or when user mentions Python, PEP 8, or needs help with Python data structures and algorithms.

40