Filika: WebMCP feedback infrastructure for modern web applications
Inspiration
Website problems are often discovered in the moment but never reach the people who can fix them. A customer may get stuck in checkout, an employee may be unable to complete a task, or an agent may encounter confusing behavior while helping someone. Turning that experience into an actionable report usually requires leaving the task, finding a support channel, and manually reconstructing what happened.
Filika makes that handoff part of the browsing experience.
What it does
Filika is a WebMCP-native feedback system for web applications. A website registers the static filika_submit_feedback tool with document.modelContext. When a browser agent encounters an observed bug, blocked task, confusing behavior, or concrete product idea, it can submit a structured report containing a title, description, expected behavior, and reproduction steps.
The report is delivered to a maintainer workspace where teams can review, search, filter, and export it to GitHub.
Why WebMCP matters
Without WebMCP, an agent has no reliable, structured way to hand an observed problem back to the product team. It would need to guess its way through a website's support UI, generate an unstructured message, or stop at a conversational summary.
With Filika, the website intentionally exposes one narrowly scoped feedback capability. The agent can act at the moment it sees the problem, while the product team receives feedback in a consistent format that is ready for triage.
This creates a better experience for both sides: people and agents can continue working instead of filing a separate ticket, and maintainers receive clearer reports with reproducible context rather than vague descriptions.
How we built it
Filika is a TypeScript monorepo built with Bun, Next.js, React, PostgreSQL, and Drizzle.
The browser SDK uses document.modelContext.registerTool() to register the static filika_submit_feedback WebMCP tool. Its closed JSON schema accepts only bounded, structured feedback fields. The collector API validates every request, verifies the configured website origin, limits payload size and timeouts, detects duplicates using idempotency keys, and stores accepted reports in PostgreSQL.
The maintainer workspace lets teams create applications, configure allowed origins, install the generated SDK snippet, inspect incoming feedback, and export approved reports to GitHub issues. A public demo storefront includes intentional failures so judges can test the WebMCP flow themselves.
Privacy and safety
Filika deliberately does not collect ambient page content, browser history, screenshots, cookies, local storage, or credentials. Tool metadata is static, input schemas reject unknown fields, and browser or collector data is treated as untrusted until validated.
Demo
Open the demo, ask a WebMCP-enabled browser agent to complete the sample shopping task, let it encounter the intentional failure, and ask it to submit feedback with Filika. Then open the workspace to see the submitted report and its reproduction steps.
Built With
- betterauth
- biome
- bun
- docker
- drizzle
- monorepo
- next.js
- playwright
- postgresql
- react
- resend
- tailwind
- typescript
- webmcp
Log in or sign up for Devpost to join the conversation.