Skip to main content
Glama

GitHub PR Issue Analyser

by saidsef

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GITHUB_TOKENYesGitHub Personal Access Token with 'repo' scope

Schema

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Tools

Functions exposed to the LLM to take actions

NameDescription
get_github_pr_diff
Fetches the diff of a specific pull request from a GitHub repository. Args: repo_owner (str): The owner of the GitHub repository. repo_name (str): The name of the GitHub repository. pr_number (int): The pull request number to fetch the diff for. Returns: str: The diff of the pull request as a string. Returns an empty string if no changes are found, or an error message string if an exception occurs. Error Handling: Logs and returns the error message if an exception is raised during the fetch operation.
get_github_pr_content
First use get_pr_diff to fetch the diff of a specific pull request from a GitHub repository. Then, if you still need more context use get_pr_content to fetch the content of the pull request. Fetches the content of a GitHub pull request for a given repository and PR number. Args: repo_owner (str): The owner of the GitHub repository. repo_name (str): The name of the GitHub repository. pr_number (int): The pull request number to fetch. Returns: Dict[str, Any]: A dictionary containing the pull request information if successful, or an empty dictionary if no information is found or an error occurs. Error Handling: Logs an error message and prints the traceback to stderr if an exception is raised during the fetch operation. Returns an empty dictionary in case of errors.
update_github_pr_description
Updates the title and description of a GitHub pull request. Args: repo_owner (str): The owner of the repository. repo_name (str): The name of the repository. pr_number (int): The pull request number to update. new_title (str): The new title for the pull request. new_description (str): The new description for the pull request. Returns: str: A message indicating the result of the update operation. Returns a success message if the update is successful, or an error message if an exception occurs. Error Handling: Catches and logs any exceptions that occur during the update process. If an error is encountered, the error message is logged and returned.
add_github_pr_comment
Adds a comment to a GitHub pull request. Args: repo_owner (str): The owner of the repository. repo_name (str): The name of the repository. pr_number (int): The pull request number to add the comment to. comment (str): The comment text to be added. Returns: str: A message indicating the result of the comment addition. Returns a success message if the comment is added successfully, or an error message if an exception occurs. Error Handling: Catches and logs any exceptions that occur during the comment addition process. If an error is encountered, the error message is logged and returned.
create_github_issue
Creates a GitHub issue in the specified repository. Then use add_github_pr_comment to link the issue to the PR with comment "Resolves #<issue_number>". Args: repo_owner (str): The owner of the GitHub repository. repo_name (str): The name of the GitHub repository. title (str): The title of the issue to be created. body (str): The body content of the issue. labels (list[str]): A list of labels to assign to the issue. Returns: str: A message indicating the result of the issue creation. Returns a success message if the issue is created successfully, or an error message if an exception occurs. Error Handling: Logs and returns an error message if an exception is raised during the issue creation process. The exception traceback is also printed to stderr for debugging purposes.
update_github_issue
Updates a GitHub issue with the specified parameters. Args: repo_owner (str): The owner of the GitHub repository. repo_name (str): The name of the GitHub repository. issue_number (int): The number of the issue to update. title (str): The new title for the issue. body (str): The new body content for the issue. labels (list[str]): A list of labels to assign to the issue. state (str): The state to set for the issue (e.g., 'open', 'closed'). Returns: str: A message indicating whether the issue was updated successfully or an error occurred. Error Handling: Logs and returns an error message if an exception occurs during the update process.
create_github_tag
Creates a GitHub tag for the specified repository. Args: repo_owner (str): The owner of the GitHub repository. repo_name (str): The name of the GitHub repository. tag_name (str): The name of the tag to create. message (str): The message associated with the tag. Returns: str: A success message if the tag is created successfully, or an error message if an exception occurs. Error Handling: Logs and returns an error message if the tag creation fails due to an exception.
create_github_release
Creates a GitHub release for the specified repository and tag. Args: repo_owner (str): The owner of the GitHub repository. repo_name (str): The name of the GitHub repository. tag_name (str): The tag name to create the release from. release_name (str): The name of the release to be created. body (str): The description or body content of the release. Returns: str: A success message if the release is created successfully, or an error message if an exception occurs. Error Handling: Logs and returns an error message if the release creation fails due to an exception.
get_ipv4_ipv6_info
Fetches IPv4 and IPv6 information. This function retrieves IPv4 and IPv6 address information using the `self.ip` interface. If either IPv4 or IPv6 information is unavailable, it logs the event and returns an empty dictionary. If both are available, the IPv6 address is added to the IPv4 info dictionary under the "ipv6" key. Returns: Dict[str, Any]: A dictionary containing IPv4 information, with the IPv6 address included if available. Returns an empty dictionary if either IPv4 or IPv6 information is missing or if an error occurs. Error Handling: Logs any exceptions encountered during the fetching process and returns an empty dictionary.

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/saidsef/mcp-github-pr-issue-analyser'

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