Leiga MCP Server
Enables interaction with Leiga issue tracking system through MCP, allowing searching, creating, updating issues, and managing projects.
README
Leiga MCP Server
A Model Context Protocol server for the Leiga Open API.
This server provides integration with Leiga's issue search system through MCP, allowing LLMs to interact with Leiga issues.
Installation
Manual Installation
-
Create or get a Personal API Keys for your team: https://app.leiga.com/setting/api-key
-
Add server config to Cursor Desktop:
{
"mcpServers": {
"leiga-mcp-server": {
"command": "npx",
"args": [
"-y",
"leiga-mcp-server"
],
"env":{
"LEIGA_CLIENT_ID":"you client id",
"LEIGA_SECRET":"you client secret"
}
}
}
}
Components
Tools
-
search_all_issues: Search issues with flexible filtering- Optional inputs:
query(string): Text to search in titleprojectName(string): Filter by project namestatus(string): Filter by status typeassignee(string):Filter by assignee's usernamelabel(string): Filter by labelpriority(string): Filter by prioritysprint(string): Filter by sprint nameworkType(string): Filter by issue work type namestartAfterDate(string): Filter issues that start AFTER or ON this date (YYYY-MM-DD format)startBeforeDate(string): Filter issues that start BEFORE or ON this date (YYYY-MM-DD format)dueAfterDate(string): Filter issues that are due AFTER or ON this date (YYYY-MM-DD format)dueBeforeDate(string): Filter issues that are due BEFORE or ON this date (YYYY-MM-DD format)createdAfterDate(string): Filter issues that were created AFTER or ON this date (YYYY-MM-DD format)createdBeforeDate(string): Filter issues that were created BEFORE or ON this date (YYYY-MM-DD format)pageSize(number, default: 10): Max results
- Optional inputs:
-
get_issue_detail: Get issue detail by using issue ID or issue number.- Required inputs:
issueId(string): Issue ID or issue number
- Required inputs:
-
my_assigned_issues: Retrieves my issues, specifically those assigned to the authenticated user.- Optional inputs:
query(string): Text to search in titleprojectName(string): Filter by project namestatus(string): Filter by status typelabel(string): Filter by labelpriority(string): Filter by prioritysprint(string): Filter by sprint nameworkType(string): Filter by issue work type namestartAfterDate(string): Filter issues that start AFTER or ON this date (YYYY-MM-DD format)startBeforeDate(string): Filter issues that start BEFORE or ON this date (YYYY-MM-DD format)dueAfterDate(string): Filter issues that are due AFTER or ON this date (YYYY-MM-DD format)dueBeforeDate(string): Filter issues that are due BEFORE or ON this date (YYYY-MM-DD format)createdAfterDate(string): Filter issues that were created AFTER or ON this date (YYYY-MM-DD format)createdBeforeDate(string): Filter issues that were created BEFORE or ON this date (YYYY-MM-DD format)pageSize(number, default: 10): Max results
- Optional inputs:
-
list_project: Show project list with authenticated user, without inputs. -
create_issue:Creates a new Leiga issue.- Required inputs:
summary(string): Issue summaryprojectName(string): Project name
- Optional inputs:
description(string): Issue descriptionstatusName(string): Issue status (e.g., 'Not Started', 'In Progress', 'Done' )priority(string): priority name (e.g., 'Lowest', 'Low', 'Medium', 'High', 'Highest')sprint(string): Sprint nameworkType(string): Work type name (e.g., 'Story', 'Chore', 'Bug')
- Required inputs:
-
get_issue_options: Get selectable option fields for an issue.- Required inputs:
issueId(string): Issue ID or issue number (e.g., 12345 or ABC-678)
- Required inputs:
-
update_issue: Update an issue by ID or issue number.- Required inputs:
issueId(string): Issue ID or issue number (e.g., 12345 or ABC-678)
- Optional inputs:
summary(string): New summarydescription(string): New descriptionstatusName(string): Workflow status name to setpriorityName(string): Priority name to setassigneeName(string): Assignee name to setlabels(string[]): Label names to setfollows(string[]): Follower names to setreleaseVersionName(string): Release version name to setdueDate(string | number): Due date (YYYY-MM-DD) or timestamp in msstartDate(string | number): Start date (YYYY-MM-DD) or timestamp in ms
- Required inputs:
-
list_issue_comments: List comments of an issue with pagination.- Required inputs:
issueId(string): Issue ID or issue number (e.g., 12345 or ABC-678)
- Optional inputs:
pageNumber(number): Page number (default 1)pageSize(number): Page size (default 20)
- Required inputs:
-
create_comment: Create a comment or reply for an issue.- Required inputs:
issueId(string): Issue ID or issue number (e.g., 12345 or ABC-678)content(string): Comment content
- Optional inputs:
commentId(number): Comment ID to reply to (for replies)
- Required inputs:
-
current_date: Get current date (local timezone).
- No inputs.
list_project_members: List members of a specific project.
- Required inputs:
projectId(number): Project ID
- Optional inputs:
keyword(string): Keyword to search memberspageNumber(number): Page number (default 1)pageSize(number): Page size (default 20)
list_org_members: List all organization members with optional search.
- Optional inputs:
key(string): Keyword to search memberspageNumber(number): Page number (default 1)pageSize(number): Page size (default 20)
Usage examples
Some example prompts you can use with Cursor Desktop to interact with Leiga:
-
"Show me all my high-priority issues" → execute the
my_assigned_issuestool to find issues assigned to you with priority is high -
"Show the detail of issue: XX-1" → use
get_issue_detailtool to return the detail info of issue number is XX-1 -
"Find all in progress issues" → use
search_all_issuesto locate issues with in progress task -
"list projects" -> use
list_projectto list all the projects you have access to. -
"create issue 'xxxx summary' in xxx project " -> use
create_issueto help you create a issue. -
"show selectable fields for issue XX-1" → use
get_issue_optionswithissueId: "XX-1"to list all option fields and their valid values -
"set XX-1 to Done and assign to Alice" → use
update_issuewithissueId: "XX-1",statusName: "Done",assigneeName: "Alice" -
"list comments for XX-1, page 2, 10 per page" → use
list_issue_commentswithissueId: "XX-1",pageNumber: 2,pageSize: 10 -
"reply to comment 123 on XX-1: Looks good" → use
create_commentwithissueId: "XX-1",content: "Looks good",commentId: 123 -
"what's today's date?" → use
current_dateto return the current local date -
"list members of project 456" → use
list_project_memberswithprojectId: 456 -
"search org members by 'john'" → use
list_org_memberswithkey: "john"
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。