Skip to main content

Overview

When something doesn’t work as expected, neither users nor models have a way to tell you. User Feedback adds a send_feedback tool to your MCP server so both the model and the user can report issues and send you feedback.
User Feedback dashboard
The @alpic-ai/insights (TypeScript) and alpic-ai-insights (Python SDK) packages inject the feedback tool into your server’s tool list. Alpic stores the feedback for you to explore in the dashboard.

1. Install the package

bash pnpm add @alpic-ai/insights

2. Wire it into your server

Choose the entry point for your language and MCP framework.
Use feedbackMiddleware, it returns a Skybridge McpMiddlewareFn you register via mcpMiddleware(). Add it before your tool/widget registrations:
The FastMCP example above uses the class bundled with the official MCP Python SDK (mcp.server.fastmcp.FastMCP), not the separate fastmcp package. The middleware adds a send_feedback tool to your server at runtime. It is handled entirely by the middleware; you don’t need to register it yourself.

3. How the LLM uses it

The tool instructs the LLM to:
  • Use it only for feedback about your MCP server, not about other MCP servers.
  • Call it autonomously when it detects a genuine issue (e.g. a tool that failed unexpectedly, an unhelpful response, a missing capability). No explicit user consent required.
  • Strip any Personally Identifiable Information from the content before sending.
The tool accepts two arguments:

4. Deploy

Deploy on Alpic as usual. Once the new version is live on the production environment, feedback starts flowing in.

5. View feedback in the dashboard

In the Alpic dashboard, open your project and click the Insights tab, then Feedbacks. Each entry shows:
  • Content: what the feedback says
  • Source: whether it was sent by the user or the model autonomously
  • Date: when it was submitted

Optional: run a custom handler alongside Alpic

Pass a handler to run your own logic (e.g. forwarding to Slack or your own analytics) on every captured feedback. The handler runs in addition to Alpic’s dashboard delivery (feedback still appears in the Feedbacks page) and executes inside your MCP server process:

Combining with User Intents

feedbackMiddleware/captureFeedback and intentMiddleware/captureIntents are independent and can be used together:
intentMiddleware/captureIntents and capture_intents automatically skip the send_feedback tool so they don’t inject a user_intent field into the feedback tool’s schema.