Tool tree
gradeNot graded
searchArticlesAnswer
Search Octura Solutions blog articles about Odoo ERP implementation, customization, migration, and best practices. Returns up to 10 matching posts with title, link, and publication date.
View tool JSON
{
"name": "searchArticles",
"kind": "answer",
"impl": "imperative",
"description": "Search Octura Solutions blog articles about Odoo ERP implementation, customization, migration, and best practices. Returns up to 10 matching posts with title, link, and publication date.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Keywords to match in article titles or descriptions. Omit to list recent articles."
}
}
}
}openBookingSensitive Action
Get the URL to book a free 30-minute Odoo consultation with Octura Solutions. Returns the booking page on octurasolutions.com; a Calendly alternative is included as a fallback.
View tool JSON
{
"name": "openBooking",
"kind": "transact",
"impl": "imperative",
"description": "Get the URL to book a free 30-minute Odoo consultation with Octura Solutions. Returns the booking page on octurasolutions.com; a Calendly alternative is included as a fallback.",
"inputSchema": {
"type": "object",
"properties": {}
}
}checkConsultationAvailabilityAnswer
List the free 30-minute consultation slots Octura Solutions has open on a given day. Slots are Pacific time, Monday to Friday, and already exclude anything booked, past, or inside the 4-hour minimum notice. Call this before bookConsultation so the chosen start time is one the calendar will accept.
View tool JSON
{
"name": "checkConsultationAvailability",
"kind": "answer",
"impl": "imperative",
"description": "List the free 30-minute consultation slots Octura Solutions has open on a given day. Slots are Pacific time, Monday to Friday, and already exclude anything booked, past, or inside the 4-hour minimum notice. Call this before bookConsultation so the chosen start time is one the calendar will accept.",
"inputSchema": {
"type": "object",
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Day to check, as YYYY-MM-DD in Pacific time."
}
},
"required": [
"date"
]
}
}bookConsultationSensitive Action
Book a free 30-minute Odoo consultation and issue a Google Meet link. This creates a real calendar event and emails the attendee, so confirm the name, the email address, and the exact slot with the user before calling, and take the start time from checkConsultationAvailability rather than inventing one.
View tool JSON
{
"name": "bookConsultation",
"kind": "transact",
"impl": "imperative",
"description": "Book a free 30-minute Odoo consultation and issue a Google Meet link. This creates a real calendar event and emails the attendee, so confirm the name, the email address, and the exact slot with the user before calling, and take the start time from checkConsultationAvailability rather than inventing one.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Attendee full name."
},
"email": {
"type": "string",
"format": "email",
"description": "Attendee email; the invite goes here."
},
"startIso": {
"type": "string",
"description": "Slot start as the exact ISO string returned by checkConsultationAvailability."
},
"phone": {
"type": "string",
"description": "Optional phone number for the invite."
},
"industry": {
"type": "string",
"description": "Attendee industry, so the call can be prepared.",
"enum": [
"manufacturing",
"retail",
"services",
"distribution",
"construction",
"healthcare",
"other"
]
},
"region": {
"type": "string",
"description": "Country or region, e.g. \"US\", \"Canada\", \"France\"."
},
"budget": {
"type": "string",
"description": "Rough budget band, if the user offered one."
},
"guestEmails": {
"type": "array",
"items": {
"type": "string",
"format": "email"
},
"description": "Optional additional invitees, up to 10."
}
},
"required": [
"name",
"email",
"startIso"
]
}
}getPricingAnswer
Get Octura Solutions published prices: the fixed-scope implementation packages, the paid diagnostic, hosting, per-service starting points, and the Odoo license fee. Figures come from the same source the pricing page renders, so they cannot drift from the site. Odoo license fees are paid to Odoo S.A. and are not marked up.
View tool JSON
{
"name": "getPricing",
"kind": "answer",
"impl": "imperative",
"description": "Get Octura Solutions published prices: the fixed-scope implementation packages, the paid diagnostic, hosting, per-service starting points, and the Odoo license fee. Figures come from the same source the pricing page renders, so they cannot drift from the site. Odoo license fees are paid to Odoo S.A. and are not marked up.",
"inputSchema": {
"type": "object",
"properties": {
"locale": {
"type": "string",
"enum": [
"en",
"fr"
],
"description": "Currency and formatting to answer in. Defaults to en (USD)."
}
}
}
}calculateCanadianSalesTaxAction
Calculate GST, HST, PST, or QST for any Canadian province or territory, either adding tax to a pre-tax amount or extracting it from a tax-included total. Uses the 2026 rates published on the Octura calculator. For guidance only, not tax advice.
View tool JSON
{
"name": "calculateCanadianSalesTax",
"kind": "act",
"impl": "imperative",
"description": "Calculate GST, HST, PST, or QST for any Canadian province or territory, either adding tax to a pre-tax amount or extracting it from a tax-included total. Uses the 2026 rates published on the Octura calculator. For guidance only, not tax advice.",
"inputSchema": {
"type": "object",
"properties": {
"amount": {
"type": "number",
"description": "The amount to work from, in CAD."
},
"province": {
"type": "string",
"description": "Two-letter province or territory code, e.g. ON, QC, BC, AB, NS."
},
"direction": {
"type": "string",
"enum": [
"add",
"extract"
],
"description": "add: amount is pre-tax. extract: amount already includes tax. Defaults to add."
}
},
"required": [
"amount",
"province"
]
}
}subscribeToNewsletterSensitive Action
Subscribe an email address to the Octura Solutions mailing list. Confirm the email with the user before calling.
View tool JSON
{
"name": "subscribeToNewsletter",
"kind": "transact",
"impl": "imperative",
"description": "Subscribe an email address to the Octura Solutions mailing list. Confirm the email with the user before calling.",
"inputSchema": {
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"description": "Email address to subscribe."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional interest tags (e.g. \"odoo-19\", \"manufacturing\")."
}
},
"required": [
"email"
]
}
}submitLeadSensitive Action
Submit a lead/contact request to Octura Solutions. Use when a user wants to be contacted about ERP services, custom development, migration, or support. Always confirm name, email, and company with the user first.
View tool JSON
{
"name": "submitLead",
"kind": "transact",
"impl": "imperative",
"description": "Submit a lead/contact request to Octura Solutions. Use when a user wants to be contacted about ERP services, custom development, migration, or support. Always confirm name, email, and company with the user first.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Contact full name."
},
"email": {
"type": "string",
"format": "email",
"description": "Contact email; the reply goes here."
},
"company": {
"type": "string",
"description": "Company or organization name."
},
"message": {
"type": "string",
"description": "Project description or question."
},
"industry": {
"type": "string",
"enum": [
"manufacturing",
"retail",
"services",
"distribution",
"construction",
"healthcare",
"other"
]
},
"services": {
"type": "array",
"description": "Which services the contact is asking about.",
"items": {
"type": "string",
"enum": [
"implementation",
"customization",
"migration",
"integration",
"support",
"audit"
]
}
}
},
"required": [
"name",
"email",
"company"
]
}
}