Claude Code incontra BugToMe
La prima integrazione nativa MCP per bug tracking. Gestisci i bug direttamente da Claude Code nel tuo IDE.
Cos'e il Model Context Protocol?
Lo standard aperto per connettere AI e strumenti esterni
MCP (Model Context Protocol) e uno standard aperto sviluppato da Anthropic per connettere assistenti AI come Claude con strumenti e dati esterni. Permette a Claude Code di interagire direttamente con sistemi come BugToMe, leggendo e modificando dati in modo sicuro e controllato.
Architettura
Claude Code
Host / Client
MCP Protocol
JSON-RPC 2.0
BugToMe
MCP Server
Configurazione in 3 Step
Inizia a usare BugToMe con Claude Code in pochi minuti
Genera il tuo Bearer Token
Accedi al tuo account BugToMe e vai su Impostazioni → API Token. Genera un nuovo token e copialo in un posto sicuro.
Importante: Il token verra mostrato una sola volta. Conservalo in modo sicuro.
Configura Claude Code
Puoi configurare l'integrazione via CLI o modificando direttamente il file di configurazione.
A Metodo CLI
claude mcp add --transport http bugtome https://mcp.bugto.me \
--header "Authorization: Bearer YOUR_TOKEN"
B File di Configurazione
Crea o modifica il file .mcp.json nella root del tuo progetto:
{
"mcpServers": {
"bugtome": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.bugto.me"
],
"env": {
"BUGTOME_TOKEN": "your-api-token-here"
}
}
}
}
Inizia a usare Claude Code
Riavvia Claude Code e inizia a interagire con i tuoi bug. Claude avra accesso a tutti i tool BugToMe.
Pronto! Ora puoi chiedere a Claude cose come "mostrami i bug critici" o "aggiorna lo stato del bug #123".
Tool MCP Disponibili
15 tool per gestire completamente i tuoi bug da Claude Code
Contesto
2 toolGets complete workspace context in a single call: all organizations with their projects. Use this as an alternative to calling list_organizations then list_projects separately. Ideal for getting a quick overview of available workspaces before performing operations. No parameters required. Returns: Array of organizations, each with nested array of their active projects.
Parametri (0 richiesti, 1 opzionali)
include_ticket_counts
(boolean)
- Include open ticket count per project (default true). Set to false for faster response.
Lists all organizations the authenticated user has access to. Use this FIRST to get organization IDs needed by other tools. No parameters required. Returns: Array of organizations with id, name, slug, and your role in each.
Progetti
1 toolLists all active projects in an organization. Use this to get project IDs needed for creating tickets or filtering. Prerequisite: Call list_organizations first to get the organization_id. Requires: can_view_projects permission (all roles have this). Returns: Array of projects with id, name, slug, code, and open ticket count.
Parametri (1 richiesti, 0 opzionali)
organization_id*
(string)
- UUID of the organization. Example: '550e8400-e29b-41d4-a716-446655440000'
Ticket
6 toolLists tickets with optional filters for status, priority, project, and assignee. Use this to browse and filter tickets in an organization. Prerequisite: Call list_organizations first to get the organization_id. Visibility: Managers/developers see all tickets; operations see only their own. Returns: Array of tickets with pagination (default 50, max 100 results).
Parametri (1 richiesti, 6 opzionali)
organization_id*
(string)
- UUID of the organization. Get this from list_organizations.
project_id
(string)
- Filter by project UUID (optional). Get this from list_projects.
status
(string)
- Filter by status (optional). Values: open, triage, in_progress, closed.
priority
(string)
- Filter by priority (optional). Values: low, medium, high, critical.
assignee_id
(string)
- Filter by assignee UUID (optional). Get member IDs from organization.
limit
(integer)
- Max results (default 50, max 100).
offset
(integer)
- Number of results to skip for pagination (default 0). Use with limit to paginate through results.
Gets detailed information about a specific ticket including all comments. Use this when you need full ticket details like BDD description, comments history, or organization info. Prerequisite: Get ticket_id from list_tickets or search_tickets. Visibility: Operations can only view their own tickets. Returns: Full ticket with given/when/then fields, comments, reporter, assignee, and organization.
Parametri (1 richiesti, 0 opzionali)
ticket_id*
(string)
- UUID of the ticket. Get this from list_tickets or search_tickets.
Creates a new bug ticket using BDD format (Given-When-Then). Use this to report a bug with structured description of context, action, expected and actual behavior. Prerequisite: Call list_organizations then list_projects to get required IDs. Requires: manager or operation role (developers cannot create tickets). Returns: The created ticket with generated code (e.g., WEB-001).
Parametri (6 richiesti, 2 opzionali)
organization_id*
(string)
- UUID of the organization. Get this from list_organizations.
project_id*
(string)
- UUID of the project. Get this from list_projects.
given*
(string)
- BDD GIVEN: Initial context/state when the bug occurred. Example: 'User is logged in on the dashboard page with admin role'
when_action*
(string)
- BDD WHEN: Action performed that triggered the bug. Example: 'User clicks the Delete button on a user record'
then_expected*
(string)
- BDD THEN: Expected behavior that should have happened. Example: 'User record should be deleted and confirmation shown'
then_actual*
(string)
- BDD ACTUAL: What actually happened (the bug). Example: 'Error 500 Internal Server Error is displayed'
priority
(string)
- Ticket priority. Values: low, medium (default), high, critical.
story_points
(integer)
- Story points for effort estimation. Required if organization has sprints enabled. Common values: 1, 2, 3, 5, 8, 13.
Updates a ticket's status, priority, or assignee. Use this to progress a ticket through the workflow or reassign it. Prerequisite: Get ticket_id from list_tickets or search_tickets. Permissions: Status to triage/in_progress requires work permission; status to closed requires resolve permission. Status flow: open -> triage -> in_progress -> closed. To unassign, set assignee_id to empty string.
Parametri (1 richiesti, 3 opzionali)
ticket_id*
(string)
- UUID of the ticket. Get this from list_tickets or search_tickets.
status
(string)
- New status (optional). Flow: open -> triage -> in_progress -> closed.
priority
(string)
- New priority (optional). Values: low, medium, high, critical.
assignee_id
(string)
- UUID of the account to assign (optional). Set to empty string '' to unassign.
Adds a comment to a ticket for discussion or status updates. Use this to add notes, progress updates, or communicate with team members on a ticket. Prerequisite: Get ticket_id from list_tickets, search_tickets, or get_ticket. Any authenticated user with access to the ticket can add comments. Returns: The created comment with id, body, author, and timestamp.
Parametri (2 richiesti, 0 opzionali)
ticket_id*
(string)
- UUID of the ticket. Get this from list_tickets, search_tickets, or get_ticket.
body*
(string)
- Comment text. Example: 'Investigated the issue - root cause is in the payment gateway timeout settings.'
Full-text search across tickets in an organization. Use this to find tickets by keywords in their BDD description (given, when, then fields) or ticket code. Prerequisite: Call list_organizations first to get the organization_id. Optionally filter by project_id or status. Use before creating a ticket to check for duplicates. Returns: Matching tickets (default 20, max 50 results) with query and count.
Parametri (2 richiesti, 4 opzionali)
organization_id*
(string)
- UUID of the organization. Get this from list_organizations.
query*
(string)
- Search query. Searches in given, when_action, then_expected, then_actual, and ticket code. Example: 'login error' or 'WEB-001'.
project_id
(string)
- Limit search to specific project (optional). Get this from list_projects.
status
(string)
- Filter by status (optional). Values: open, triage, in_progress, closed.
limit
(integer)
- Max results (default 20, max 50).
offset
(integer)
- Number of results to skip for pagination (default 0).
Documentazione
1 toolSaves technical documentation generated by AI for a project. Use this after analyzing a codebase to store documentation sections (models, controllers, services, etc.). Prerequisite: Call list_organizations then list_projects to get required IDs. Sections: overview, models, controllers, services, views, jobs, tests, or 'full' for complete documentation. Requires: can_create_documentation permission (manager role). Returns: documentation_id, section saved, and confirmation message.
Parametri (4 richiesti, 1 opzionali)
organization_id*
(string)
- UUID of the organization. Get this from list_organizations.
project_id*
(string)
- UUID of the project. Get this from list_projects.
section*
(string)
- Documentation section to save. Values: overview, models, controllers, services, views, jobs, tests, or 'full' for complete documentation.
content*
(string)
- Markdown content of the documentation. Use proper markdown formatting with headers, code blocks, etc.
metadata
(object)
- Optional metadata about the documentation analysis.
Scenari
5 toolList available test scenarios for the current organization. Returns scenarios that can be executed via browser automation (Playwright).
Parametri (0 richiesti, 5 opzionali)
organization_id
(string)
- UUID of the organization. Get this from list_organizations.
status
(string)
- Filter by status (default: active)
project_id
(string)
- Filter by project ID
tags
(array)
- Filter by tags (scenarios must have ALL specified tags)
limit
(integer)
- Maximum number of scenarios to return (default: 50)
Get full details of a test scenario including its description that explains what to test. Use this before executing a scenario to understand the test steps and requirements.
Parametri (1 richiesti, 1 opzionali)
organization_id
(string)
- UUID of the organization. Get this from list_organizations.
scenario_id*
(string)
- The scenario ID to retrieve
Creates a new test scenario for browser automation testing. Scenarios describe test steps in natural language that can be executed by Claude for Chrome or Playwright. Prerequisite: Call list_organizations to get the organization ID. Optionally, call list_projects to get a project ID for association. Requires: scenarios:create permission. Returns: The created scenario with its ID.
Parametri (3 richiesti, 5 opzionali)
organization_id*
(string)
- UUID of the organization. Get this from list_organizations.
name*
(string)
- Name of the scenario. Example: 'Login Flow Test'
description*
(string)
- Test steps in natural language. Example: '1. Navigate to login page\n2. Enter credentials\n3. Click Login button\n4. Verify dashboard is shown'
base_url
(string)
- Base URL for the test. Optional. Example: 'https://app.example.com'
project_id
(string)
- UUID of the associated project. Optional. Get this from list_projects.
tags
(array)
- Tags for categorization. Example: ['login', 'smoke-test']
status
(string)
- Scenario status. Values: draft (default), active, disabled.
preferred_tool
(string)
- Preferred browser automation tool. Values: claude_for_chrome (default), playwright.
Updates an existing test scenario. Only the fields you provide will be updated. To clear optional fields like base_url or project_id, pass an empty string. To clear tags, pass an empty array. Requires: scenarios:update permission. Returns: The updated scenario with a list of modified fields.
Parametri (1 richiesti, 8 opzionali)
organization_id
(string)
- UUID of the organization. Get this from list_organizations.
scenario_id*
(string)
- UUID of the scenario to update. Get this from list_scenarios.
name
(string)
- New name for the scenario.
description
(string)
- New test steps in natural language.
base_url
(string)
- New base URL. Pass empty string to clear.
project_id
(string)
- New project UUID. Pass empty string to remove project association.
tags
(array)
- New tags array. Pass empty array [] to clear all tags.
status
(string)
- New status. Values: draft, active, disabled.
preferred_tool
(string)
- New preferred browser automation tool.
Report the result of a scenario execution. If the test failed, a ticket will be automatically created in the associated project with details about the failure.
Parametri (3 richiesti, 3 opzionali)
organization_id*
(string)
- UUID of the organization. Get this from list_organizations.
scenario_id*
(string)
- The scenario that was executed
result*
(string)
- Test result: 'passed' (test succeeded), 'failed' (test assertions failed), 'error' (execution error)
notes
(string)
- Execution notes, observations, or detailed explanation of the failure/success
error_details
(object)
- Details about the error (for failed/error results)
started_at
(string)
- When the scenario execution started (ISO8601). Defaults to current time if not provided.
Esempi Pratici
Come usare BugToMe da Claude Code
Visualizza bug critici
Tu: "Mostrami tutti i bug critici aperti nel progetto web-app"
Claude: Chiamera list_bugs con status="open" e priority="critical", poi ti mostrera una lista formattata con reference number, titolo e assegnatario.
Analizza un bug specifico
Tu: "Dammi i dettagli del bug WEB-0042 e suggeriscimi come fixarlo"
Claude: Usera get_bug per ottenere Given-When-Then, poi analizzerà il contesto e suggerira una soluzione basata sul codice del tuo progetto.
Chiudi un bug risolto
Tu: "Segna il bug WEB-0042 come risolto, ho fixato il problema nell'ultimo commit"
Claude: Chiamara update_bug_status con status="resolved" e aggiungera automaticamente le note di risoluzione basate sul tuo ultimo commit.
Configurazione per Altri IDE
Istruzioni specifiche per ogni ambiente di sviluppo
Claude Code
Avvia il dialogo per aggiungere un nuovo server MCP:
/mcp add
Configura i seguenti campi e premi CTRL+S per salvare:
- Server name:
bugtome - Server Type:
[1] Local - Command:
npx mcp-remote https://mcp.bugto.me
Copilot / VS Code
Installa tramite VS Code CLI:
code --add-mcp '{"name":"bugtome","command":"npx","args":["mcp-remote","https://mcp.bugto.me"],"env":{"BUGTOME_TOKEN":"your-token"}}'
Oppure segui la guida MCP di VS Code usando la configurazione standard.
Cursor
Vai su Cursor Settings → MCP → New MCP Server. Usa la configurazione JSON standard fornita sopra.
Factory CLI
Usa la Factory CLI per aggiungere il server MCP:
droid mcp add bugtome "npx mcp-remote https://mcp.bugto.me"
Gemini CLI
Project wide:
gemini mcp add bugtome npx mcp-remote https://mcp.bugto.me
Globally:
gemini mcp add -s user bugtome npx mcp-remote https://mcp.bugto.me
Gemini Code Assist
Segui la guida di configurazione MCP usando la configurazione standard.
JetBrains AI Assistant & Junie
AI Assistant: Vai su Settings | Tools | AI Assistant | Model Context Protocol (MCP) → Add
Junie: Vai su Settings | Tools | Junie | MCP Settings → Add
Kiro
In Kiro Settings, vai su Configure MCP → Open Workspace or User MCP Config e usa la configurazione standard.
OpenCode
Aggiungi la seguente configurazione al file ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"bugtome": {
"type": "local",
"command": ["npx", "mcp-remote", "https://mcp.bugto.me"]
}
}
}
Qoder / Qoder CLI
GUI: In Qoder Settings, vai su MCP Server → + Add
CLI - Project wide:
qodercli mcp add bugtome -- npx mcp-remote https://mcp.bugto.me
CLI - Globally:
qodercli mcp add -s user bugtome -- npx mcp-remote https://mcp.bugto.me
Visual Studio
Segui la guida MCP di Visual Studio e usa la configurazione JSON standard.
Warp
Vai su Settings | AI | Manage MCP Servers → + Add e usa la configurazione standard. Vedi la documentazione Warp.
Windsurf
Segui la guida di configurazione MCP usando la configurazione standard.
Pronto a potenziare il tuo workflow?
Registrati ora e inizia a usare BugToMe con Claude Code in pochi minuti.