-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Migrate projects toolset to modelcontextprotocol/go-sdk #1475
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
e61997c
1ebfc36
b36036a
4a0112e
1b45204
7edb968
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,48 +1,47 @@ | ||
| { | ||
| "annotations": { | ||
| "title": "Add project item", | ||
| "readOnlyHint": false | ||
| "title": "Add project item" | ||
| }, | ||
| "description": "Add a specific Project item for a user or org", | ||
| "inputSchema": { | ||
| "type": "object", | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number", | ||
| "item_type", | ||
| "item_id" | ||
| ], | ||
| "properties": { | ||
| "item_id": { | ||
| "description": "The numeric ID of the issue or pull request to add to the project.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The numeric ID of the issue or pull request to add to the project." | ||
| }, | ||
| "item_type": { | ||
| "type": "string", | ||
| "description": "The item's type, either issue or pull_request.", | ||
| "enum": [ | ||
| "issue", | ||
| "pull_request" | ||
| ], | ||
| "type": "string" | ||
| ] | ||
| }, | ||
| "owner": { | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." | ||
| }, | ||
| "owner_type": { | ||
| "type": "string", | ||
| "description": "Owner type", | ||
| "enum": [ | ||
| "user", | ||
| "org" | ||
| ], | ||
| "type": "string" | ||
| ] | ||
| }, | ||
| "project_number": { | ||
| "description": "The project's number.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The project's number." | ||
| } | ||
| }, | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number", | ||
| "item_type", | ||
| "item_id" | ||
| ], | ||
| "type": "object" | ||
| } | ||
| }, | ||
| "name": "add_project_item" | ||
| } | ||
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
| @@ -1,39 +1,38 @@ | ||||||||
| { | ||||||||
| "annotations": { | ||||||||
| "title": "Delete project item", | ||||||||
| "readOnlyHint": false | ||||||||
| "title": "Delete project item" | ||||||||
|
||||||||
| "title": "Delete project item" | |
| "title": "Delete project item", | |
| "readOnlyHint": false |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,34 +1,34 @@ | ||
| { | ||
| "annotations": { | ||
| "title": "Get project", | ||
| "readOnlyHint": true | ||
| "readOnlyHint": true, | ||
| "title": "Get project" | ||
| }, | ||
| "description": "Get Project for a user or org", | ||
| "inputSchema": { | ||
| "type": "object", | ||
| "required": [ | ||
| "project_number", | ||
| "owner_type", | ||
| "owner" | ||
| ], | ||
| "properties": { | ||
| "owner": { | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." | ||
| }, | ||
| "owner_type": { | ||
| "type": "string", | ||
| "description": "Owner type", | ||
| "enum": [ | ||
| "user", | ||
| "org" | ||
| ], | ||
| "type": "string" | ||
| ] | ||
| }, | ||
| "project_number": { | ||
| "description": "The project's number", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The project's number" | ||
| } | ||
| }, | ||
| "required": [ | ||
| "project_number", | ||
| "owner_type", | ||
| "owner" | ||
| ], | ||
| "type": "object" | ||
| } | ||
| }, | ||
| "name": "get_project" | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,39 +1,39 @@ | ||
| { | ||
| "annotations": { | ||
| "title": "Get project field", | ||
| "readOnlyHint": true | ||
| "readOnlyHint": true, | ||
| "title": "Get project field" | ||
| }, | ||
| "description": "Get Project field for a user or org", | ||
| "inputSchema": { | ||
| "type": "object", | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number", | ||
| "field_id" | ||
| ], | ||
| "properties": { | ||
| "field_id": { | ||
| "description": "The field's id.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The field's id." | ||
| }, | ||
| "owner": { | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." | ||
| }, | ||
| "owner_type": { | ||
| "type": "string", | ||
| "description": "Owner type", | ||
| "enum": [ | ||
| "user", | ||
| "org" | ||
| ], | ||
| "type": "string" | ||
| ] | ||
| }, | ||
| "project_number": { | ||
| "description": "The project's number.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The project's number." | ||
| } | ||
| }, | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number", | ||
| "field_id" | ||
| ], | ||
| "type": "object" | ||
| } | ||
| }, | ||
| "name": "get_project_field" | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,46 +1,46 @@ | ||
| { | ||
| "annotations": { | ||
| "title": "Get project item", | ||
| "readOnlyHint": true | ||
| "readOnlyHint": true, | ||
| "title": "Get project item" | ||
| }, | ||
| "description": "Get a specific Project item for a user or org", | ||
| "inputSchema": { | ||
| "type": "object", | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number", | ||
| "item_id" | ||
| ], | ||
| "properties": { | ||
| "fields": { | ||
| "type": "array", | ||
| "description": "Specific list of field IDs to include in the response (e.g. [\"102589\", \"985201\", \"169875\"]). If not provided, only the title field is included.", | ||
| "items": { | ||
| "type": "string" | ||
| }, | ||
| "type": "array" | ||
| } | ||
| }, | ||
| "item_id": { | ||
| "description": "The item's ID.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The item's ID." | ||
| }, | ||
| "owner": { | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." | ||
| }, | ||
| "owner_type": { | ||
| "type": "string", | ||
| "description": "Owner type", | ||
| "enum": [ | ||
| "user", | ||
| "org" | ||
| ], | ||
| "type": "string" | ||
| ] | ||
| }, | ||
| "project_number": { | ||
| "description": "The project's number.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The project's number." | ||
| } | ||
| }, | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number", | ||
| "item_id" | ||
| ], | ||
| "type": "object" | ||
| } | ||
| }, | ||
| "name": "get_project_item" | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,46 +1,46 @@ | ||
| { | ||
| "annotations": { | ||
| "title": "List project fields", | ||
| "readOnlyHint": true | ||
| "readOnlyHint": true, | ||
| "title": "List project fields" | ||
| }, | ||
| "description": "List Project fields for a user or org", | ||
| "inputSchema": { | ||
| "type": "object", | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number" | ||
| ], | ||
| "properties": { | ||
| "after": { | ||
| "description": "Forward pagination cursor from previous pageInfo.nextCursor.", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "Forward pagination cursor from previous pageInfo.nextCursor." | ||
| }, | ||
| "before": { | ||
| "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare).", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "Backward pagination cursor from previous pageInfo.prevCursor (rare)." | ||
| }, | ||
| "owner": { | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive.", | ||
| "type": "string" | ||
| "type": "string", | ||
| "description": "If owner_type == user it is the handle for the GitHub user account. If owner_type == org it is the name of the organization. The name is not case sensitive." | ||
| }, | ||
| "owner_type": { | ||
| "type": "string", | ||
| "description": "Owner type", | ||
| "enum": [ | ||
| "user", | ||
| "org" | ||
| ], | ||
| "type": "string" | ||
| ] | ||
| }, | ||
| "per_page": { | ||
| "description": "Results per page (max 50)", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "Results per page (max 50)" | ||
| }, | ||
| "project_number": { | ||
| "description": "The project's number.", | ||
| "type": "number" | ||
| "type": "number", | ||
| "description": "The project's number." | ||
| } | ||
| }, | ||
| "required": [ | ||
| "owner_type", | ||
| "owner", | ||
| "project_number" | ||
| ], | ||
| "type": "object" | ||
| } | ||
| }, | ||
| "name": "list_project_fields" | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The toolsnap file is missing
"readOnlyHint": falsein the annotations for this write operation. Other write tools in the codebase (e.g.,create_branch.snap,push_files.snap,star_repository.snap) include this field. SinceAddProjectItemcorrectly setsReadOnlyHint: falsein the code (line 649 ofprojects.go), the toolsnap should reflect this.The toolsnap should include:
This needs to be regenerated by running
UPDATE_TOOLSNAPS=true go test ./....