yougile-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@yougile-mcp create a task for the new project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@nebelov/yougile-mcp
MCP server for YouGile project management. 57 tools covering 100% of YouGile API v2.
Works with Claude, ChatGPT, Gemini CLI, VS Code, Cursor, and any MCP-compatible client.
README on Russian / README на русском
Quick Start
Auto-setup (recommended)
npx @nebelov/yougile-mcp --setupLogs you into YouGile, gets an API key, and writes the config for your AI tool.
Manual setup
Get an API key from YouGile (Settings > API or
POST /auth/keys)Add to your AI tool config:
Claude Code (~/.claude.json):
{
"mcpServers": {
"yougile": {
"command": "npx",
"args": ["-y", "@nebelov/yougile-mcp"],
"env": { "YOUGILE_API_KEY": "your-key" }
}
}
}Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"yougile": {
"command": "npx",
"args": ["-y", "@nebelov/yougile-mcp"],
"env": { "YOUGILE_API_KEY": "your-key" }
}
}
}Gemini CLI (~/.gemini/settings.json):
{
"mcpServers": {
"yougile": {
"command": "npx",
"args": ["-y", "@nebelov/yougile-mcp"],
"env": { "YOUGILE_API_KEY": "your-key" }
}
}
}VS Code (.vscode/mcp.json):
{
"mcpServers": {
"yougile": {
"command": "npx",
"args": ["-y", "@nebelov/yougile-mcp"],
"env": { "YOUGILE_API_KEY": "your-key" }
}
}
}Related MCP server: yougile-mcp
ChatGPT Setup
Option A: Hosted (recommended)
Use the hosted server at you-mcp.com — no installation needed.
In ChatGPT (web):
Settings > Apps & Connectors > Advanced > Developer Mode ON
Click Create > paste
https://you-mcp.com/mcp> SaveOpen any chat > click + > More > Developer Mode > enable your connector
ChatGPT will redirect you to login with your YouGile email and password
Your credentials go directly to YouGile's API (zero-knowledge proxy — the server never sees your password)
Option B: Self-hosted (ngrok)
Requires ngrok (free).
Step 1. Start the server with HTTP transport:
YOUGILE_API_KEY=your-key npx @nebelov/yougile-mcp --http --port 3000Step 2. In a second terminal, create an HTTPS tunnel:
ngrok http 3000Copy the https://...ngrok-free.app URL from ngrok output.
Step 3. In ChatGPT (web):
Settings > Apps & Connectors > Advanced > Developer Mode ON
Click Create > paste
https://YOUR-URL.ngrok-free.app/mcp> SaveOpen any chat > click + > More > Developer Mode > enable your connector
Available Tools (57)
Module | Tools | Description |
projects | 4 | list, get, create, update |
boards | 4 | list, get, create, update |
columns | 4 | list, get, create, update |
tasks | 6 | list, get, create, update, get/set chat-subscribers |
chat | 8 | messages (list, send, get, delete) + group chats (list, get, create, update) |
users | 5 | list, get, invite, update, delete |
company | 2 | get, update |
departments | 4 | list, get, create, update |
project-roles | 5 | list, get, create, update, delete |
string-stickers | 6 | CRUD + create/update state |
sprint-stickers | 6 | CRUD + create/update state |
webhooks | 3 | list, create, update |
Bundled Skill
The package includes skill/SKILL.md — a best-practices guide for working with YouGile through AI. Copy it to your project or Claude Code skills directory for better task management.
API Patterns
Soft delete:
PUT {deleted: true}works for all entities.DELETEmethod only works for project roles.Pagination:
{paging: {count, limit, offset, next}, content: [...]}. Exception:/webhooksreturns raw array.Sticker fields: Use
name(nottitle) for stickers and states.Task assigned: Array of UUIDs
["uuid1", "uuid2"], not an object.Chat messages:
PUTonly supports{deleted: true}— editing text is not possible.State IDs: 12-char hex strings (not UUID).
Environment Variables
Variable | Required | Description |
| Yes | YouGile API key |
| No | Custom API URL (default: |
Development
git clone https://github.com/nebelov/yougile-mcp
cd yougile-mcp
npm install
npm run devLicense
MIT
Available Tools
57 toolsyougile_create_boardA
Create a new board inside a project.
Inputs: title (required), projectId (required).
yougile_create_columnA
Create a new column inside a board. Color is 1-16.
Inputs: title (required), boardId (required), color.
yougile_create_departmentB
Create a new department.
Inputs: title (required), users.
yougile_create_group_chatA
Create a group chat. Requires users map, userRoleMap, and roleConfigMap. Example: users={'userId': {notified: true}}, userRoleMap={'userId': 'admin'}, roleConfigMap={'admin': {notified: true}}.
Inputs: title (required), users (required), userRoleMap (required), roleConfigMap (required).
yougile_create_projectB
Create a new project. Optionally assign users with roles (admin/worker/observer).
Inputs: title (required), users.
yougile_create_project_roleA
Create a new role in a project.
Inputs: name (required), projectId (required), users.
yougile_create_sprint_stickerB
Create a sprint sticker. Use 'name' field (not 'title').
Inputs: name (required), projectId (required).
yougile_create_sprint_sticker_stateA
Create a state (option) for a sprint sticker.
Inputs: name (required), stickerId (required), color.
yougile_create_string_stickerA
Create a string sticker. Use 'name' field (not 'title').
Inputs: name (required), projectId (required).
yougile_create_string_sticker_stateB
Create a state (option) for a string sticker.
Inputs: name (required), stickerId (required), color.
yougile_create_taskA
Create a new task in a column. Supports: title, description, assigned users, deadline (timestamp ms), checklists, color (task-primary/gray/red/pink/yellow/green/turquoise/blue/violet), time tracking, stickers.
Inputs: title (required), columnId (required), color, assigned, +4 more.
yougile_create_webhookB
Create a webhook to receive events at a URL.
Inputs: url (required), event (required), projectId.
yougile_delete_messageADestructive
Soft-delete a message. Note: editing message text is NOT supported by the API.
Inputs: chatId (required), messageId (required).
yougile_delete_project_roleADestructive
Delete a project role (hard delete, not soft-delete).
Inputs: roleId (required), projectId (required).
yougile_delete_userADestructive
Remove a user from the company.
Inputs: id (required).
yougile_get_boardARead-only
Get details of a specific board by ID.
Inputs: id (required).
yougile_get_chat_subscribersARead-only
Get the list of users subscribed to a task's chat notifications.
Inputs: taskId (required).
yougile_get_columnBRead-only
Get details of a specific column by ID.
Inputs: id (required).
yougile_get_companyARead-only
Get current company information.
Inputs: no named parameters.
yougile_get_departmentARead-only
Get details of a specific department.
Inputs: id (required).
yougile_get_group_chatBRead-only
Get details of a specific group chat.
Inputs: id (required).
yougile_get_messageARead-only
Get a specific message by ID from a chat.
Inputs: chatId (required), messageId (required).
yougile_get_projectARead-only
Get details of a specific project by ID.
Inputs: id (required).
yougile_get_project_roleBRead-only
Get a specific role in a project.
Inputs: roleId (required), projectId (required).
yougile_get_sprint_stickerARead-only
Get a sprint sticker by ID. States are embedded in the response.
Inputs: id (required).
yougile_get_string_stickerARead-only
Get a string sticker by ID. States are embedded in the response.
Inputs: id (required).
yougile_get_taskARead-only
Get full details of a task: title, description, assigned users, deadline, checklists, stickers, time tracking, etc.
Inputs: id (required).
yougile_get_userARead-only
Get details of a specific user by ID.
Inputs: id (required).
yougile_invite_userA
Invite a user to the company by email.
Inputs: email (required), isAdmin.
yougile_list_boardsARead-only
List boards. Filter by projectId to see boards for a specific project.
Inputs: limit, title, offset, projectId.
yougile_list_columnsARead-only
List columns. Filter by boardId to see columns for a specific board.
Inputs: limit, title, offset, boardId.
yougile_list_departmentsARead-only
List all departments in the company.
Inputs: limit, offset.
yougile_list_group_chatsARead-only
List all group chats in the company.
Inputs: limit, title, offset.
yougile_list_messagesARead-only
Get messages from a chat. For task chats, chatId = taskId. Also works for group chats.
Inputs: chatId (required), text, limit, since, +2 more.
yougile_list_project_rolesARead-only
List roles for a project.
Inputs: projectId (required).
yougile_list_projectsARead-only
List all projects in the YouGile company. Returns project names, IDs, and user roles.
Inputs: limit, title, offset.
yougile_list_sprint_stickersBRead-only
List sprint stickers (sprint/iteration labels for tasks). States are embedded in each sticker object.
Inputs: limit, offset, projectId.
yougile_list_string_stickersARead-only
List string stickers (custom labels/tags for tasks). States are embedded in each sticker object.
Inputs: limit, offset, projectId.
yougile_list_tasksARead-only
List tasks with filters. Use columnId to get tasks from a specific column, or assignedTo/stickerId/title for advanced filtering. Uses /task-list read-only endpoint (supports more filters than /tasks).
Inputs: limit, title, offset, columnId, +2 more.
yougile_list_usersARead-only
List all users (employees) in the company. Can filter by email or projectId.
Inputs: email, limit, offset, projectId.
yougile_list_webhooksARead-only
List all webhooks. Note: returns a raw array (no paging wrapper).
Inputs: no named parameters.
yougile_send_messageA
Send a message to a chat. For task chats, chatId = taskId. Also works for group chats.
Inputs: text (required), chatId (required).
yougile_set_chat_subscribersA
Set the list of users subscribed to a task's chat notifications. Replaces existing list.
Inputs: taskId (required), userIds (required).
yougile_update_boardCDestructive
Update a board (title, stickers, or soft-delete).
Inputs: id (required), title, deleted.
yougile_update_columnADestructive
Update a column (title, color, move to another board, or soft-delete).
Inputs: id (required), color, title, boardId, +1 more.
yougile_update_companyB
Update company settings (name, subdomain, etc.).
Inputs: name, subdomain.
yougile_update_departmentADestructive
Update a department (title, users, or soft-delete).
Inputs: id (required), title, users, deleted.
yougile_update_group_chatADestructive
Update a group chat (title, users, or soft-delete).
Inputs: id (required), title, users, deleted.
yougile_update_projectADestructive
Update a project (title, users, or soft-delete). Use '-' as role value to remove a user.
Inputs: id (required), title, users, deleted.
yougile_update_project_roleC
Update a project role (name, users).
Inputs: roleId (required), projectId (required), name, users.
yougile_update_sprint_stickerADestructive
Update a sprint sticker (name or soft-delete). Use 'name' field (not 'title').
Inputs: id (required), name, deleted.
yougile_update_sprint_sticker_stateCDestructive
Update a state of a sprint sticker. State IDs are 12-char hex strings.
Inputs: stateId (required), stickerId (required), name, color, +1 more.
yougile_update_string_stickerADestructive
Update a string sticker (name or soft-delete). Use 'name' field (not 'title').
Inputs: id (required), name, deleted.
yougile_update_string_sticker_stateADestructive
Update a state of a string sticker. State IDs are 12-char hex strings.
Inputs: stateId (required), stickerId (required), name, color, +1 more.
yougile_update_taskADestructive
Update a task. Can change: title, description, columnId (move), assigned, completed, archived, deadline, checklists, color, timeTracking, stickers. To delete deadline/timer: pass { deleted: true } inside that field. To soft-delete task: set deleted=true.
Inputs: id (required), color, title, deleted, +8 more.
yougile_update_userA
Update a user. Only supports changing admin status.
Inputs: id (required), isAdmin (required).
yougile_update_webhookADestructive
Update a webhook (url, event, disabled, or soft-delete).
Inputs: id (required), url, event, deleted, +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 57 tools
Each tool is clearly named with a resource and action, such as list_projects vs. create_project. Even similar resources like string stickers and sprint stickers are distinguished by the resource name in every tool.
All tools follow a consistent 'yougile_verb_noun' pattern using snake_case. Verbs are consistently list/get/create/update/delete/set/invite, and nouns switch between plural for list operations and singular for others without exception.
With 57 tools, this is a very large surface area. While the number reflects the breadth of the YouGile API, it exceeds the 25+ threshold that typically makes a server unwieldy for agents, and many tools are highly granular (e.g., separate tools for sticker states).
The tool set provides full CRUD coverage across all major resources: projects, boards, columns, tasks, users, departments, roles, stickers, chats, and webhooks. Soft-delete via update operations is consistently supported, and no obvious workflow dead ends are visible.
Maintenance
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Official Todoist MCP server. Manage tasks and projects. Hosted, no API key needed.
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for generating rough-draft project plans from natural-language prompts.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP server for interacting with YouTrack, enabling issue management, project operations, and search via natural language.308 npm100MIT
- AlicenseBqualityCmaintenanceMCP server that exposes YouGile projects, boards, columns, tasks, and task chat as tools for agents to watch and manage tasks.1714 npmMIT
- AlicenseBqualityBmaintenanceA YouTrack MCP server that enables natural language interaction with your YouTrack instance, supporting issue management, time tracking, agile boards, and more.8717MIT
- AlicenseNot gradedqualityCmaintenanceAn unofficial, security-focused MCP server for YouGile REST API, providing policy-controlled tools with read-only defaults and optional direct-write profiles.16 npm4MIT