Skip to main content
Glama

gitlab_get_user_contributions_summary

Summarize a user's contributions, including commits, issues, MRs, and project involvement within a specified timeframe. Ideal for performance reviews, team tracking, and project health analysis.

Instructions

Summarize user's recent contributions across issues, MRs, and commits

Get a comprehensive overview of a user's activity and contributions over a specified time period, aggregating data from multiple sources.

Returns contribution summary including:

  • Commit statistics: count, additions, deletions

  • Issue activity: created, closed, commented

  • MR activity: created, merged, reviewed

  • Project involvement: active repositories

  • Trend analysis: activity patterns over time

Use cases:

  • Performance reviews and reports

  • Team contribution tracking

  • Identifying active contributors

  • Project health monitoring

Parameters:

  • user_id: Numeric user ID

  • username: Username string (use either user_id or username)

  • since: Start date for analysis (YYYY-MM-DD)

  • until: End date for analysis (YYYY-MM-DD)

  • project_id: Optional project scope filter

Example: Get user contributions for last month

{ "username": "johndoe", "since": "2024-01-01", "until": "2024-01-31" }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idNoOptional project scope filter
sinceNoStart date for analysis (YYYY-MM-DD)
untilNoEnd date for analysis (YYYY-MM-DD)
user_idNoNumeric user ID
usernameNoUsername string

Implementation Reference

  • The main handler function that parses arguments and calls the GitLabClient method to retrieve user contributions summary.
    def handle_get_user_contributions_summary(client: GitLabClient, arguments: Optional[Dict[str, Any]]) -> Dict[str, Any]: """Handle getting user contributions summary""" user_id = get_argument(arguments, "user_id") username = get_argument(arguments, "username") since = get_argument(arguments, "since") until = get_argument(arguments, "until") project_id = get_argument(arguments, "project_id") return client.get_user_contributions_summary( user_id=user_id, username=username, since=since, until=until, project_id=project_id )
  • Defines the tool schema including input parameters, types, descriptions, and requirements.
    types.Tool( name=TOOL_GET_USER_CONTRIBUTIONS_SUMMARY, description=desc.DESC_GET_USER_CONTRIBUTIONS_SUMMARY, inputSchema={ "type": "object", "properties": { "username": {"type": "string", "description": "Username string"}, "since": {"type": "string", "description": "Start date (YYYY-MM-DD)", "default": "30 days ago"}, "until": {"type": "string", "description": "End date (YYYY-MM-DD)", "default": "today"} }, "required": ["username"] } ),
  • Maps the tool name to its handler function in the TOOL_HANDLERS dictionary used by the server.
    TOOL_GET_USER_CONTRIBUTIONS_SUMMARY: handle_get_user_contributions_summary,
  • Constant defining the exact tool name string used throughout the codebase.
    TOOL_GET_USER_CONTRIBUTIONS_SUMMARY = "gitlab_get_user_contributions_summary"

Other Tools

Related Tools

Latest Blog Posts

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