install_precommit_guard
installprecommitguard(projectkey: str, coderepopath: str)
How to use it
install_precommit_guard is exposed by the MCP Agent Mail MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the install_precommit_guard tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.
FULL MCP AGENT MAIL LISTINGOther tools in MCP Agent Mail (26)
acknowledgemessage(projectkey: str, agentname: str, messageid: int, registrationtoken?: str)
createagentidentity(projectkey: str, program: str, model: str, namehint?: str, taskdescription?: str, attachmentspolicy?: str)
ensureproject(humankey: str)
fetchinbox(projectkey: str, agentname: str, limit?: int, urgentonly?: bool, includebodies?: bool, sincets?: str, topic?: str, unreadonly?: bool, registrationtoken?: str)
filereservationpaths(projectkey: str, agentname: str, paths: list[str], ttlseconds?: int, exclusive?: bool, reason?: str, registrationtoken?: str)
forcereleasefilereservation(projectkey: str, agentname: str, filereservationid: int, notifyprevious?: bool, note?: str, registrationtoken?: str)
healthcheck()
listcontacts(projectkey: str, agentname: str, registrationtoken?: str)
macrocontacthandshake(projectkey: str, requester
macrofilereservationcycle(projectkey: str, agentname: str, paths: list[str], ttlseconds?: int, exclusive?: bool, reason?: str, autorelease?: bool, registrationtoken?: str)
macropreparethread(projectkey: str, threadid: str, program: str, model: str, agentname?: str, registrationtoken?: str, taskdescription?: str, registerifmissing?: bool, includeexamples?: bool, inboxlimit?: int, includeinboxbodies?: bool, llmmode?: bool, llmmodel?: str)
macrostartsession(humankey: str, program: str, model: str, taskdescription?: str, agentname?: str, registrationtoken?: str, filereservationpaths?: list[str], filereservationreason?: str, filereservationttlseconds?: int, inboxlimit?: int)
markmessageread(projectkey: str, agentname: str, messageid: int, registrationtoken?: str)
registeragent(projectkey: str, program: str, model: str, name?: str, taskdescription?: str, attachmentspolicy?: str)
releasefilereservations(projectkey: str, agentname: str, paths?: list[str], filereservationids?: list[int], registrationtoken?: str)
renewfilereservations(projectkey: str, agentname: str, extendseconds?: int, paths?: list[str], filereservationids?: list[int], registrationtoken?: str)
replymessage(projectkey: str, messageid: int, sendername: str, bodymd: str, to?: list[str], cc?: list[str], bcc?: list[str], subjectprefix?: str, sendertoken?: str)
requestcontact(projectkey: str, fromagent: str, toagent: str, toproject?: str, reason?: str, ttlseconds?: int, registrationtoken?: str)
respondcontact(projectkey: str, toagent: str, fromagent: str, accept: bool, fromproject?: str, ttlseconds?: int, registrationtoken?: str)
searchmessages(projectkey: str, query: str, limit?: int, agentname?: str, registrationtoken?: str)
sendmessage(projectkey: str, sendername: str, to: list[str], subject: str, bodymd: str, cc?: list[str], bcc?: list[str], attachmentpaths?: list[str], convertimages?: bool, importance?: str, ackrequired?: bool, threadid?: str, autocontactifblocked?: bool, sendertoken?: str)
setcontactpolicy(projectkey: str, agentname: str, policy: str, registrationtoken?: str)
summarizethread(projectkey: str, threadid: str, includeexamples?: bool, llmmode?: bool, llmmodel?: str, perthreadlimit?: int, agentname?: str, registrationtoken?: str)
sweepstaleagents(projectkey: str, agentname: str, thresholdseconds?: int, requirenoactivereservations?: bool, registrationtoken?: str)
uninstallprecommitguard(coderepopath: str)
whois(projectkey: str, agentname: str, includerecentcommits?: bool, commitlimit?: int)