bugfender-mcp
Bugfender MCP server for read access to logs, devices, crashes, and issues, with automatic token refresh.
README
@bugfender/mcp
Bugfender MCP server for local stdio clients such as Cursor, Claude Code, Codex, and Gemini CLI.
What It Provides
- user-scoped Bugfender read access through MCP
- automatic access-token refresh when a refresh token is configured
- logs, devices, app metadata, crash aggregation, and issue aggregation tools
- SDK snippet retrieval for app onboarding
- resource templates for snippets, logs, and issue groups
- companion Bugfender skills distributed from
bugfender/bugfender-skills
Maintainers
- development workflow: DEVELOPMENT.md
- release and publish flow: RELEASING.md
Install
npx -y @bugfender/mcp
After adding or updating the MCP server in your IDE or agent, restart that client so it reloads the new MCP configuration cleanly.
If you are running from inside this repository checkout, do not use npx @bugfender/mcp or npx -p @bugfender/mcp bugfender-mcp. npm can resolve the current package instead of the published tarball and fail with bugfender-mcp: not found.
For local development, build and run the generated entrypoint directly:
pnpm build
pnpm start
Configuration
BUGFENDER_API_TOKEN: required access tokenBUGFENDER_REFRESH_TOKEN: recommended for automatic token refreshBUGFENDER_API_URL: optional override, defaults tohttps://dashboard.bugfender.com/api~/.bugfender/mcp.json: optional config file and local token store for rotated credentials
{
"default": {
"apiToken": "YOUR_ACCESS_TOKEN",
"refreshToken": "YOUR_REFRESH_TOKEN",
"apiUrl": "https://dashboard.bugfender.com/api"
}
}
When a refresh token is provided, the MCP stores rotated credentials in ~/.bugfender/mcp.json so automatic refresh survives restarts. Updating the IDE config with a newly generated refresh token resets that local state.
If you are using local or self-hosted Bugfender credentials, BUGFENDER_API_URL must point to the matching backend. For example, local credentials generated from https://dashboard:3000 will not work against https://dashboard.bugfender.com/api.
Cursor / Claude Code
{
"mcpServers": {
"bugfender": {
"command": "npx",
"args": ["-y", "@bugfender/mcp"],
"env": {
"BUGFENDER_API_TOKEN": "YOUR_ACCESS_TOKEN",
"BUGFENDER_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN",
"BUGFENDER_API_URL": "https://dashboard.bugfender.com/api"
}
}
}
}
Codex CLI
codex mcp add bugfender \
--env BUGFENDER_API_TOKEN='YOUR_ACCESS_TOKEN' \
--env BUGFENDER_REFRESH_TOKEN='YOUR_REFRESH_TOKEN' \
--env BUGFENDER_API_URL='https://dashboard.bugfender.com/api' \
-- npx -y @bugfender/mcp
After running codex mcp add, restart the Codex session before testing who_am_i or list_apps.
Gemini CLI
gemini mcp add bugfender npx -y @bugfender/mcp \
--env BUGFENDER_API_TOKEN='YOUR_ACCESS_TOKEN' \
--env BUGFENDER_REFRESH_TOKEN='YOUR_REFRESH_TOKEN' \
--env BUGFENDER_API_URL='https://dashboard.bugfender.com/api'
After running gemini mcp add, start a new Gemini CLI session or reload MCP servers before testing who_am_i or list_apps.
Codex App
In the custom MCP server form:
Name:bugfenderCommand to launch:npxArgument 1:-yArgument 2:@bugfender/mcpBUGFENDER_API_TOKEN:YOUR_ACCESS_TOKENBUGFENDER_REFRESH_TOKEN:YOUR_REFRESH_TOKENBUGFENDER_API_URL:https://dashboard.bugfender.com/api
Add the arguments as separate rows, not as one combined string.
After saving the server, restart the app before testing who_am_i or list_apps.
Tools
who_am_ilist_teamslist_appsget_applist_app_versionsget_sdk_snippetget_crashesget_crash_statsget_crash_device_statsget_crash_detailssearch_logscount_logscount_devices_with_logsget_network_aggregatesget_network_detailssearch_devicescount_deviceslist_issuesget_issueupdate_issue_statusget_issue_statsget_issue_device_statsget_issue_devicesget_feedbackget_app_summary
Resources
bugfender://snippet/{app_id}/{platform}bugfender://app/{app_id}/logs?...bugfender://issue/{issue_id}?app_id={app_id}
Companion Skills
The companion skills now live in the separate bugfender/bugfender-skills repository. They encode opinionated workflows on top of the MCP tools:
- use aggregation before logs
- narrow time ranges early
- size impact before deep-diving
- end with a short triage summary
The MCP package gives the agent raw Bugfender capabilities. The skill adds an opinionated investigation workflow on top of those capabilities.
Use the skill when you want Cursor, Codex, or Claude Code to do things like:
- help set up the Bugfender SDK in an app with the minimum required steps
- fetch the SDK snippet for a platform and explain exactly where it goes
- investigate the top crashes in an app
- summarize issue or feedback trends over a time range
- compare impact before and after an app version
- identify likely cause, scope, and next checks
The investigation skill source lives in:
https://github.com/bugfender/bugfender-skills/tree/main/skills/bugfender
SDK Setup Skill
The dedicated onboarding skill also lives in bugfender/bugfender-skills.
Use it when you want Cursor, Codex, or Claude Code to:
- detect the project platform automatically
- fetch the correct Bugfender SDK snippet
- map the setup to the real repository files
- ask one short feature question when optional capabilities like crash reporting or Android logcat matter
- apply the minimum integration changes
- reduce the developer’s work to one final verification step
It also includes platform-specific references for:
- iOS
- Android
- Flutter
- Unity
- .NET MAUI
- Cordova
- Ionic
- Angular
- React
- Vue
- JavaScript
- jQuery
- Titanium
- Web
- React Native
The skill source lives in:
https://github.com/bugfender/bugfender-skills/tree/main/skills/bugfender-sdk-setup
Install Skills In Cursor, Codex, Or Claude Code
Cursor, Codex, and Claude Code can install the skills directly from GitHub without cloning the repo manually.
In the agent chat inside your IDE, run this prompt with the built-in installer skill:
Use $skill-installer to install these skills from https://github.com/bugfender/bugfender-skills:
- skills/bugfender
- skills/bugfender-sdk-setup
After installation, restart the client and use:
Use $bugfender-sdk-setup to set up Bugfender in this app with the minimum required changes.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。