You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(manifest): replace and expand manifest with detailed tooling and prompts
Update the manifest with an extensively detailed description, expanded tool
and prompt definitions, and refined configuration fields to enhance the AI-
powered localization assistant capabilities.
- Replace the previous manifest with a fully enriched one listing 59 tools
across 11 domains, detailed usage descriptions, and 38 well-defined prompts.
- Enhance user configuration options and environment variable mappings for
improved flexibility and clarity.
- Provide comprehensive long descriptions and examples to improve user
understanding of the capabilities.
- Refine tool descriptions to include required, optional arguments, and return
data, aiding better usability.
- Adjust compatibility and runtime versions to align with updates.
- Modify related code to improve tool extraction, allowing multiline and
escaped strings parsing for accurate manifest generation.
- Enrich tool registration descriptions with detailed usage, inputs, and outputs.
These changes significantly improve the manifest's clarity, completeness, and
usability, laying groundwork for advanced conversational workflows in the Lokalise
MCP project.
manifest.description.includes("Manage 59 tools across 11 domains")
419
+
){
420
+
manifest.description=
421
+
"Transform Lokalise into your conversational AI assistant. Manage tools across domains with natural language - from project creation to translation workflows, team management to bulk operations. Stop clicking, start commanding.";
Copy file name to clipboardExpand all lines: src/domains/queuedprocesses/queuedprocesses.tool.ts
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -107,14 +107,14 @@ function registerTools(server: McpServer) {
107
107
108
108
server.tool(
109
109
"lokalise_list_queued_processes",
110
-
"Lists all background/async processes in a Lokalise project with status tracking",
110
+
"Lists all background/async processes in a Lokalise project with status tracking. Required: projectId. Optional: limit (100), page. Use to monitor file uploads, downloads, bulk operations, or troubleshoot process issues. Returns: Processes with status, progress, and completion estimates.",
111
111
ListQueuedprocessesToolArgs.shape,
112
112
handleListQueuedprocesses,
113
113
);
114
114
115
115
server.tool(
116
116
"lokalise_get_queued_process",
117
-
"Gets detailed status and information about a specific async process (upload, download, etc.)",
117
+
"Gets detailed status and information about a specific async process (upload, download, etc.). Required: projectId, processId. Use to check process completion, diagnose failures, or get detailed progress information. Returns: Complete process details with logs and status history.",
Copy file name to clipboardExpand all lines: src/domains/teamusers/teamusers.tool.ts
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -180,28 +180,28 @@ function registerTools(server: McpServer) {
180
180
181
181
server.tool(
182
182
"lokalise_list_team_users",
183
-
"Lists all users in a Lokalise team with pagination support",
183
+
"Lists all users in a Lokalise team with pagination support. Required: teamId. Optional: limit (100), page. Use to audit team composition, check access levels, or prepare team changes. Returns: Users with roles, permissions, and activity status.",
184
184
ListTeamusersToolArgs.shape,
185
185
handleListTeamusers,
186
186
);
187
187
188
188
server.tool(
189
189
"lokalise_get_team_user",
190
-
"Gets detailed information about a specific user in a team",
190
+
"Gets detailed information about a specific user in a team. Required: teamId, userId. Use to verify user permissions, check role assignments, or investigate access issues. Returns: Complete user profile with all team permissions and administrative rights.",
191
191
GetTeamusersToolArgs.shape,
192
192
handleGetTeamusers,
193
193
);
194
194
195
195
server.tool(
196
196
"lokalise_update_team_user",
197
-
"Updates a team user's role (owner, admin, member, or biller)",
197
+
"Updates a team user's role (owner, admin, member, or biller). Required: teamId, userId, role. Use to manage permissions, promote/demote, or adjust access levels. Returns: Updated user profile with new role and permissions.",
198
198
UpdateTeamusersToolArgs.shape,
199
199
handleUpdateTeamusers,
200
200
);
201
201
202
202
server.tool(
203
203
"lokalise_delete_team_user",
204
-
"Removes a user from a Lokalise team",
204
+
"Removes a user from a Lokalise team. Required: teamId, userId. Use to remove members, clean up permissions, or manage team structure. Returns: Success message with user details.",
Copy file name to clipboardExpand all lines: src/domains/usergroups/usergroups.tool.ts
+9-9Lines changed: 9 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -317,63 +317,63 @@ function registerTools(server: McpServer) {
317
317
318
318
server.tool(
319
319
"lokalise_list_usergroups",
320
-
"Lists all user groups in a Lokalise team with pagination support",
320
+
"Lists all user groups in a Lokalise team with pagination support. Required: teamId. Optional: limit (100), page. Use to audit team organization, check group structure, or prepare group management operations. Returns: User groups with names, member counts, permissions, and language assignments. Essential for understanding team hierarchy.",
321
321
ListUsergroupsToolArgs.shape,
322
322
handleListUsergroups,
323
323
);
324
324
325
325
server.tool(
326
326
"lokalise_get_usergroup",
327
-
"Gets detailed information about a specific user group",
327
+
"Gets detailed information about a specific user group including members, permissions, and project assignments. Required: teamId, groupId. Use to audit group configuration, verify member access, or understand permission structure. Returns: Complete group profile with admin rights, language permissions, and assigned projects/members.",
328
328
GetUsergroupsToolArgs.shape,
329
329
handleGetUsergroups,
330
330
);
331
331
332
332
server.tool(
333
333
"lokalise_create_usergroup",
334
-
"Creates a new user group in a Lokalise team",
334
+
"Creates a new user group in a Lokalise team for organized permission management. Required: teamId, name, isReviewer, isAdmin. Optional: adminRights, languages, projects, members. Use to establish role-based access control, organize team permissions, or set up project-specific groups. Returns: Created group with assigned ID and configuration.",
335
335
CreateUsergroupsToolArgs.shape,
336
336
handleCreateUsergroups,
337
337
);
338
338
339
339
server.tool(
340
340
"lokalise_update_usergroup",
341
-
"Updates a user group's properties",
341
+
"Updates a user group's properties including permissions and assignments. Required: teamId, groupId, name, isReviewer, isAdmin. Optional: adminRights, languages. Use to adjust group permissions, modify access levels, or reorganize team structure. Returns: Updated group configuration. Note: Cannot modify projects/members here - use dedicated tools.",
342
342
UpdateUsergroupsToolArgs.shape,
343
343
handleUpdateUsergroups,
344
344
);
345
345
346
346
server.tool(
347
347
"lokalise_delete_usergroup",
348
-
"Deletes a user group from a Lokalise team",
348
+
"Deletes a user group from a Lokalise team, removing all associated permissions. Required: teamId, groupId. Use for cleanup, removing obsolete groups, or restructuring team organization. Returns: Deletion confirmation. Warning: Removes all group assignments - members lose group-based permissions immediately.",
349
349
DeleteUsergroupsToolArgs.shape,
350
350
handleDeleteUsergroups,
351
351
);
352
352
353
353
server.tool(
354
354
"lokalise_add_members_to_group",
355
-
"Adds users to a user group",
355
+
"Adds users to a user group, granting them group-based permissions and project access. Required: teamId, groupId, userIds array. Use to onboard team members, assign role-based access, or batch permission updates. Returns: Operation confirmation. Members immediately gain group permissions and project access.",
356
356
AddMembersToolArgs.shape,
357
357
handleAddMembers,
358
358
);
359
359
360
360
server.tool(
361
361
"lokalise_remove_members_from_group",
362
-
"Removes users from a user group",
362
+
"Removes users from a user group, revoking group-based permissions and project access. Required: teamId, groupId, userIds array. Use for role changes, offboarding, or permission cleanup. Returns: Operation confirmation. Warning: Immediate effect - users lose group permissions and project access.",
363
363
RemoveMembersToolArgs.shape,
364
364
handleRemoveMembers,
365
365
);
366
366
367
367
server.tool(
368
368
"lokalise_add_projects_to_group",
369
-
"Adds projects to a user group",
369
+
"Adds projects to a user group, granting all group members access to specified projects. Required: teamId, groupId, projectIds array. Use to expand group project scope, onboard projects to existing teams, or batch project assignments. Returns: Operation confirmation. All group members gain immediate project access.",
370
370
AddProjectsToolArgs.shape,
371
371
handleAddProjects,
372
372
);
373
373
374
374
server.tool(
375
375
"lokalise_remove_projects_from_group",
376
-
"Removes projects from a user group",
376
+
"Removes projects from a user group, revoking group member access to specified projects. Required: teamId, groupId, projectIds array. Use to limit project scope, offboard projects, or restructure access. Returns: Operation confirmation. Warning: All group members lose immediate project access.",
0 commit comments