You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+11-4Lines changed: 11 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -247,7 +247,7 @@ To keep your GitHub PAT secure and reusable across different MCP hosts:
247
247
The flag `--gh-host` and the environment variable `GITHUB_HOST` can be used to set
248
248
the hostname for GitHub Enterprise Server or GitHub Enterprise Cloud with data residency.
249
249
250
-
- For GitHub Enterprise Server, prefix the hostname with the `https://` URI scheme, as it otherwise defaults to `http://`, which GitHub Enterprise Server does not support.
250
+
- For GitHub Enterprise Server, prefix the hostname with the `https://` URI scheme. HTTPS is required and enforced: non-HTTPS hosts are refused so that credentials are never sent over cleartext (the only exception is a loopback host such as `http://localhost` for local development).
251
251
- For GitHub Enterprise Cloud with data residency, use `https://YOURSUBDOMAIN.ghe.com` as the hostname.
252
252
253
253
```json
@@ -926,7 +926,7 @@ The following sets of tools are available:
926
926
-**Required OAuth Scopes**: `repo`
927
927
-`assignees`: Usernames to assign to this issue (string[], optional)
928
928
-`body`: Issue body content (string, optional)
929
-
-`duplicate_of`: Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'. (number, optional)
929
+
-`duplicate_of`: Issue number that this issue is a duplicate of. Required when state_reason is 'duplicate'. (number, optional)
930
930
-`issue_fields`: Issue field values to set or clear. Each item requires 'field_name' and exactly one of 'value', 'field_option_name', or 'delete: true'. (object[], optional)
931
931
-`issue_number`: Issue number to update (number, optional)
932
932
-`labels`: Labels to apply to this issue (string[], optional)
@@ -941,7 +941,7 @@ The following sets of tools are available:
941
941
-`state`: New state (string, optional)
942
942
-`state_reason`: Reason for the state change. Ignored unless state is changed. (string, optional)
943
943
-`title`: Issue title (string, optional)
944
-
-`type`: Type of this issue. Only use if issue types are enabled for this repository. Use list_issue_types tool to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter. (string, optional)
944
+
-`type`: Type of this issue. For updates, pass null to remove the current type. Only use if issue types are enabled for this repository. Use list_issue_types to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter. (string | null, optional)
@@ -1099,6 +1099,7 @@ The following sets of tools are available:
1099
1099
-`owner_type`: Owner type (user or org). If not provided, will be automatically detected. (string, optional)
1100
1100
-`project_number`: The project's number. (number, optional)
1101
1101
-`status_update_id`: The node ID of the project status update. Required for 'get_project_status_update' method. (string, optional)
1102
+
-`view_id`: The node ID of the project view. Required for 'get_project_view' method. (string, optional)
1102
1103
1103
1104
-**projects_list** - List GitHub Projects resources
1104
1105
-**Required OAuth Scopes**: `read:project`
@@ -1111,13 +1112,14 @@ The following sets of tools are available:
1111
1112
-`owner`: The owner (user or organization login). The name is not case sensitive. (string, required)
1112
1113
-`owner_type`: Owner type (user or org). If not provided, will automatically try both. (string, optional)
1113
1114
-`per_page`: Results per page (max 50) (number, optional)
1114
-
-`project_number`: The project's number. Required for 'list_project_fields', 'list_project_items', and 'list_project_status_updates' methods. (number, optional)
1115
+
-`project_number`: The project's number. Required for 'list_project_fields', 'list_project_items', 'list_project_views', and 'list_project_status_updates' methods. (number, optional)
1115
1116
-`query`: Filter/query string. For list_projects: filter by title text and state (e.g. "roadmap is:open"). For list_project_items: advanced filtering using GitHub's project filtering syntax. (string, optional)
1116
1117
1117
1118
-**projects_write** - Manage GitHub Projects
1118
1119
-**Required OAuth Scopes**: `project`
1119
1120
-`body`: The body of the status update (markdown). Used for 'create_project_status_update' method. (string, optional)
1120
1121
-`field_name`: The name of the iteration field (e.g. 'Sprint'). Required for 'create_iteration_field' method. (string, optional)
1122
+
-`filter`: Saved view filter; omit on update to preserve it, or pass null to clear it. (string | null, optional)
1121
1123
-`issue_number`: The issue number. Required for 'add_project_item' when item_type is 'issue'. Also accepted by 'update_project_item' to resolve the item by issue number (combine with item_owner and item_repo). (number, optional)
1122
1124
-`item_id`: The project item ID. Required for 'delete_project_item'. For 'update_project_item', provide either item_id, or (item_owner + item_repo + issue_number) to resolve the item by issue. (number, optional)
1123
1125
-`item_owner`: The owner (user or organization) of the repository containing the issue or pull request. Required for 'add_project_item' method. Also accepted by 'update_project_item' when resolving the item by issue number. (string, optional)
@@ -1126,7 +1128,9 @@ The following sets of tools are available:
1126
1128
-`items`: The items to update with the top-level 'updated_field'. Required for 'update_project_items'; prefer it over calling 'update_project_item' in a loop. Each entry must match exactly one reference variant: 'node_id', numeric 'item_id', or 'item_owner' + 'item_repo' + 'issue_number'. Limit: 50 items per call. (object[], optional)
1127
1129
-`iteration_duration`: Duration in days for iterations of the field (e.g. 7 for weekly, 14 for bi-weekly). Required for 'create_iteration_field' method. (number, optional)
1128
1130
-`iterations`: Custom iterations for 'create_iteration_field' method. Only set this when you need iterations with varying durations, breaks between them, or specific titles. Otherwise omit it: GitHub auto-creates three iterations of 'iteration_duration' days starting on 'start_date', which is the right choice for most cases. (object[], optional)
1131
+
-`layout`: View layout; required when creating a view. (string, optional)
1129
1132
-`method`: The method to execute (string, required)
1133
+
-`name`: View name; required when creating a view. (string, optional)
1130
1134
-`owner`: The project owner (user or organization login). The name is not case sensitive. (string, required)
1131
1135
-`owner_type`: Owner type (user or org). Required for 'create_project' method. If not provided for other methods, will be automatically detected. (string, optional)
1132
1136
-`project_number`: The project's number. Required for all methods except 'create_project'. (number, optional)
@@ -1136,6 +1140,9 @@ The following sets of tools are available:
1136
1140
-`target_date`: The target date of the status update in YYYY-MM-DD format. Used for 'create_project_status_update' method. (string, optional)
1137
1141
-`title`: The project title. Required for 'create_project' method. (string, optional)
1138
1142
-`updated_field`: The field/value to apply, using {"id": 123, "value": ...} or {"name": "Status", "value": ...}; null clears the field. Required for 'update_project_item' and 'update_project_items', where one top-level field/value applies to every item in a batch. For 'update_project_item' SINGLE_SELECT fields, the name form accepts option names; the ID form expects an option ID. (object, optional)
1143
+
-`view_id`: Project view node ID for update or delete; must belong to owner/project_number. (string, optional)
1144
+
-`visible_field_names`: Ordered project field names to show on create or replace on update; omit on update to preserve, or pass [] to reset. Mutually exclusive with visible_fields. Roadmap accepts only []. (string[], optional)
1145
+
-`visible_fields`: Ordered project field database IDs to show on create or replace on update; omit on update to preserve, or pass [] to reset. Mutually exclusive with visible_field_names. Roadmap accepts only []. (string[], optional)
-`assignees`: Usernames to assign to this issue (string[], optional)
58
58
-`body`: Issue body content (string, optional)
59
-
-`duplicate_of`: Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'. (number, optional)
59
+
-`duplicate_of`: Issue number that this issue is a duplicate of. Required when state_reason is 'duplicate'. (number, optional)
60
60
-`issue_fields`: Issue field values to set or clear. Each item requires 'field_name' and exactly one of 'value', 'field_option_name', or 'delete: true'. (object[], optional)
61
61
-`issue_number`: Issue number to update (number, optional)
62
62
-`labels`: Labels to apply to this issue (string[], optional)
-`state_reason`: Reason for the state change. Ignored unless state is changed. (string, optional)
73
73
-`title`: Issue title (string, optional)
74
-
-`type`: Type of this issue. Only use if issue types are enabled for this repository. Use list_issue_types tool to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter. (string, optional)
74
+
-`type`: Type of this issue. For updates, pass null to remove the current type. Only use if issue types are enabled for this repository. Use list_issue_types to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter. (string | null, optional)
-`confidence`: How confident you are in this choice. Use 'HIGH' for clear signal or explicit user request, 'MEDIUM' for reasonable inference with some ambiguity, 'LOW' for best guess with limited signal. (string, optional)
201
201
-`is_suggestion`: If true, this issue type change is sent to the API as a suggestion (suggest:true) rather than an applied value. Whether the type is applied or recorded as a proposal is determined by the API. (boolean, optional)
202
202
-`issue_number`: The issue number to update (number, required)
203
-
-`issue_type`: The issue type to set(string, required)
203
+
-`issue_type`: The issue type to set, or null to remove the current type (string | null, required)
204
204
-`owner`: Repository owner (username or organization) (string, required)
205
205
-`rationale`: One concise sentence explaining what specifically about the issue led you to choose this type. State the concrete signal (e.g. 'Reports a crash when saving' → bug, 'Asks for dark mode support' → feature). (string, optional)
- 'blocked_by' - the subject issue is blocked by the related issue.
339
339
- 'blocking' - the subject issue blocks the related issue. (string, required)
340
340
341
+
### `duplicate_detection`
342
+
343
+
-**find_duplicate** - Find duplicate issues
344
+
-**Required OAuth Scopes**: `repo`
345
+
-`confidence_threshold`: Minimum similarity threshold a candidate must meet to be returned; higher values are stricter. When omitted, the API's high-precision default is used. The scale is defined by the API, so no client-side bounds are enforced. (number, optional)
346
+
-`issue_number`: The number of the existing issue to find duplicates for (number, required)
347
+
-`owner`: The owner of the repository (string, required)
348
+
-`page`: Page number for pagination (min 1) (number, optional)
349
+
-`perPage`: Results per page for pagination (min 1, max 100) (number, optional)
350
+
-`repo`: The name of the repository (string, required)
-`assignees`: Usernames to assign to this issue (string[], optional)
52
52
-`body`: Issue body content (string, optional)
53
-
-`duplicate_of`: Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'. (number, optional)
53
+
-`duplicate_of`: Issue number that this issue is a duplicate of. Required when state_reason is 'duplicate'. (number, optional)
54
54
-`issue_fields`: Issue field values to set or clear. Each item requires 'field_name' and exactly one of 'value', 'field_option_name', or 'delete: true'. (object[], optional)
55
55
-`issue_number`: Issue number to update (number, optional)
56
56
-`labels`: Labels to apply to this issue (string[], optional)
@@ -65,7 +65,7 @@ The list below is generated from the Go source. It covers tool **inventory and s
65
65
-`state`: New state (string, optional)
66
66
-`state_reason`: Reason for the state change. Ignored unless state is changed. (string, optional)
67
67
-`title`: Issue title (string, optional)
68
-
-`type`: Type of this issue. Only use if issue types are enabled for this repository. Use list_issue_types tool to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter. (string, optional)
68
+
-`type`: Type of this issue. For updates, pass null to remove the current type. Only use if issue types are enabled for this repository. Use list_issue_types to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter. (string | null, optional)
"description": "Find likely duplicate issues for an existing issue in a GitHub repository. This is a read-only search scoped to the source issue's repository: it returns ranked candidate issues with a similarity score and confidence, and does not close, link, comment on, or otherwise modify any issue.",
8
+
"inputSchema": {
9
+
"properties": {
10
+
"confidence_threshold": {
11
+
"description": "Minimum similarity threshold a candidate must meet to be returned; higher values are stricter. When omitted, the API's high-precision default is used. The scale is defined by the API, so no client-side bounds are enforced.",
12
+
"type": "number"
13
+
},
14
+
"issue_number": {
15
+
"description": "The number of the existing issue to find duplicates for",
16
+
"type": "number"
17
+
},
18
+
"owner": {
19
+
"description": "The owner of the repository",
20
+
"type": "string"
21
+
},
22
+
"page": {
23
+
"description": "Page number for pagination (min 1)",
24
+
"minimum": 1,
25
+
"type": "number"
26
+
},
27
+
"perPage": {
28
+
"description": "Results per page for pagination (min 1, max 100)",
Copy file name to clipboardExpand all lines: pkg/github/__toolsnaps__/issue_write.snap
+11-3Lines changed: 11 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@
28
28
"type": "string"
29
29
},
30
30
"duplicate_of": {
31
-
"description": "Issue number that this issue is a duplicate of. Only used when state_reason is 'duplicate'.",
31
+
"description": "Issue number that this issue is a duplicate of. Required when state_reason is 'duplicate'.",
32
32
"type": "number"
33
33
},
34
34
"issue_fields": {
@@ -120,8 +120,16 @@
120
120
"type": "string"
121
121
},
122
122
"type": {
123
-
"description": "Type of this issue. Only use if issue types are enabled for this repository. Use list_issue_types tool to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter.",
124
-
"type": "string"
123
+
"anyOf": [
124
+
{
125
+
"minLength": 1,
126
+
"type": "string"
127
+
},
128
+
{
129
+
"type": "null"
130
+
}
131
+
],
132
+
"description": "Type of this issue. For updates, pass null to remove the current type. Only use if issue types are enabled for this repository. Use list_issue_types to get valid type values for this repository or its owner organization. If the repository doesn't support issue types, omit this parameter."
0 commit comments