### Install dependencies Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Downloads and installs the necessary Go module dependencies for the project. ```bash go mod download ``` -------------------------------- ### Install Kanboard MCP Dependencies Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/CLAUDE.md Download and install all project dependencies for the Kanboard MCP server using Go modules. ```bash # Install dependencies go mod download ``` -------------------------------- ### Example tool_search Query for Task Tools Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md This example demonstrates how to use the `tool_search` tool to find all task management tools. The `query` parameter specifies the search term, and `search_type` defaults to 'auto'. ```text Use tool_search with query "task" to find all task management tools ``` -------------------------------- ### Example: Build and Push to Registry Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md Builds a multi-platform Docker image tagged with a specific version and pushes it to the GitHub Container Registry. ```bash ./build.sh -a all -r ghcr.io/bivex -p -t v1.2.3 ``` -------------------------------- ### Example tool_search Query with BM25 Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md This example demonstrates using the `tool_search` tool with `search_type` set to 'bm25' for keyword-based semantic matching. The query 'upload file attachment' will find tools relevant to this action. ```text Use tool_search with query "upload file attachment" and search_type "bm25" ``` -------------------------------- ### Start Kanboard MCP stdio Mode with Docker Compose Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Starts the Kanboard MCP service in standard input/output (stdio) mode for interactive use via Docker Compose. ```bash # Copy example environment file cp .env.example .env # Edit .env with your Kanboard credentials # Start stdio mode (interactive) docker-compose run --rm mcp-stdio ``` -------------------------------- ### Start Kanboard MCP HTTP Server with Docker Compose Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Starts the Kanboard MCP service in Streamable HTTP mode using Docker Compose. Ensure the .env file is configured with your Kanboard credentials. ```bash # Copy example environment file cp .env.example .env # Edit .env with your Kanboard credentials # Start Streamable HTTP server (port 8082) docker-compose up mcp-http ``` -------------------------------- ### Clone Kanboard MCP Repository Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Clone the repository to your local machine and navigate into the project directory. This is the first step for installation. ```bash git clone cd kanboard-mcp ``` -------------------------------- ### Start Full Testing Environment with Docker Compose Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Launches the Kanboard MCP service along with Kanboard itself for comprehensive testing using Docker Compose with the 'full' profile. ```bash # Copy example environment file cp .env.example .env # Edit .env with your Kanboard credentials # Start with Kanboard for full testing docker-compose --profile full up ``` -------------------------------- ### Example: Development Workflow - Single Platform Build Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md During development, quickly build for a single platform (e.g., amd64) for faster iteration. This command builds the image. ```bash # Build for amd64 only (faster) ./build.sh -a amd64 ``` -------------------------------- ### Start Kanboard MCP SSE Server with Docker Compose Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Starts the Kanboard MCP service in SSE mode using Docker Compose. Ensure the .env file is configured with your Kanboard credentials. ```bash # Copy example environment file cp .env.example .env # Edit .env with your Kanboard credentials # Start SSE server (port 8081) docker-compose up mcp-sse ``` -------------------------------- ### Example: Development Workflow - Export to Test Directory Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md After building for a single platform during development, this command exports the binaries to a specified test directory for quick local testing. ```bash # Export to test directory ./build.sh -a amd64 -e -o ./test-bin ``` -------------------------------- ### Verify Buildx Installation Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md Check the installed version of Docker Buildx and inspect its bootstrap status to ensure it's ready for cross-platform builds. ```bash docker buildx version docker buildx inspect --bootstrap ``` -------------------------------- ### Example tool_search Query with Regex Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md This example shows how to use the `tool_search` tool with a specific `search_type` set to 'regex' for exact pattern matching. The query `get_.*_by_id` will find tools with names matching this regular expression. ```text Use tool_search with query "get_.*_by_id" and search_type "regex" ``` -------------------------------- ### Run Kanboard MCP Server (Command Line) Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Start the MCP server using command-line flags to specify the transport mode and port. The default mode is stdio, suitable for local development. ```bash # stdio mode (default, for local development) ./kanboard-mcp # SSE mode on port 8080 ./kanboard-mcp --sse --port 8080 # Streamable HTTP mode (recommended for containers) ./kanboard-mcp --streamablehttp --port 8080 ./kanboard-mcp --http --port 8080 # alias # Show version information ./kanboard-mcp --version ``` -------------------------------- ### Claude Code Integration: Discovering Tools by Question Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md This example illustrates how a user can ask Claude a natural language question to discover relevant tools. Claude will internally use `tool_search` to find tools like `create_project_file` and `get_all_project_files` based on the query 'managing project files'. ```text What tools are available for managing project files? ``` -------------------------------- ### Custom Docker Compose Configuration Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Example of a custom docker-compose.yaml file to deploy Kanboard MCP with Streamable HTTP transport, custom port, and healthcheck. ```yaml version: '3.8' services: kanboard-mcp: build: context: . target: runtime container_name: kanboard-mcp restart: unless-stopped ports: - "8080:8080" environment: - MCP_MODE=streamablehttp - MCP_PORT=8080 - KANBOARD_API_ENDPOINT=https://your-kanboard-url/jsonrpc.php - KANBOARD_API_KEY=your-api-key healthcheck: test: ["CMD", "wget", "--spider", "-q", "http://localhost:8080/health"] interval: 30s timeout: 10s retries: 3 ``` -------------------------------- ### Run Kanboard MCP with stdio Transport Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/CLAUDE.md Start the Kanboard MCP server using the standard input/output transport mode. This is the default mode and is suitable for local CLI usage. ```bash # stdio (default) - for local CLI usage ./kanboard-mcp ``` -------------------------------- ### Create Task File Request and Response Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Example JSON for creating and uploading a task attachment. Includes request payload with project, task, filename, and blob, and the response indicating success. ```json // Request { "tool": "create_task_file", "arguments": { "project_id": 2, "task_id": 42, "filename": "mockup-v2.png", "blob": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk..." } } // Response { "file_id": 12, "message": "File 'mockup-v2.png' uploaded to task 42" } ``` -------------------------------- ### Claude Code Integration: Discovering Tools by Action Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md This example shows how Claude can interpret a user's action-oriented question to find the appropriate tool. By asking 'How can I assign a user to a task?', Claude will search for and identify the `assign_task` tool. ```text How can I assign a user to a task? ``` -------------------------------- ### Claude Code Integration: Exploring Functionality Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md This example demonstrates how to use Claude to explore available functionality by asking about specific features. Claude will use `tool_search` to find all tools related to 'sprint management', including those from the ScrumSprint plugin. ```text What sprint management tools are available? ``` -------------------------------- ### Run Kanboard MCP using Docker Compose Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/CLAUDE.md Manage and run the Kanboard MCP server within a Docker Compose setup. This command specifically starts the HTTP service defined in the docker-compose configuration. ```bash docker-compose up mcp-http # Using docker-compose ``` -------------------------------- ### Build Kanboard MCP Server from Source Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Instructions for cloning the repository, downloading dependencies, building the application, and running tests. Includes options for building with version info and exporting binaries for multiple architectures. ```bash # Clone and build git clone cd kanboard-mcp # Install dependencies go mod download # Build the application go build -ldflags="-s -w" -o kanboard-mcp . # Build with version info go build -ldflags="-s -w -X main.version=1.2.3 -X main.buildTime=$(date -u +%Y-%m-%dT%H:%M:%SZ)" -o kanboard-mcp . # Run tests go test ./... # Export binaries for multiple architectures using Docker ./build.sh -a all -e -o ./dist ``` -------------------------------- ### Display Build Script Help Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Shows all available options and their descriptions for the build script. ```bash ./build.sh [OPTIONS] Options: -a, --arch ARCH Architecture: amd64, arm64, or all (default: current platform) -t, --tag TAG Image tag (default: latest) -n, --name NAME Image name (default: kanboard-mcp) -o, --output DIR Output directory for local export (default: ./dist) -r, --registry REG Registry to push to -p, --push Push image to registry -e, --export-only Export artifacts only, skip image creation -v, --version VER Version string to embed in binary -h, --help Show help message ``` -------------------------------- ### Create a new project Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Initializes a new project within the system. ```bash "Create a new project called 'Mobile App Development'" ``` -------------------------------- ### Build the application Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Compiles the Go application, creating an executable file. ```bash go build -o kanboard-mcp . ``` -------------------------------- ### Get tasks for a project Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Retrieves all tasks associated with a given project. ```bash "Get tasks for 'Mobile App Development' project" ``` -------------------------------- ### Clone the repository Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Initializes the project by cloning the repository from a remote source. ```bash git clone ``` -------------------------------- ### Update an existing sprint Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Modifies an existing sprint, for example, to mark it as completed. ```bash "Update sprint 123 in project 'My Project' to be completed" ``` -------------------------------- ### Get Users API Request Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Retrieve a list of all system users. This endpoint does not require any arguments. ```json { "tool": "get_users", "arguments": {} } ``` -------------------------------- ### Build Script for Distribution Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md Build all architectures and prepare for pushing to a registry, suitable for distribution pipelines. ```bash ./build.sh -a all -r my-registry -p ``` -------------------------------- ### Get All Tasks API Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Retrieve all tasks for a specified project, with an option to filter by task status. ```APIDOC ## get_all_tasks ### Description Get all available tasks for a project with optional status filter. ### Method POST ### Endpoint /get_all_tasks ### Request Body - **tool** (string) - Required - The name of the tool, 'get_all_tasks'. - **arguments** (object) - Required - The arguments for retrieving all tasks. - **project_id** (integer) - Required - The ID of the project to retrieve tasks from. - **status_id** (integer) - Optional - Filter tasks by their status ID. ### Request Example ```json { "tool": "get_all_tasks", "arguments": { "project_id": 2, "status_id": 1 } } ``` ### Response #### Success Response (200) - **tasks** (array) - A list of tasks within the specified project. - **id** (integer) - The unique identifier for the task. - **title** (string) - The title of the task. - **column_id** (integer) - The ID of the column the task is currently in. - **owner_id** (integer) - The ID of the user assigned to the task. - **is_active** (integer) - Indicates if the task is active (1) or inactive (0). #### Response Example ```json { "tasks": [ { "id": 42, "title": "Design homepage mockups", "column_id": 3, "owner_id": 3, "is_active": 1 }, { "id": 43, "title": "Implement responsive layout", "column_id": 2, "owner_id": 5, "is_active": 1 } ] } ``` ``` -------------------------------- ### Run Kanboard MCP with run.sh Helper Script Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Utilize the run.sh helper script for simplified execution of the Kanboard MCP server. Options include specifying transport modes (stdio, SSE, HTTP), running in the background (-d), and building before running (--build). ```bash # stdio mode (interactive) ./run.sh # SSE mode on port 8080 ./run.sh --sse # Streamable HTTP mode (recommended for containers) ./run.sh --http # Run in background ./run.sh --http -d # Build and run ./run.sh --build --http ``` -------------------------------- ### Get Task API Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Retrieve detailed information about a specific task using its unique task ID. ```APIDOC ## get_task ### Description Get complete task details by ID including metadata, tags, and time tracking info. ### Method POST ### Endpoint /get_task ### Request Body - **tool** (string) - Required - The name of the tool, 'get_task'. - **arguments** (object) - Required - The arguments for retrieving a task. - **task_id** (integer) - Required - The ID of the task to retrieve. ### Request Example ```json { "tool": "get_task", "arguments": { "task_id": 42 } } ``` ### Response #### Success Response (200) - **id** (integer) - The unique identifier for the task. - **title** (string) - The title of the task. - **description** (string) - The description of the task. - **project_id** (integer) - The ID of the project the task belongs to. - **column_id** (integer) - The ID of the column the task is in. - **swimlane_id** (integer) - The ID of the swimlane the task is in. - **color_id** (string) - The color associated with the task. - **owner_id** (integer) - The ID of the user assigned to the task. - **creator_id** (integer) - The ID of the user who created the task. - **date_due** (string) - The due date of the task. - **date_creation** (string) - The creation date of the task. - **date_modification** (string) - The last modification date of the task. - **priority** (integer) - The priority level of the task. - **score** (integer) - The score or value of the task. - **category_id** (integer) - The ID of the category the task belongs to. - **is_active** (integer) - Indicates if the task is active (1) or inactive (0). - **tags** (array of strings) - A list of tags associated with the task. #### Response Example ```json { "id": 42, "title": "Design homepage mockups", "description": "Create wireframes and high-fidelity mockups", "project_id": 2, "column_id": 3, "swimlane_id": 1, "color_id": "blue", "owner_id": 3, "creator_id": 1, "date_due": "2024-02-15", "date_creation": "2024-01-10", "date_modification": "2024-01-15", "priority": 2, "score": 5, "category_id": 2, "is_active": 1, "tags": ["design", "frontend", "urgent"] } ``` ``` -------------------------------- ### Get Columns API Request Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt List all columns available for a given project board. Requires the project ID. ```json { "tool": "get_columns", "arguments": { "project_id": 2 } } ``` -------------------------------- ### Get Task Comments API Request Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Retrieve all comments associated with a specific task. Requires the task ID. ```json { "tool": "get_task_comments", "arguments": { "task_id": 42 } } ``` -------------------------------- ### Create a New Project Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Use 'create_project' to establish a new project with specified details. Optional fields include owner, dates, default priority, and email. ```json // Request { "tool": "create_project", "arguments": { "name": "Website Redesign", "description": "Redesign the company website with modern UI/UX", "owner_id": 1, "identifier": "WEB-REDESIGN", "start_date": "2024-01-01", "end_date": "2024-06-30", "priority_default": 2, "email": "project@company.com" } } // Response { "project_id": 5, "message": "Project 'Website Redesign' created successfully" } ``` -------------------------------- ### Get Projects API Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Retrieve a list of all projects accessible to the current user, including basic details for each project. ```APIDOC ## get_projects ### Description List all projects accessible to the current user with basic details. ### Method POST ### Endpoint /get_projects ### Request Body - **tool** (string) - Required - The name of the tool, 'get_projects'. - **arguments** (object) - Required - The arguments for retrieving projects. Currently accepts an empty object. ### Request Example ```json { "tool": "get_projects", "arguments": {} } ``` ### Response #### Success Response (200) - **projects** (array) - A list of projects. - **id** (integer) - The unique identifier for the project. - **name** (string) - The name of the project. - **is_active** (boolean) - Indicates if the project is currently active. - **description** (string) - A brief description of the project. #### Response Example ```json { "projects": [ { "id": 1, "name": "Mobile App Development", "is_active": true, "description": "iOS and Android app development" }, { "id": 2, "name": "Website Redesign", "is_active": true, "description": "Company website modernization" } ] } ``` ``` -------------------------------- ### Run Exported Binary with Environment Variables Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Sets the necessary environment variables for Kanboard API endpoint and key, then runs the exported Kanboard MCP binary. ```bash # Run with environment variables export KANBOARD_API_ENDPOINT='https://your-kanboard-url/jsonrpc.php' export KANBOARD_API_KEY='your-api-key' ./dist/linux-amd64/kanboard-mcp ``` -------------------------------- ### Get Project Users API Request Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Retrieve all members of a specific project along with their roles. Requires the project ID. ```json { "tool": "get_project_users", "arguments": { "project_id": 2 } } ``` -------------------------------- ### Make Executable and Set Environment Variables Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md This snippet shows how to make the exported binary executable and set the necessary environment variables for the Kanboard MCP application. ```bash # Make executable chmod +x dist/linux-amd64/kanboard-mcp # Set environment variables export KANBOARD_API_ENDPOINT='https://your-kanboard-url/jsonrpc.php' export KANBOARD_API_KEY='your-api-key' # Run ./dist/linux-amd64/kanboard-mcp ``` -------------------------------- ### Get All Tasks for a Project Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Use 'get_all_tasks' to list all tasks within a specified project. An optional 'status_id' filter can be applied. ```json // Request { "tool": "get_all_tasks", "arguments": { "project_id": 2, "status_id": 1 } } // Response { "tasks": [ { "id": 42, "title": "Design homepage mockups", "column_id": 3, "owner_id": 3, "is_active": 1 }, { "id": 43, "title": "Implement responsive layout", "column_id": 2, "owner_id": 5, "is_active": 1 } ] } ``` -------------------------------- ### Create a new sprint Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Use this command to create a new sprint with a specified name, project, start and end dates, and goal. ```bash "Create a sprint named 'Sprint 1' in project 'My Project' starting '2024-01-01' and ending '2024-01-14' with goal 'Complete onboarding features'" ``` -------------------------------- ### Run Docker Container with Custom Configuration File Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Launches the Kanboard MCP Docker container, mounting a custom configuration file and setting necessary environment variables. ```bash docker run --rm -it \ -e KANBOARD_API_ENDPOINT='https://your-kanboard-url/jsonrpc.php' \ -e KANBOARD_API_KEY='your-api-key' \ -v $(pwd)/mcp-tools-config.yaml:/app/mcp-tools-config.yaml:ro \ kanboard-mcp:latest ``` -------------------------------- ### Build Kanboard MCP Executable with Docker Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Use the build script with Docker to create the Kanboard MCP executable. The -a all flag builds for all architectures, and -e exports the binaries. ```bash # Build Docker image ./build.sh # Or export Linux binaries directly ./build.sh -a all -e ``` -------------------------------- ### Build Kanboard MCP Executable on Windows Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Execute the build-release.bat script to build the Kanboard MCP executable on a Windows system. ```cmd build-release.bat ``` -------------------------------- ### Build Kanboard MCP Executable on Linux/macOS Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Execute the build-release.sh script to build the Kanboard MCP executable on Linux or macOS. ```bash ./build-release.sh ``` -------------------------------- ### Get Task Details by ID Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Use 'get_task' to retrieve comprehensive details for a specific task using its ID. Includes metadata, tags, and time tracking information. ```json // Request { "tool": "get_task", "arguments": { "task_id": 42 } } // Response { "id": 42, "title": "Design homepage mockups", "description": "Create wireframes and high-fidelity mockups", "project_id": 2, "column_id": 3, "swimlane_id": 1, "color_id": "blue", "owner_id": 3, "creator_id": 1, "date_due": "2024-02-15", "date_creation": "2024-01-10", "date_modification": "2024-01-15", "priority": 2, "score": 5, "category_id": 2, "is_active": 1, "tags": ["design", "frontend", "urgent"] } ``` -------------------------------- ### Build Kanboard MCP Server Locally Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/CLAUDE.md Use this command to build the Kanboard MCP server binary for local development on macOS. It optimizes the binary size by stripping debug information. ```bash # Build locally (macOS) go build -ldflags="-s -w" -o kanboard-mcp . ``` -------------------------------- ### Docker Compose Commands Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Commands to manage the Docker Compose deployment, including starting the Streamable HTTP server, launching the full stack with Kanboard, and running the stdio mode interactively. ```bash # Start Streamable HTTP server docker-compose up mcp-http # Start with Kanboard for full end-to-end testing docker-compose --profile full up # Run stdio mode interactively docker-compose run --rm mcp-stdio ``` -------------------------------- ### Multi-Platform Docker Image Build and Push Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md Build a single Docker image that supports multiple platforms (amd64, arm64) and push it to a registry. ```bash docker buildx build \ --platform linux/amd64,linux/arm64 \ --tag kanboard-mcp:latest \ --push \ . ``` -------------------------------- ### Configure Global Token Authentication Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Set up authentication using a global API token. This is the default method. ```bash export KANBOARD_API_KEY="5348e6b4846fe09fd1670e922bc13e086f0827d7a66e45815cd7c3a7f67b" export KANBOARD_AUTH_METHOD="global_token" # or omit (default) ``` -------------------------------- ### Create Sprint Request and Response Source: https://context7.com/glani/kanboard-heretic-mcp/llms.txt Example JSON for creating a new sprint, requiring the ScrumSprint plugin. The request includes project name, sprint details, and goal. The response confirms sprint creation. ```json // Request { "tool": "create_sprint", "arguments": { "project_name": "Mobile App Development", "name": "Sprint 1", "start_date": "2024-01-15", "end_date": "2024-01-29", "goal": "Complete user authentication and onboarding flow" } } // Response { "sprint_id": 3, "message": "Sprint 'Sprint 1' created successfully" } ``` -------------------------------- ### Set Kanboard API Credentials (Bash) Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Configure the necessary environment variables to authenticate with the Kanboard API. Ensure these are set before running MCP. ```bash export KANBOARD_API_ENDPOINT="https://your-kanboard-url/jsonrpc.php" export KANBOARD_API_KEY="your-kanboard-api-key" export KANBOARD_USERNAME="your-kanboard-username" export KANBOARD_PASSWORD="your-kanboard-password" ``` -------------------------------- ### Build and Run Kanboard MCP in Docker Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/DOCKER.md Commands to build the Docker image for Kanboard MCP and run it as a container, including setting environment variables. ```bash # Build image docker build -t kanboard-mcp:latest . # Run with environment variables docker run --rm -it \ -e KANBOARD_API_ENDPOINT='https://your-kanboard-url/jsonrpc.php' \ -e KANBOARD_API_KEY='your-api-key' \ kanboard-mcp:latest ``` -------------------------------- ### Build and Push Docker Image to Docker Hub Source: https://github.com/glani/kanboard-heretic-mcp/blob/main/README.md Builds a multi-platform Docker image for Kanboard MCP and pushes it to Docker Hub with a specified tag. ```bash ./build.sh -a all -r docker.io/yourusername -p -t v1.2.3 ```