Features - fleXRPL/github-mcp GitHub Wiki
Features
The GitHub MCP Server provides a comprehensive set of tools for interacting with GitHub repositories. This page details all available features and tools.
Repository Tools
List Repositories
Lists GitHub repositories accessible to the authenticated user.
Parameters:
visibility
(optional): "all", "public", or "private"sort
(optional): "created", "updated", "pushed", or "full_name"
Example:
{
"name": "list_repositories",
"parameters": {
"visibility": "all",
"sort": "updated"
}
}
Get Repository
Retrieves detailed information about a specific repository.
Parameters:
owner
: Repository ownerrepo
: Repository name
Example:
{
"name": "get_repository",
"parameters": {
"owner": "garotm",
"repo": "github-mcp"
}
}
Issue Tools
List Issues
Lists issues in a repository.
Parameters:
owner
: Repository ownerrepo
: Repository namestate
(optional): "open", "closed", or "all"labels
(optional): List of label names
Example:
{
"name": "list_issues",
"parameters": {
"owner": "garotm",
"repo": "github-mcp",
"state": "open",
"labels": ["bug", "enhancement"]
}
}
Create Issue
Creates a new issue in a repository.
Parameters:
owner
: Repository ownerrepo
: Repository nametitle
: Issue titlebody
(optional): Issue descriptionlabels
(optional): List of label namesassignees
(optional): List of assignee usernames
Example:
{
"name": "create_issue",
"parameters": {
"owner": "garotm",
"repo": "github-mcp",
"title": "Add new feature",
"body": "Implement user authentication",
"labels": ["enhancement"],
"assignees": ["garotm"]
}
}
Pull Request Tools
List Pull Requests
Lists pull requests in a repository.
Parameters:
owner
: Repository ownerrepo
: Repository namestate
(optional): "open", "closed", or "all"sort
(optional): "created", "updated", "popularity", or "long-running"
Example:
{
"name": "list_pull_requests",
"parameters": {
"owner": "garotm",
"repo": "github-mcp",
"state": "open",
"sort": "created"
}
}
Create Pull Request
Creates a new pull request.
Parameters:
owner
: Repository ownerrepo
: Repository nametitle
: Pull request titlebody
(optional): Pull request descriptionhead
: Source branchbase
(optional): Target branch (default: "main")draft
(optional): Create as draft (default: false)
Example:
{
"name": "create_pull_request",
"parameters": {
"owner": "garotm",
"repo": "github-mcp",
"title": "Add authentication",
"body": "Implement secure authentication",
"head": "feature/auth",
"base": "main",
"draft": false
}
}
Content Tools
Get File Content
Retrieves the content of a file in a repository.
Parameters:
owner
: Repository ownerrepo
: Repository namepath
: File pathref
(optional): Branch/tag/commit reference
Example:
{
"name": "get_file_content",
"parameters": {
"owner": "garotm",
"repo": "github-mcp",
"path": "README.md",
"ref": "main"
}
}
List Directory
Lists contents of a directory in a repository.
Parameters:
owner
: Repository ownerrepo
: Repository namepath
(optional): Directory path (default: "")ref
(optional): Branch/tag/commit reference
Example:
{
"name": "list_directory",
"parameters": {
"owner": "garotm",
"repo": "github-mcp",
"path": "github_mcp/tools",
"ref": "main"
}
}
Using Tools with Cursor IDE
All tools can be used directly from Cursor IDE through the MCP integration. The IDE will provide autocomplete and parameter validation for all tool calls.
Response Format
All tools return responses in a standardized format:
{
"content": [
{
"type": "text",
"text": "JSON-formatted response data"
}
]
}
Error Handling
Tools handle errors gracefully and return appropriate error messages. Common error scenarios include:
- Authentication failures
- Invalid parameters
- Repository not found
- Permission issues
- Rate limiting
See Error Handling for detailed information about error responses and handling.
Next Steps
- API Reference - Detailed API documentation
- Security - Security considerations
- FAQ - Common questions and answers