{"name":"io.github.aaglis/intelliboard-mcp","slug":"aaglis-intelliboard-mcp","title":"Intelliboard","description":"Kanban do Intelliboard por MCP: handoff entre agentes e validação imposta antes de concluir.","url":"https://mcp.market/server/aaglis-intelliboard-mcp","rating":null,"grade":"C","score":57,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":9,"stars":null,"forks":null,"downloads_week":68,"last_push_at":null,"license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/aaglis/intelliboard","website":null,"version":"0.18.1","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"intelliboard-mcp","version":"0.18.1","runtimeHint":"npx","transport":{"type":"stdio"}}],"tools":[{"name":"activate_sprint","description":"Torna este o sprint ATIVO do board — os demais ativos viram 'done' (no máximo 1 ativo por board).","write_action":false,"price_micros":0,"input_schema":null},{"name":"amend_execution_report","description":"ACRESCENTA uma correção datada ao executionReport de um card. O texto original NUNCA é alterado — a","write_action":false,"price_micros":0,"input_schema":null},{"name":"block_card","description":"Bloqueia explicitamente um card e para heartbeat local.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_update","description":"Verifica no npm se há uma versão mais nova do intelliboard-mcp (ignora o cache de 24h). Retorna a versão atual, a última publicada, se há atualização e o comando para atualizar.","write_action":true,"price_micros":0,"input_schema":null},{"name":"claim_card","description":"Pega o card indicado, trava por assignee e move para 'doing' — o mesmo claim atômico do get_next_task,","write_action":false,"price_micros":0,"input_schema":null},{"name":"commit_card","description":"Faz APENAS commit local das mudanças do card — NUNCA push, NUNCA PR. Antes de commitar, garante a branch","write_action":false,"price_micros":0,"input_schema":null},{"name":"complete_card","description":"Conclui um card movendo-o para 'done'. EXIGE comprovante local vinculado ao fingerprint atual; sem ele devolve ticket + comandos exatos para execução pela autorização nativa do agente. Código alterado ou validação falha BLOQUEIAM a conclusão.","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_board","description":"Cria um board na organização efetiva (select da sessão > vínculo do workspace > config legada > app). O backend","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_card","description":"Cria um card a partir de um relato/task. ANTES, LEIA o código relevante para entender a causa real. Descrição em markdown com Problema, Comportamento atual vs Esperado, Causa raiz (arquivo:linha), Como reproduzir, e Critérios de aceite. columnId vem de list_columns. PREFIXE o título com o tipo Conventional Commits em colchetes, ex.: `[fix] corrige expiração do convite`, `[feat] ...`, `[hotfix] ...","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_cards_bulk","description":"Cria VÁRIOS cards de uma vez (tudo-ou-nada) — ideal p/ planejar uma sprint inteira numa chamada só,","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_column","description":"Cria uma coluna. Verifique duplicatas com list_columns antes. role opcional: todo|doing|done.","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_sprint","description":"Cria um sprint no board atual (status inicial 'planning'). Datas em YYYY-MM-DD (opcionais). NÃO ativa automaticamente — use activate_sprint. Num board compartilhado o sprint fica visível a todos os membros/agentes.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_card","description":"Remove um card permanentemente.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_column","description":"Remove uma coluna e TODOS os cards dela. Use com cuidado.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_next_task","description":"Pega o primeiro card disponível da coluna 'todo', trava por assignee e move para 'doing'. Retorna { done: true } quando não há mais. Loop: get_next_task → implementar → complete_card → repetir.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_project_context","description":"Retorna a nota de CONTEXTO do projeto (kind=context) — o briefing que descreve convenções, decisões e","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_claim_changes","description":"Read-only: compara baseline atual com o working tree.","write_action":false,"price_micros":0,"input_schema":null},{"name":"intelliboard_status","description":"Diz se o MCP está conectado e autenticado no Intelliboard. Chame logo após instalar para confirmar a conexão.","write_action":false,"price_micros":0,"input_schema":null},{"name":"link_workspace","description":"Vincula ESTE repositório a uma organização + board. Aceita nome ou id; omita o campo","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_agents","description":"Lista os agentes com claim ativo no board (sessão, cliente, estado, card e heartbeat).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_boards","description":"Lista os boards da organização efetiva. Com allOrganizations=true, descobre boards de TODAS as orgs","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_columns","description":"Lista as colunas do board ativo (com role) e seus cards. Por padrão os cards vêm ENXUTOS","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_decisions","description":"Lê o log append-only de decisões do board (mais recentes primeiro). Filtros: source, q, cardId, epic, limit.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_my_cards","description":"Cards atribuídos a você (assignee = seu usuário).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_organizations","description":"Lista as organizações do usuário (id, nome, papel, e memberCount — 1 = pessoal, >1 = compartilhada/time).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_sprints","description":"Lista os sprints do board atual (id, nome, status, período, meta). Num board compartilhado todos os membros veem os mesmos sprints. Use para achar o sprintId de um card ou saber qual está ativo (status 'active').","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_workspace_links","description":"Read-only: lista TODOS os workspaces vinculados nesta máquina para a API atual","write_action":false,"price_micros":0,"input_schema":null},{"name":"log_decision","description":"APPENDA uma decisão ao log do board — histórico datado do que mudou e por quê (ex.: troca de biblioteca,","write_action":false,"price_micros":0,"input_schema":null},{"name":"login","description":"Autentica o usuário no Intelliboard por device flow (OAuth). PASSO DO HUMANO: NÃO tente abrir a URL, aprovar","write_action":false,"price_micros":0,"input_schema":null},{"name":"move_card","description":"Move um card para outra coluna/posição. Mover para a coluna 'doing' TAMBÉM faz o claim no backend;","write_action":false,"price_micros":0,"input_schema":null},{"name":"prepare_update","description":"Baixa e prepara a versão publicada AGORA, com a sessão ainda de pé, para que o","write_action":true,"price_micros":0,"input_schema":null},{"name":"release_card","description":"Libera o claim do card e para heartbeat local.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rename_board","description":"Renomeia um board (por nome ou id) da organização efetiva. Vínculos de workspace continuam válidos pelo ID;","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_cards","description":"Busca cards do board ativo por texto (título e descrição, case-insensitive) e/ou filtra por épico,","write_action":false,"price_micros":0,"input_schema":null},{"name":"select_board","description":"Fixa o BOARD (da org atual) que ESTA instância opera, por nome ou id — override em memória do processo.","write_action":false,"price_micros":0,"input_schema":null},{"name":"select_organization","description":"Fixa a ORG que ESTA instância do MCP opera, por nome ou id — override em memória do processo.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_git_mode","description":"Persiste, na máquina do dev (~/.config/intelliboard/prefs.json), como o MCP trata branch/commit ao concluir cards.","write_action":false,"price_micros":0,"input_schema":null},{"name":"setup_validation","description":"Grava o perfil de validação deste workspace — o gate que complete_card exige antes de","write_action":false,"price_micros":0,"input_schema":null},{"name":"unblock_card","description":"Remove o bloqueio manual sem iniciar claim/heartbeat.","write_action":true,"price_micros":0,"input_schema":null},{"name":"unlink_workspace","description":"Remove o vínculo local deste repositório. Depois disso o escopo volta à precedência","write_action":true,"price_micros":0,"input_schema":null},{"name":"update","description":"Explica como atualizar o intelliboard-mcp. O processo em execução NÃO se auto-substitui: a versão nova entra ao REABRIR a sessão do agente. A ordem importa — chame `prepare_update` ANTES de pedir o reinício, senão o download acontece dentro da janela de startup do cliente e a sessão pode abrir sem nenhuma tool. Não é preciso relogar: o token do device flow persiste.","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_card","description":"Atualiza campos de planejamento e handoff de um card, inclusive comandos de validação, riscos,","write_action":true,"price_micros":0,"input_schema":null},{"name":"update_sprint","description":"Atualiza nome, meta, período (YYYY-MM-DD) ou status ('planning'|'active'|'done') de um sprint. Para trocar o sprint ativo, prefira activate_sprint (garante no máximo 1 ativo por board).","write_action":true,"price_micros":0,"input_schema":null},{"name":"validate","description":"Prepara um ticket de validação e devolve os comandos exatos para execução pela ferramenta nativa de terminal. Não executa comandos dentro da tool.","write_action":false,"price_micros":0,"input_schema":null},{"name":"validation_status","description":"Read-only: diz se este workspace tem perfil de validação e qual. Sem perfil, devolve","write_action":false,"price_micros":0,"input_schema":null},{"name":"workspace_status","description":"Read-only: mostra o workspace detectado (identidade Git ou caminho), o vínculo local","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":57,"grade":"C","scanned_at":"2026-11-01T13:28:39.149Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-01T13:28:39.124Z","components":{"code":{"score":20,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":3,"max":15,"notes":["repository not readable: repo not found"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"dist/index.js: …ludes(\"Cloudflare\"))return!1;try{return new Function(\"\"),!0}catch($){return!1}});function H$(…"}],"inputs":{"packages":[{"registryType":"npm","identifier":"intelliboard-mcp","version":"0.18.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":0,"publishedAt":"2026-08-22T15:11:28.937Z","weeklyDownloads":68}],"repo":{"found":false,"owner":"aaglis","repo":"intelliboard","error":"repo not found"},"icon":{"url":null,"source":"none"},"presence":{"stars":null,"forks":null,"downloadsWeek":68,"license":"MIT","lastPushAt":null,"score":9}}}},"grade_history":[],"reviews":[]}