Skip to main content
Glama

MCP GitLab Server

by Vijay-Duke

gitlab_get_merge_request_notes

Retrieve and manage merge request comments on GitLab projects. Supports pagination, sorting by date, and customizable result length for efficient review of MR discussions and feedback.

Instructions

List merge request comments Returns: Array of notes/comments with content Use when: Reading MR discussions, reviews Pagination: Yes (default 10 per page) Sorting: By created_at or updated_at

Example response: [{ "id": 789, "body": "Great work! Just one suggestion...", "author": {"username": "reviewer"}, "created_at": "2024-01-15T10:30:00Z", "type": "DiffNote", "resolvable": true, "resolved": false }]

Related tools:

  • gitlab_get_merge_request_discussions: Threaded discussions

  • gitlab_add_merge_request_comment: Add comment

  • gitlab_resolve_discussion: Resolve threads

Input Schema

NameRequiredDescriptionDefault
max_body_lengthNoMaximum length for text content Type: integer Range: 0-10000 (0 = unlimited) Default: 1000 Examples: - 0: Show full content (no truncation) - 500: Limit to 500 characters - 2000: Allow longer descriptions Note: Truncated text ends with '...'
mr_iidYesMerge request number (IID - Internal ID) Type: integer Format: Project-specific MR number (without !) Required: Yes Examples: - 456 (for MR !456) - 7890 (for MR !7890) How to find: Look at MR URL or title - URL: https://gitlab.com/group/project/-/merge_requests/456 → use 456 - Title: "Add new feature (!456)" → use 456 Note: This is NOT the global MR ID
order_byNoField to sort by Type: string (enum) Options vary by endpoint: - Commits: 'created_at', 'title' - Issues: 'created_at', 'updated_at', 'priority', 'due_date' - MRs: 'created_at', 'updated_at', 'title' Default: Usually 'created_at' Example: 'updated_at' to see recently modified items firstcreated_at
pageNoPage number for pagination Type: integer Range: ≥1 Default: 1 Example: 3 (to get the third page of results) Note: Use with per_page to navigate large result sets
per_pageNoNumber of results per page Type: integer Range: 1-100 Default: 20 Example: 50 (for faster browsing) Tip: Use smaller values (10-20) for detailed operations, larger (50-100) for listing
project_idNoProject identifier (auto-detected if not provided) Type: integer OR string Format: numeric ID or 'namespace/project' Optional: Yes - auto-detects from current git repository Examples: - 12345 (numeric ID) - 'gitlab-org/gitlab' (namespace/project path) - 'my-group/my-subgroup/my-project' (nested groups) Note: If in a git repo with GitLab remote, this can be omitted
sortNoSort direction Type: string (enum) Options: 'asc' | 'desc' Default: Varies by context (usually 'desc' for time-based) Examples: - 'asc': A→Z, oldest→newest, smallest→largest - 'desc': Z→A, newest→oldest, largest→smallestasc

Input Schema (JSON Schema)

{ "properties": { "max_body_length": { "default": 500, "description": "Maximum length for text content\nType: integer\nRange: 0-10000 (0 = unlimited)\nDefault: 1000\nExamples:\n - 0: Show full content (no truncation)\n - 500: Limit to 500 characters\n - 2000: Allow longer descriptions\nNote: Truncated text ends with '...'", "minimum": 0, "type": "integer" }, "mr_iid": { "description": "Merge request number (IID - Internal ID)\nType: integer\nFormat: Project-specific MR number (without !)\nRequired: Yes\nExamples:\n - 456 (for MR !456)\n - 7890 (for MR !7890)\nHow to find: Look at MR URL or title\n - URL: https://gitlab.com/group/project/-/merge_requests/456 → use 456\n - Title: \"Add new feature (!456)\" → use 456\nNote: This is NOT the global MR ID", "type": "integer" }, "order_by": { "default": "created_at", "description": "Field to sort by\nType: string (enum)\nOptions vary by endpoint:\n - Commits: 'created_at', 'title'\n - Issues: 'created_at', 'updated_at', 'priority', 'due_date'\n - MRs: 'created_at', 'updated_at', 'title'\nDefault: Usually 'created_at'\nExample: 'updated_at' to see recently modified items first", "enum": [ "created_at", "updated_at" ], "type": "string" }, "page": { "default": 1, "description": "Page number for pagination\nType: integer\nRange: ≥1\nDefault: 1\nExample: 3 (to get the third page of results)\nNote: Use with per_page to navigate large result sets", "minimum": 1, "type": "integer" }, "per_page": { "default": 20, "description": "Number of results per page\nType: integer\nRange: 1-100\nDefault: 20\nExample: 50 (for faster browsing)\nTip: Use smaller values (10-20) for detailed operations, larger (50-100) for listing", "maximum": 100, "minimum": 1, "type": "integer" }, "project_id": { "description": "Project identifier (auto-detected if not provided)\nType: integer OR string\nFormat: numeric ID or 'namespace/project'\nOptional: Yes - auto-detects from current git repository\nExamples:\n - 12345 (numeric ID)\n - 'gitlab-org/gitlab' (namespace/project path)\n - 'my-group/my-subgroup/my-project' (nested groups)\nNote: If in a git repo with GitLab remote, this can be omitted", "type": "string" }, "sort": { "default": "asc", "description": "Sort direction\nType: string (enum)\nOptions: 'asc' | 'desc'\nDefault: Varies by context (usually 'desc' for time-based)\nExamples:\n - 'asc': A→Z, oldest→newest, smallest→largest\n - 'desc': Z→A, newest→oldest, largest→smallest", "enum": [ "asc", "desc" ], "type": "string" } }, "required": [ "mr_iid" ], "type": "object" }

Other Tools from MCP GitLab Server

Related Tools

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vijay-Duke/mcp-gitlab'

If you have feedback or need assistance with the MCP directory API, please join our Discord server