unresolve_mr_discussion
Mark a merge request discussion as unresolved to indicate pending issues or required changes, enabling continued collaboration on GitLab projects.
Instructions
Mark a discussion on a merge request as unresolved
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Project ID or path | |
| merge_request_iid | Yes | Merge request internal ID | |
| discussion_id | Yes | The ID of the discussion to unresolve |
Implementation Reference
- src/handlers/merge-requests.ts:505-521 (handler)Handler function that unresolves a merge request discussion by sending a PUT request to the GitLab API with resolved: false.async unresolveMRDiscussion(args: ResolveMRDiscussionParams) { const data = await this.client.put( `/projects/${encodeURIComponent(args.project_id)}/merge_requests/${ args.merge_request_iid }/discussions/${args.discussion_id}`, { resolved: false } ); return { content: [ { type: "text", text: JSON.stringify(data, null, 2), }, ], }; }
- src/tools/merge-requests.ts:518-538 (schema)JSON schema definition for the unresolve_mr_discussion tool inputs.name: 'unresolve_mr_discussion', description: 'Mark a discussion on a merge request as unresolved', inputSchema: { type: 'object', properties: { project_id: { type: 'string', description: 'Project ID or path', }, merge_request_iid: { type: 'number', description: 'Merge request internal ID', }, discussion_id: { type: 'string', description: 'The ID of the discussion to unresolve', }, }, required: ['project_id', 'merge_request_iid', 'discussion_id'], }, },
- src/server.ts:231-234 (registration)Registration of the tool in the MCP server switch statement, dispatching to the handler.case "unresolve_mr_discussion": return await this.mergeRequestHandlers.unresolveMRDiscussion( args as unknown as ResolveMRDiscussionParams );