5.3-b Write tools, non-destructive (phase 2)
- Dominant language
- JavaScript
- Stars
- 400
- Forks
- 89
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 149
Description
**Parent:** #7672 (5.3 Application management)
**Tool file:** `forge/ee/lib/mcp/tools/applications.js` (extend)
`readOnlyHint: false`, `destructiveHint: false`.
| Tool | Endpoint | Scope | Annotation |
|---|---|---|---|
| `platform_update_application` | `PUT /applications/:applicationId` | `project:edit` | write |
**Design notes:**
- Application CRUD reuses `project:*` scopes (`project:create`/`project:edit`/`project:delete`, `project:read`), not `application:*`.
- `create_application` already ships and evaluates `project:create` against `body.teamId`'s team.
**Tool definitions (description + zod inputSchema):**
```js
platform_update_application: {
description: 'Update an application name and/or description.',
inputSchema: z.object({
applicationId: z.string().describe('Application id (opaque hashid) to update'),
name: z.string().optional().describe('New application name'),
description: z.string().optional().describe('New application description')
})
}
```
**Tests:**
- Update rejected for read-only PAT.
---
Contributor guide
Assessment
This issue has not been assessed yet.