loading…
Search for a command to run...
loading…
# 🔥 Firebase Crashlytics MCP Server [](https://opensource.org/licenses/MIT) [ GOOGLE_SERVICE_ACCOUNT_KEY=/path/to/your-service-account.json # OR base64-encoded: GOOGLE_SERVICE_ACCOUNT_KEY=eyJhbGciOiJIUzI1... # Your Firebase project settings BIGQUERY_PROJECT_ID=your-firebase-project-id BIGQUERY_DATASET_ID=firebase_crashlytics # Optional: Default limit for crash queries DEFAULT_CRASH_LIMIT=10 ### Setup Firebase & BigQuery 1. Enable Crashlytics BigQuery Export: - Go to Firebase Console → Project Settings → Integrations - Enable BigQuery integration for Crashlytics - Data will be exported to firebase_crashlytics dataset 2. Create Service Account: - Go to Google Cloud Console - Navigate to IAM & Admin → Service Accounts - Create service account with these roles: - BigQuery Data Viewer - BigQuery Job User - Download JSON key file ### Register with AI Agents #### Claude Code bash # Register the MCP server claude mcp add crashlytics -- node /path/to/mcp-crashlytics-server/dist/index.js # Verify it's working claude mcp list #### Cursor Add to your .cursorrules or cursor settings: json { "mcpServers": { "crashlytics": { "command": "node", "args": ["/path/to/mcp-crashlytics-server/dist/index.js"], "env": { "GOOGLE_SERVICE_ACCOUNT_KEY": "/path/to/your-service-account.json", "BIGQUERY_PROJECT_ID": "your-firebase-project-id", "BIGQUERY_DATASET_ID": "firebase_crashlytics" } } } } #### Windsurf Add to your Windsurf settings or .windsurfrules: json { "mcp": { "servers": { "crashlytics": { "command": "node", "args": ["/path/to/mcp-crashlytics-server/dist/index.js"], "env": { "GOOGLE_SERVICE_ACCOUNT_KEY": "/path/to/your-service-account.json", "BIGQUERY_PROJECT_ID": "your-firebase-project-id", "BIGQUERY_DATASET_ID": "firebase_crashlytics" } } } } } #### Other MCP-Compatible IDEs For other MCP-compatible tools, add this server configuration: - Command: node - Args: ["/path/to/mcp-crashlytics-server/dist/index.js"] - Environment Variables: Same as above (.env file values) ## 🛠️ Available Tools ### 1. list_available_apps Discover all apps in your Firebase Crashlytics dataset. - Parameters: None - Returns: List of apps with crash counts javascript // Usage in Claude Code/Cursor "What apps are available in my crashlytics data?" ### 2. get_fatal_crashes Get fatal crashes for a specific app. - Parameters: - app_package (required): App package name (e.g., "com.example.myapp") - limit (optional): Number of crashes (1-50, default: 10) javascript // Usage in Claude Code/Cursor "Get the 10 most recent fatal crashes for com.example.myapp" ### 3. get_anr_issues Get ANR (Application Not Responding) issues for a specific app. - Parameters: - app_package (required): App package name - limit (optional): Number of issues (1-50, default: 10) javascript // Usage in Claude Code/Cursor "Show me ANR issues for com.example.myapp, limit to 5" ## 📋 Example Usage Once set up, you can ask Claude Code natural questions like: bash # Discover your apps "What apps do I have crash data for?" # Get fatal crashes "Show me the latest fatal crashes for my Android app" "Get 5 fatal crashes for com.mycompany.myapp" # Analyze ANR issues "What ANR issues does my app have?" "Show ANR problems for com.mycompany.myapp from the last week" ## 🏗️ Project Structure mcp-crashlytics-server/ ├── src/ │ ├── index.ts # Main MCP server │ ├── bigquery-client.ts # BigQuery integration │ ├── crash-processor.ts # Crash data processing │ ├── impact-analyzer.ts # Impact analysis │ └── types.ts # TypeScript definitions ├── dist/ # Built JavaScript files ├── package.json ├── tsconfig.json ├── .env.example # Environment template └── README.md ## 🔧 Development ### Running in Development Mode bash npm run dev ### Building bash npm run build ### Linting bash npm run lint ### Testing bash npm test ## 🐛 Troubleshooting ### Common Issues 1. "No MCP servers configured" - Make sure to register the server: claude mcp add crashlytics -- node /path/to/dist/index.js - Restart Claude Code/Cursor IDE 2. "Authentication Failed" - Verify service account JSON file path is correct - Ensure service account has BigQuery permissions - Check project ID matches your Firebase project 3. "No crashes returned" - Confirm Crashlytics BigQuery export is enabled - Wait 24-48 hours for initial data export - Verify your app is actually sending crash data 4. "Table not found" - Check that BIGQUERY_DATASET_ID is correct (usually firebase_crashlytics) - Ensure crashes exist in your Firebase project - Verify BigQuery export is working in Firebase Console ### Debug Mode Enable verbose logging: bash DEBUG=mcp-crashlytics-server npm start ## 🤝 Contributing 1. Fork the repository 2. Create a feature branch (git checkout -b feature/amazing-feature) 3. Make your changes 4. Add tests for new functionality 5. Commit your changes (git commit -m 'Add amazing feature') 6. Push to the branch (git push origin feature/amazing-feature) 7. Open a Pull Request ## 📄 License This project is licensed under the MIT License - see the LICENSE file for details. ## 🔒 Security Considerations - ⚠️ Never expose service account credentials in logs or version control - 🔐 Use least-privilege permissions for service accounts - 🔑 Store credentials securely using environment variables - 🚫 Add .env to .gitignore (already included) ## 📚 Resources - Model Context Protocol Documentation - Claude Code Documentation - Firebase Crashlytics - BigQuery Documentation ## 💡 Need Help? - 🐛 Found a bug? Open an issue - 💬 Have questions? Start a discussion - 🚀 Want a feature? Request it here --- Made with ❤️ for the MCP communitySmithery CLI connects your agents to thousands of skills and MCP servers directly from the command line. To get started, simply run npx skills add smithery/cli.
npm install -g smithery@latest
Requires Node.js 20+.
smithery mcp search [term] # Search the Smithery registry
smithery mcp add <url> # Add an MCP server connection
smithery mcp list # List your connections
smithery mcp remove <ids...> # Remove connections
Interact with tools from MCP servers connected via smithery mcp.
smithery tool list [connection] # List tools from your connected MCP servers
smithery tool find [query] # Search tools by name or intent
smithery tool get <connection> <tool> # Show full details for one tool
smithery tool call <connection> <tool> [args] # Call a tool
Browse skills on the Smithery Skills Registry and install them with the upstream installer:
npx skills add <skill> # e.g. npx skills add smithery-ai/cli
smithery auth login # Login with Smithery (OAuth)
smithery auth logout # Log out
smithery auth whoami # Check current user
smithery auth token # Mint a service token
smithery auth token --policy '<json>' # Mint a restricted token
smithery namespace list # List your namespaces
smithery namespace use <name> # Set current namespace
smithery mcp publish <url> -n <org/server> # Publish an MCP server URL
smithery mcp publish <bundle.mcpb> -n <org/server> # Publish an MCP bundle
# Search and connect to an MCP server
smithery mcp search "github"
smithery mcp add github --id github
# Find and call tools from your connected MCP servers
smithery tool find "create issue"
smithery tool call github create_issue '{"title":"Bug fix","body":"..."}'
# Browse and install skills
smithery skill search "frontend" --json --page 2
smithery skill add anthropics/frontend-design --agent claude-code
# Publish your MCP server URL
smithery mcp publish https://my-mcp-server.com -n myorg/my-server
# Publish a built MCP bundle
smithery mcp publish ./server.mcpb -n myorg/my-server
git clone https://github.com/smithery-ai/cli
cd cli && pnpm install && pnpm run build
npx . --help
Contributions welcome! Please submit a Pull Request.
Выполни в терминале:
claude mcp add mcp-crashlytics-server -- npx -y @smithery/cli run tjdam007/mcp-crashlytics-serverQuery your database in natural language
автор: AnthropicA universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim
автор: wenb1n-devRead-only database access with schema inspection.
автор: modelcontextprotocolInteract with Redis key-value stores.
автор: modelcontextprotocolНе уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории data