Skip to content

Add five MCP tools to create, update, delete, list, and get GitHub issue artifacts - #3554

Open
veralizeth wants to merge 7 commits into
mainfrom
veralizeth/artifacts-mcp-tooling
Open

veralizeth wants to merge 7 commits into
mainfrom
veralizeth/artifacts-mcp-tooling

Conversation

@veralizeth

Copy link
Copy Markdown
Contributor

Summary

Add five MCP tools to create, update, delete, list, and get GitHub issue artifacts, gated behind issue_artifacts.

Why

Enable agents to manage issue-attached plans, instructions, references, and other Markdown artifacts. No linked issue.

What changed

  • Register artifact tools in the issues toolset behind an explicit, default-off feature flag.
  • Add typed inputs/results, partial updates, pagination, validation, tests, and feature documentation.

MCP impact

  • No tool or API changes
  • Tool schema or behavior changed
  • New tool added — create_issue_artifact, update_issue_artifact, delete_issue_artifact, list_issue_artifacts, and get_issue_artifact. Read-only mode exposes only list/get.

Prompts tested (tool changes only)

  • “Create a plan artifact on this issue.” — attach an implementation plan.
  • “List the artifacts on this issue.” — retrieve attached artifacts.
  • “Get this artifact.” — read its metadata and body.
  • “Update this artifact’s name and body.” — revise an existing artifact.
  • “Delete this artifact.” — remove it from the issue.

Security / limits

  • No security or limits impact
  • Auth / permissions considered — uses the configured authenticated client; the flag does not grant API access. Endpoint access requirements remain unverified.
  • Data exposure, filtering, or token/size limits considered — sanitizes names/bodies, caps pages at 100, and disables all five tools in lockdown mode.

Tool renaming

  • I am renaming tools as part of this PR (e.g. a part of a consolidation effort)
    • I have added the new tool aliases in deprecated_tool_aliases.go
  • I am not renaming tools as part of this PR — adds new tools only.

Note: if you're renaming tools, you must add the tool aliases. For more information on how to do so, please refer to the official docs.

Lint & tests

  • Linted locally with ./script/lint — failed on two maps.Copy findings.
  • Tested locally with ./script/test — failed on artifact metadata/schema assertions and a nil-client panic.

Passed: go test ./pkg/github -run '^TestIssueArtifact(Requests|Failures)$' -count=1.

Docs

  • Not needed
  • Updated (README / docs / examples) — documented opt-in, behavior, and restrictions in docs/feature-flags.md.

@veralizeth
veralizeth requested a review from a team as a code owner October 22, 2026 22:48
Copilot AI max review requested due to automatic review settings October 22, 2026 22:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Provider-incompatible schema constraints and known CI failures still block merging.

6 open issues
What changed in this PR

Adds opt-in issue-artifact management to the GitHub MCP Server’s issues toolset.

Changes:

  • Adds five tools to create, update, delete, list, and retrieve issue artifacts.
  • Introduces typed inputs/results, pagination, sanitization, and read-only/lockdown restrictions.
  • Adds feature gating, behavioral tests, and opt-in documentation.
File Description
pkg/​github/​tools.go Registers the five artifact tools.
pkg/​github/​issue_artifacts.go Implements tool schemas, handlers, validation, and API requests.
pkg/​github/​issue_artifacts_test.go Adds metadata, feature-gating, request, and error-path tests.
pkg/​github/​issue_artifact_types.go Defines artifact data and typed inputs/results.
pkg/​github/​feature_flags.go Declares the issue_artifacts feature flag.
docs/​feature-flags.md Documents opt-in behavior and restrictions.

Review effort: Max

Comment thread pkg/github/issue_artifacts.go Outdated
Comment thread pkg/github/issue_artifacts.go
Comment thread pkg/github/issue_artifacts_test.go Outdated
Comment thread pkg/github/issue_artifacts_test.go Outdated
Comment thread pkg/github/issue_artifacts_test.go Outdated
Comment thread pkg/github/issue_artifacts_test.go
@veralizeth veralizeth changed the title Veralizeth/artifacts mcp tooling Add five MCP tools to create, update, delete, list, and get GitHub issue artifacts Oct 22, 2026
veralizeth and others added 2 commits October 22, 2026 23:30
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@AnonKhamsuk

Copy link
Copy Markdown

Ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants