agileplace-mcp-server

jhigh1594/agileplace-mcp-server

3.2

If you are the rightful owner of agileplace-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

AgilePlace MCP Server is a comprehensive Model Context Protocol server designed for seamless interaction with the AgilePlace API, facilitating project management tasks through AI assistants.

AgilePlace MCP Server

A Model Context Protocol (MCP) server for integrating with AgilePlace project management platform.

Features

Board Management

  • List, create, and view boards
  • Get board details including lanes, card types, and custom fields
  • Manage board members

Card Management

  • Create, read, update, and delete cards
  • Move cards between lanes
  • Add comments to cards
  • Assign users and teams to cards
  • Manage card connections (parent-child relationships)
  • Manage card dependencies

Bulk Operations

  • Update multiple cards simultaneously
  • Delete multiple cards in bulk
  • Move multiple cards between lanes
  • Assign members to multiple boards

OKR Management (Objectives and Key Results)

  • Create and manage OKR Objectives
  • Create and manage Key Results
  • Update Objectives and Key Results
  • Query Objectives by board
  • Query Key Results by Objective

OKR Activity and Work Item Management

  • Connect work items (cards) to Key Results
  • Create activities associated with Key Results
  • List and search activities
  • List activity containers
  • List available activity types
  • Search users within contexts

Project Management

  • List projects with filtering
  • Get project and work attributes

Installation

pip install -r requirements.txt

Configuration

Set up your AgilePlace API credentials:

export AGILEPLACE_DOMAIN="your-subdomain.leankit.com"
export AGILEPLACE_API_TOKEN="your-api-token"
export OKRS_API_BASE_URL="https://api.pv-platforma.xyz/api"  # Optional, for OKR features

Usage

Running the Server

python -m agileplace_mcp.server

Available Tools

Board Tools
  • list_boards: List all accessible boards
  • get_board: Get detailed board information
  • get_board_cards: Get cards on a board
  • get_leaf_lanes: Get lanes that can hold cards
  • create_board: Create a new board
  • get_board_members: Get board members
Card Tools
  • list_cards: List cards with optional filtering
  • get_card: Get detailed card information
  • get_card_activity: Get card activity history
  • create_card: Create a new card
  • update_card: Update card fields
  • move_card: Move a card to a different lane
  • delete_card: Delete a card
  • get_card_comments: Get card comments
  • create_comment: Add a comment to a card
  • assign_users_to_card: Assign users/teams to a card
  • get_card_children: Get child cards
  • get_card_parents: Get parent cards
Connection Tools
  • create_connection: Create parent-child card connections
  • delete_connection: Remove card connections
  • get_connection_statistics: Get connection statistics
  • connect_cards_bulk: Create multiple connections
Dependency Tools
  • get_card_dependencies: Get card dependencies
  • create_dependency: Create card dependencies
  • delete_dependency: Delete dependencies
Bulk Operation Tools
  • update_cards_bulk: Update multiple cards
  • delete_cards_bulk: Delete multiple cards
  • move_cards_bulk: Move multiple cards
  • assign_members_bulk: Assign members to multiple boards
OKR Tools
  • create_objective: Create a new OKR Objective
  • create_key_result: Create a new Key Result
  • update_objective: Update an Objective
  • update_key_result: Update a Key Result
  • get_objectives_by_board_id: Get Objectives for a board
  • get_key_results_by_objective_id: Get Key Results for an Objective
OKR Activity Tools
  • connect_activities_to_key_result: Connect work items to Key Results
  • create_activity: Create activities for Key Results
  • list_activities: List activities with filtering
  • list_activity_containers: List activity containers
  • search_activities: Search activities
  • list_activity_types: List available activity types
  • search_users: Search users
  • get_current_user: Get current user information
Query Tools
  • list_projects: List projects with filtering
  • get_project_attributes: Get project attributes
  • get_work_attributes: Get work attributes

API Documentation

The server integrates with the following AgilePlace APIs:

  • Board API
  • Card API
  • Connection API
  • Dependency API
  • OKR API
  • Activity API
  • Project API

Development

Project Structure

agileplace_mcp/
├── agileplace_mcp/
│   ├── __init__.py
│   ├── auth.py              # Authentication handling
│   ├── client.py            # API client
│   ├── models.py            # Data models
│   ├── server.py            # FastMCP server
│   └── tools/
│       ├── __init__.py
│       ├── boards.py        # Board operations
│       ├── bulk.py          # Bulk operations
│       ├── cards.py         # Card operations
│       ├── connections.py   # Connection operations
│       ├── dependencies.py  # Dependency operations
│       ├── okr.py           # OKR operations
│       ├── okr_activities.py # OKR activity operations
│       └── query.py         # Query operations
├── requirements.txt
├── README.md
└── server.py

Adding New Tools

  1. Create the function in the appropriate tools/*.py file
  2. Add the corresponding MCP tool wrapper in server.py
  3. Update data models in models.py if needed
  4. Add tests in the tests/ directory

Testing

python -m pytest tests/

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Submit a pull request

License

This project is licensed under the MIT License.