Skip to content

Commit 9d33e95

Browse files
Move labels tools to issues toolset
Labels are closely related to issues - you add labels to issues, search issues by label, etc. Keeping them in a separate toolset required users to explicitly enable 'labels' to get this functionality. Moving to issues toolset makes labels available by default since issues is a default toolset.
1 parent 7fbcae2 commit 9d33e95

File tree

4 files changed

+21
-33
lines changed

4 files changed

+21
-33
lines changed

README.md

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,6 @@ The following sets of tools are available:
463463
| `gists` | GitHub Gist related tools |
464464
| `git` | GitHub Git API related tools for low-level Git operations |
465465
| `issues` | GitHub Issues related tools |
466-
| `labels` | GitHub Labels related tools |
467466
| `notifications` | GitHub Notifications related tools |
468467
| `orgs` | GitHub Organization related tools |
469468
| `projects` | GitHub Projects related tools |
@@ -718,6 +717,11 @@ The following sets of tools are available:
718717
- `owner`: Repository owner (string, required)
719718
- `repo`: Repository name (string, required)
720719

720+
- **get_label** - Get a specific label from a repository.
721+
- `name`: Label name. (string, required)
722+
- `owner`: Repository owner (username or organization name) (string, required)
723+
- `repo`: Repository name (string, required)
724+
721725
- **issue_read** - Get issue details
722726
- `issue_number`: The number of the issue (number, required)
723727
- `method`: The read operation to perform on a single issue.
@@ -751,6 +755,15 @@ The following sets of tools are available:
751755
- `title`: Issue title (string, optional)
752756
- `type`: Type of this issue. Only use if the repository has issue types configured. Use list_issue_types tool to get valid type values for the organization. If the repository doesn't support issue types, omit this parameter. (string, optional)
753757

758+
- **label_write** - Write operations on repository labels.
759+
- `color`: Label color as 6-character hex code without '#' prefix (e.g., 'f29513'). Required for 'create', optional for 'update'. (string, optional)
760+
- `description`: Label description text. Optional for 'create' and 'update'. (string, optional)
761+
- `method`: Operation to perform: 'create', 'update', or 'delete' (string, required)
762+
- `name`: Label name - required for all operations (string, required)
763+
- `new_name`: New name for the label (used only with 'update' method to rename) (string, optional)
764+
- `owner`: Repository owner (username or organization name) (string, required)
765+
- `repo`: Repository name (string, required)
766+
754767
- **list_issue_types** - List available issue types
755768
- `owner`: The organization owner of the repository (string, required)
756769

@@ -765,6 +778,10 @@ The following sets of tools are available:
765778
- `since`: Filter by date (ISO 8601 timestamp) (string, optional)
766779
- `state`: Filter by state, by default both open and closed issues are returned when not provided (string, optional)
767780

781+
- **list_label** - List labels from a repository
782+
- `owner`: Repository owner (username or organization name) - required for all operations (string, required)
783+
- `repo`: Repository name - required for all operations (string, required)
784+
768785
- **search_issues** - Search issues
769786
- `order`: Sort order (string, optional)
770787
- `owner`: Optional repository owner. If provided with repo, only issues for this repository are listed. (string, optional)
@@ -793,30 +810,6 @@ The following sets of tools are available:
793810

794811
<details>
795812

796-
<summary>Labels</summary>
797-
798-
- **get_label** - Get a specific label from a repository.
799-
- `name`: Label name. (string, required)
800-
- `owner`: Repository owner (username or organization name) (string, required)
801-
- `repo`: Repository name (string, required)
802-
803-
- **label_write** - Write operations on repository labels.
804-
- `color`: Label color as 6-character hex code without '#' prefix (e.g., 'f29513'). Required for 'create', optional for 'update'. (string, optional)
805-
- `description`: Label description text. Optional for 'create' and 'update'. (string, optional)
806-
- `method`: Operation to perform: 'create', 'update', or 'delete' (string, required)
807-
- `name`: Label name - required for all operations (string, required)
808-
- `new_name`: New name for the label (used only with 'update' method to rename) (string, optional)
809-
- `owner`: Repository owner (username or organization name) (string, required)
810-
- `repo`: Repository name (string, required)
811-
812-
- **list_label** - List labels from a repository
813-
- `owner`: Repository owner (username or organization name) - required for all operations (string, required)
814-
- `repo`: Repository name - required for all operations (string, required)
815-
816-
</details>
817-
818-
<details>
819-
820813
<summary>Notifications</summary>
821814

822815
- **dismiss_notification** - Dismiss notification

docs/remote-server.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ Below is a table of available toolsets for the remote GitHub MCP Server. Each to
2727
| Gists | GitHub Gist related tools | https://api.githubcopilot.com/mcp/x/gists | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-gists&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fgists%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/gists/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-gists&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fgists%2Freadonly%22%7D) |
2828
| Git | GitHub Git API related tools for low-level Git operations | https://api.githubcopilot.com/mcp/x/git | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-git&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fgit%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/git/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-git&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fgit%2Freadonly%22%7D) |
2929
| Issues | GitHub Issues related tools | https://api.githubcopilot.com/mcp/x/issues | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-issues&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fissues%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/issues/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-issues&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fissues%2Freadonly%22%7D) |
30-
| Labels | GitHub Labels related tools | https://api.githubcopilot.com/mcp/x/labels | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-labels&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Flabels%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/labels/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-labels&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Flabels%2Freadonly%22%7D) |
3130
| Notifications | GitHub Notifications related tools | https://api.githubcopilot.com/mcp/x/notifications | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-notifications&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fnotifications%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/notifications/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-notifications&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fnotifications%2Freadonly%22%7D) |
3231
| Organizations | GitHub Organization related tools | https://api.githubcopilot.com/mcp/x/orgs | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-orgs&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Forgs%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/orgs/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-orgs&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Forgs%2Freadonly%22%7D) |
3332
| Projects | GitHub Projects related tools | https://api.githubcopilot.com/mcp/x/projects | [Install](https://insiders.vscode.dev/redirect/mcp/install?name=gh-projects&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fprojects%22%7D) | [read-only](https://api.githubcopilot.com/mcp/x/projects/readonly) | [Install read-only](https://insiders.vscode.dev/redirect/mcp/install?name=gh-projects&config=%7B%22type%22%3A%20%22http%22%2C%22url%22%3A%20%22https%3A%2F%2Fapi.githubcopilot.com%2Fmcp%2Fx%2Fprojects%2Freadonly%22%7D) |

pkg/github/labels.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import (
1818
// GetLabel retrieves a specific label by name from a GitHub repository
1919
func GetLabel(t translations.TranslationHelperFunc) registry.ServerTool {
2020
return NewTool(
21-
ToolsetLabels,
21+
ToolsetMetadataIssues,
2222
mcp.Tool{
2323
Name: "get_label",
2424
Description: t("TOOL_GET_LABEL_DESCRIPTION", "Get a specific label from a repository."),
@@ -113,7 +113,7 @@ func GetLabel(t translations.TranslationHelperFunc) registry.ServerTool {
113113
// ListLabels lists labels from a repository
114114
func ListLabels(t translations.TranslationHelperFunc) registry.ServerTool {
115115
return NewTool(
116-
ToolsetLabels,
116+
ToolsetMetadataIssues,
117117
mcp.Tool{
118118
Name: "list_label",
119119
Description: t("TOOL_LIST_LABEL_DESCRIPTION", "List labels from a repository"),
@@ -205,7 +205,7 @@ func ListLabels(t translations.TranslationHelperFunc) registry.ServerTool {
205205
// LabelWrite handles create, update, and delete operations for GitHub labels
206206
func LabelWrite(t translations.TranslationHelperFunc) registry.ServerTool {
207207
return NewTool(
208-
ToolsetLabels,
208+
ToolsetMetadataIssues,
209209
mcp.Tool{
210210
Name: "label_write",
211211
Description: t("TOOL_LABEL_WRITE_DESCRIPTION", "Perform write operations on repository labels. To set labels on issues, use the 'update_issue' tool."),

pkg/github/tools.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,10 +106,6 @@ var (
106106
ID: "dynamic",
107107
Description: "Discover GitHub MCP tools that can help achieve tasks by enabling additional sets of tools, you can control the enablement of any toolset to access its tools when this toolset is enabled.",
108108
}
109-
ToolsetLabels = registry.ToolsetMetadata{
110-
ID: "labels",
111-
Description: "GitHub Labels related tools",
112-
}
113109
)
114110

115111
// AllTools returns all tools with their embedded toolset metadata.

0 commit comments

Comments
 (0)