projects_write

Add, update, or delete project items, or create status updates in a GitHub Project.

SERVERGitHub SOURCEoci:ghcr.io/github/github-mcp-server:1.3.0
Critical RISK CLASS
Category Destructive
Parameters 120 required
Recommended Hiddensee the rule below
Registry record Grade D, identity verified Pull the record →

This record as markdown: /tools/github/projects-write.md

What projects_write does on GitHub

AI agents call projects_write to permanently remove resources in GitHub, typically in cleanup and lifecycle workflows. It does its job in a single call, and there is no undo.

ParameterTypeRequiredDescription
body string The body of the status update (markdown). Used for 'create_project_status_update' method.
owner string The project owner (user or organization login). The name is not case sensitive.
method string The method to execute
status string The status of the project. Used for 'create_project_status_update' method.
item_id number The project item ID. Required for 'update_project_item' and 'delete_project_item' methods.
item_repo string The name of the repository containing the issue or pull request. Required for 'add_project_item' method.
item_type string The item's type, either issue or pull_request. Required for 'add_project_item' method.
item_owner string The owner (user or organization) of the repository containing the issue or pull request. Required for 'add_project_item' method.
owner_type string Owner type (user or org). If not provided, will be automatically detected.
start_date string The start date of the status update in YYYY-MM-DD format. Used for 'create_project_status_update' method.
target_date string The target date of the status update in YYYY-MM-DD format. Used for 'create_project_status_update' method.
issue_number number The issue number (use when item_type is 'issue' for 'add_project_item' method). Provide either issue_number or pull_request_number.

Parameters from the server's own tool schema.

Why projects_write is rated Critical

The tool explicitly supports 'delete project items', which is an irreversible destructive operation. Per the rules, when a tool spans categories, the most severe applies — Destructive takes precedence over Write. Misuse could remove project tracking data across an organization's GitHub Projects.

From the tool's definition Add, update, or delete project items, or create status updates in a GitHub Project.

Risk signalsAccepts raw HTML/template content (body) · High parameter count (15 properties)

Questions about projects_write

What does the projects_write tool do? +

Add, update, or delete project items, or create status updates in a GitHub Project. It is categorised as a Destructive tool in the GitHub MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

What parameters does projects_write accept? +

projects_write accepts 12 parameters: body, owner, method, status, item_id, item_repo, item_type, item_owner, owner_type, start_date, target_date, issue_number. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on projects_write? +

Register the GitHub MCP server in PolicyLayer and add a rule for projects_write: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches GitHub. Nothing to install.

What risk level is projects_write? +

projects_write is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit projects_write? +

Yes. Add a rate_limit block to the projects_write rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block projects_write completely? +

Set action: deny in the PolicyLayer policy for projects_write. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides projects_write? +

projects_write is provided by the GitHub MCP server (oci:ghcr.io/github/github-mcp-server:1.3.0). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

More on GitHub, and thousands of servers like it.

// THE MCP REGISTRY

PolicyLayer tracks 44,603 MCP servers and 515,000+ tools.

Every server has a live record: who publishes it, whether it answers without auth, its risk grade, every tool classified, the recommended policy. This page is one line of GitHub's. Pull the full record:

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.