FlowFuse / FlowFuse/flowfuse

5.3-b Write tools, non-destructive (phase 2)

Open
#7,691 0 comments 0 reactions 1 assignee Claimed by @andypalmi View on GitHub
story
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.