FeedbackServer
Supports Apple app project integration during FeedbackKit setup by requiring an explicit project/file target and approval before editing the app, then verifying the SDK integration with a focused build.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FeedbackServerinvite a new admin with 7-day expiry"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FeedbackKit Agent Plugin 2.0
This Plugin repository is retired and read-only. FeedbackKit is now distributed as a Skill plus
its hosted MCP server. Install the Skill fromhttps://api.feedkit.cn/skills/feedback-server.tar.gz and connect the host to
https://api.feedkit.cn/mcp. New invitation emails contain both values. Existing Plugin caches
are not removed automatically, but they no longer receive updates from this repository.
FeedbackKit connects Codex and Claude Code to the hosted FeedbackServer 2.0 MCP for Product setup, feedback triage, waitlists, roadmaps, Releases, notifications, analytics, and account administration. This is a 2.0-only, runtime-free plugin: it ships Skills and remote MCP metadata, not a local server, CLI, Bun dependency, token store, or JavaScript bundle.
Install
Codex:
codex plugin marketplace add Rabithua/FeedbackServerPlugin --ref main
codex plugin add feedback-server@feedback-serverClaude Code:
claude plugin marketplace add Rabithua/FeedbackServerPlugin
claude plugin install feedback-server@feedback-server --scope userBoth hosts connect to https://api.feedkit.cn/mcp over Streamable HTTP. Business tools require an
OAuth access token; only the OAuth discovery metadata and browser sign-in surface are public.
Related MCP server: mcp-gateway-mcp
Browser OAuth and magic-link sign-in
Call whoami as the first protected tool. If the host is not connected, that call starts its OAuth
2.1 authorization-code flow and FeedbackServer uses Better Auth to open the FeedbackKit login page.
Enter the account email in that browser, open the
one-time sign-in link delivered to the same inbox, return to the browser flow, and approve the
requested access. Never paste the emailed link or an OAuth token into the Agent conversation.
An invitation gives the Agent only these setup values:
mcp_server: https://api.feedkit.cn/mcp
account_email: person@example.comThe Agent connects to mcp_server; the user signs in as account_email in the browser. A live
invitation for that address is applied during first sign-in. There is no separate Agent-side account
linking step. When the host reports that OAuth completed, the Agent calls whoami and verifies the
returned email before doing any Product work.
Product setup
After whoami, the Agent calls list_products:
If there are no Products, it asks for the App name, platform, default locale, and an explicit notification choice (
bark,webhook, ordeferred), derives a readable slug, and callscreate_productwith that choice innotificationSetupPreference.If there is one Product, it confirms that Product is the requested target and reads its current settings. If there are several, it asks the user to select one and never guesses an ID.
If a Product still has
notificationSetupPreference: "unresolved", it collects the missing choice and saves it withset_notification_setup_preferencebefore claiming onboarding is complete.Bark and webhook choices continue through the matching notification tools. Apple project changes require an explicit project/file target and approval before the Agent edits the App, then a focused build verifies the SDK integration.
The plugin does not use a separate onboarding-status tool. Current identity, Product records, subscription limits, and notification configuration are the source of truth.
Confirmation contract
An explicit request to change a Feedback record's status or visibility, or to send a specified
Feedback reply, authorizes that exact update_feedback or reply_to_feedback call without another
chat confirmation. Read-only review, drafting, planning, and previewing do not authorize a write.
Other tools marked as risky use the FeedbackServer 2.0 contract:
Prefer the MCP client's native elicitation prompt.
If the client cannot elicit, the first call returns
confirmation_required. Show the exact target, visible or external effect, and any redacted secret handling, then wait for explicit approval.Repeat the same tool with the same arguments plus
confirm: true. Never substitute another tool or change the payload during the confirmed retry.
Do not use confirmation tickets or identifiers. Do not retry a declined, failed, or stale mutation automatically; reread current state and obtain fresh approval when the proposed effect changes.
Security model
OAuth credentials, magic links, sessions, API keys, Bark device keys, and webhook signing secrets never belong in Agent output, repository files, commands, logs, or summaries.
Resolve Product and entity IDs with list/get tools before mutation. Never infer ownership or subscription access.
Private feedback context, internal notes, diagnostic artifacts, and waitlist email addresses remain private unless the user's task specifically requires them.
Other tool-marked public-content, destructive, account-access, key, and external-delivery operations follow the v2 confirmation contract above.
See English invitation onboarding, 中文邀请接入说明, and generic remote MCP configuration.
Validate
No package installation or local runtime is required:
npm run check
python3 /path/to/plugin-creator/scripts/validate_plugin.py plugins/feedback-server
python3 /path/to/skill-creator/scripts/quick_validate.py plugins/feedback-server/skills/setup-feedback-server
claude plugin validate --strict .The distribution validator checks every manifest version, every skill and eval, the v2 setup and confirmation vocabulary, and the absence of retired setup/tool guidance. The sensitive-content scan also rejects committed personal access tokens, browser sessions, bearer JWTs, and live magic links.
The Codex .app.json will be added only after OpenAI assigns a production connector ID. Until then,
Codex and Claude Code use the checked remote HTTP MCP descriptor.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
MCP server for mandates, delegation, policy-gated execution, credential grants, and audit.
MCP server for Product Management
Remote MCP server for managing Muninx tickets, messages, ticket search, and support analytics.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP server for Open Feedback, enabling AI assistants to submit, list, get, update status of, and analyze product feedback via a local HTTP API and JSONL storage.346 npmApache 2.0
- FlicenseNot gradedqualityBmaintenanceAdmin MCP server that exposes Kubernetes CRD state and live broker status as MCP tools and a browser-renderable UI resource, enabling platform engineers to manage the mcp-gateway without kubectl.-
- AlicenseAqualityAmaintenanceMCP server for reading public Featurebase feedback boards, enabling agents to query user feedback, posts, comments, and statistics.710 npm1MIT
- AlicenseAqualityDmaintenanceEnables AI-assisted user feedback collection and management via a web interface, with MCP integration for automated replies and tool execution.121 npmMIT