Skip to content

feat(forms): expose management operations as MCP tools - #2229

Open
jcheese1 wants to merge 2 commits into
emdash-cms:mainfrom
jcheese1:codex/forms-mcp-tools-pr
Open

feat(forms): expose management operations as MCP tools#2229
jcheese1 wants to merge 2 commits into
emdash-cms:mainfrom
jcheese1:codex/forms-mcp-tools-pr

Conversation

@jcheese1

@jcheese1 jcheese1 commented Jul 25, 2026

Copy link
Copy Markdown
Contributor

What does this PR do?

Exposes all 10 authenticated forms-management operations as plugin-declared MCP tools:

  • create, list, update, duplicate, and delete forms
  • list, get, update, delete, and export submissions

Each backing route now explicitly requires plugins:manage, so MCP invocation follows the same admin authorization boundary as direct API access. The forms plugin now requires EmDash 0.30.0 or newer, where plugin-declared MCP tools became available.

Type of change

  • Bug fix
  • Feature (requires maintainer-approved Discussion)
  • Refactor (no behavior change)
  • Translation
  • Documentation
  • Performance improvement
  • Tests
  • Chore (dependencies, CI, tooling)

Checklist

  • I have read CONTRIBUTING.md
  • pnpm typecheck passes
  • pnpm lint passes
  • pnpm test passes (or targeted tests for my change)
  • pnpm format has been run
  • I have added/updated tests for my changes (if applicable)
  • User-visible strings in the admin UI are wrapped for translation (if applicable). Do not include messages.po changes except in translation PRs — a workflow extracts catalogs on merge to main.
  • I have added a changeset (if this PR changes a published package)
  • New features link to an approved Discussion: RFC: Let plugins explicitly declare MCP tools #1587

AI-generated code disclosure

  • This PR includes AI-generated code — model/tool: OpenAI Codex (GPT-5)

Screenshots / test output

No visual changes.

  • pnpm lint:quick
  • pnpm lint
  • pnpm typecheck
  • pnpm --filter @emdash-cms/plugin-forms test — 3 files and 19 tests passed
  • pnpm format

@changeset-bot

changeset-bot Bot commented Jul 25, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: db72397

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 5 packages
Name Type
@emdash-cms/plugin-forms Minor
@emdash-cms/perf-demo-site Patch
@emdash-cms/cache-demo-site Patch
@emdash-cms/do-demo-site Patch
@emdash-cms/do-solo-demo-site Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions Bot added query-count changed PR diff modifies query-count snapshot files area/plugins size/M labels Jul 25, 2026
@jcheese1
jcheese1 marked this pull request as ready for review July 25, 2026 00:05
@github-actions github-actions Bot added review/needs-review No maintainer or bot review yet query-count changed PR diff modifies query-count snapshot files and removed query-count changed PR diff modifies query-count snapshot files labels Jul 25, 2026
@pkg-pr-new

pkg-pr-new Bot commented Jul 25, 2026

Copy link
Copy Markdown

Open in StackBlitz

@emdash-cms/admin

npm i https://pkg.pr.new/@emdash-cms/admin@2229

@emdash-cms/auth

npm i https://pkg.pr.new/@emdash-cms/auth@2229

@emdash-cms/auth-atproto

npm i https://pkg.pr.new/@emdash-cms/auth-atproto@2229

@emdash-cms/blocks

npm i https://pkg.pr.new/@emdash-cms/blocks@2229

@emdash-cms/cloudflare

npm i https://pkg.pr.new/@emdash-cms/cloudflare@2229

@emdash-cms/contentful-to-portable-text

npm i https://pkg.pr.new/@emdash-cms/contentful-to-portable-text@2229

emdash

npm i https://pkg.pr.new/emdash@2229

create-emdash

npm i https://pkg.pr.new/create-emdash@2229

@emdash-cms/gutenberg-to-portable-text

npm i https://pkg.pr.new/@emdash-cms/gutenberg-to-portable-text@2229

@emdash-cms/plugin-cli

npm i https://pkg.pr.new/@emdash-cms/plugin-cli@2229

@emdash-cms/plugin-types

npm i https://pkg.pr.new/@emdash-cms/plugin-types@2229

@emdash-cms/registry-client

npm i https://pkg.pr.new/@emdash-cms/registry-client@2229

@emdash-cms/registry-lexicons

npm i https://pkg.pr.new/@emdash-cms/registry-lexicons@2229

@emdash-cms/registry-verification

npm i https://pkg.pr.new/@emdash-cms/registry-verification@2229

@emdash-cms/sandbox-workerd

npm i https://pkg.pr.new/@emdash-cms/sandbox-workerd@2229

@emdash-cms/x402

npm i https://pkg.pr.new/@emdash-cms/x402@2229

@emdash-cms/plugin-ai-moderation

npm i https://pkg.pr.new/@emdash-cms/plugin-ai-moderation@2229

@emdash-cms/plugin-atproto

npm i https://pkg.pr.new/@emdash-cms/plugin-atproto@2229

@emdash-cms/plugin-audit-log

npm i https://pkg.pr.new/@emdash-cms/plugin-audit-log@2229

@emdash-cms/plugin-color

npm i https://pkg.pr.new/@emdash-cms/plugin-color@2229

@emdash-cms/plugin-embeds

npm i https://pkg.pr.new/@emdash-cms/plugin-embeds@2229

@emdash-cms/plugin-field-kit

npm i https://pkg.pr.new/@emdash-cms/plugin-field-kit@2229

@emdash-cms/plugin-forms

npm i https://pkg.pr.new/@emdash-cms/plugin-forms@2229

@emdash-cms/plugin-webhook-notifier

npm i https://pkg.pr.new/@emdash-cms/plugin-webhook-notifier@2229

commit: db72397

@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

This PR has been inactive for 14 days. It will be closed automatically in 7 days if there is no further activity.

If you're still working on this, please push an update or leave a comment.

@github-actions github-actions Bot added stale and removed stale labels Aug 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/plugins query-count changed PR diff modifies query-count snapshot files review/needs-review No maintainer or bot review yet size/M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant