MCPcopy Index your code
hub / github.com/github/github-mcp-server / deleteProjectItem

Function deleteProjectItem

pkg/github/projects.go:1116–1143  ·  view source on GitHub ↗
(ctx context.Context, client *github.Client, owner, ownerType string, projectNumber int, itemID int64)

Source from the content-addressed store, hash-verified

1114}
1115
1116func deleteProjectItem(ctx context.Context, client *github.Client, owner, ownerType string, projectNumber int, itemID int64) (*mcp.CallToolResult, any, error) {
1117 var resp *github.Response
1118 var err error
1119
1120 if ownerType == "org" {
1121 resp, err = client.Projects.DeleteOrganizationProjectItem(ctx, owner, projectNumber, itemID)
1122 } else {
1123 resp, err = client.Projects.DeleteUserProjectItem(ctx, owner, projectNumber, itemID)
1124 }
1125
1126 if err != nil {
1127 return ghErrors.NewGitHubAPIErrorResponse(ctx,
1128 ProjectDeleteFailedError,
1129 resp,
1130 err,
1131 ), nil, nil
1132 }
1133 defer func() { _ = resp.Body.Close() }()
1134
1135 if resp.StatusCode != http.StatusNoContent {
1136 body, err := io.ReadAll(resp.Body)
1137 if err != nil {
1138 return nil, nil, fmt.Errorf("failed to read response body: %w", err)
1139 }
1140 return ghErrors.NewGitHubAPIStatusErrorResponse(ctx, ProjectDeleteFailedError, resp, body), nil, nil
1141 }
1142 return utils.NewToolResultText("project item successfully deleted"), nil, nil
1143}
1144
1145// resolveProjectNodeID resolves (owner, ownerType, projectNumber) to a project node ID via GraphQL.
1146func resolveProjectNodeID(ctx context.Context, gqlClient *githubv4.Client, owner, ownerType string, projectNumber int) (githubv4.ID, error) {

Callers 1

ProjectsWriteFunction · 0.85

Calls 2

NewToolResultTextFunction · 0.92
CloseMethod · 0.80

Tested by

no test coverage detected