Title99/100
Service catalog and pricing
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Returns turva.dev's service catalog: the Shopify agent storefront check, agent-readiness audit, advisory, implementation, agent operations, and MCP server design, plus the engagement model and pricing (fixed list prices for the Shopify agent storefront check, audit, advisory and implementation; agent operations and MCP server design on request), and two implementation add-ons that carry a fixed price and are sold only with the diagnosis they follow, bought with it, with its report, or after the report and before implementation starts. Use this when a user asks what turva.dev offers, what it costs, or how an engagement works. For how to reach turva.dev use get_contact instead, and for the rules an engagement follows use get_principles. Read-only: returns static JSON that is compiled into the Worker, so it changes nothing and updates only on deploy.
The description explains the capability, when to use it, and what to expect.
Inputs100/100
This tool declares no inputs, so argument descriptions are not needed.
No input fields.
Annotations100/100
All four behavior hints are declared.
{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Output schema85/100
The output schema explains the structured result.
View output schema
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"pricing_model",
"pricing_note",
"currency",
"vat_included",
"engagement",
"services",
"bundled_implementation"
],
"properties": {
"currency": {
"type": "string",
"description": "ISO 4217 code of every price, EUR."
},
"services": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"url",
"price",
"summary",
"deliverable"
],
"properties": {
"id": {
"type": "string",
"description": "Stable identifier of the service."
},
"url": {
"type": "string",
"description": "The turva.dev page that describes the service."
},
"name": {
"type": "string",
"description": "The name of the service."
},
"unit": {
"type": "string",
"description": "What the price covers, such as fixed, month or day. Absent when the price is on request."
},
"price": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"const": "on request"
}
],
"description": "EUR, VAT not included, or on request."
},
"summary": {
"type": "string",
"description": "What the service covers and its scope."
},
"duration": {
"type": "string",
"description": "How long delivery takes, where the service states one."
},
"sample_url": {
"type": "string",
"description": "A published sample of the deliverable, where one exists."
},
"deliverable": {
"type": "string",
"description": "What the customer receives and when."
},
"minimum_commitment": {
"type": "string",
"description": "The shortest term the service is sold for, where one applies."
}
},
"additionalProperties": false
},
"description": "The services with their prices."
},
"engagement": {
"type": "object",
"required": [
"communication",
"notes"
],
"properties": {
"notes": {
"type": "array",
"items": {
"type": "string",
"description": "One term of an engagement as a sentence."
},
"description": "Terms of an engagement, one per entry, covering access, scope, dates and completion."
},
"communication": {
"type": "string",
"description": "How an engagement is communicated, async_only for written exchange with no calls."
}
},
"description": "How an engagement is run.",
"additionalProperties": false
},
"pricing_note": {
"type": "string",
"description": "The VAT treatment by customer type, the services quoted per engagement and the rule for the add-ons."
},
"vat_included": {
"type": "boolean",
"description": "Whether the prices include VAT. False means every price excludes VAT."
},
"pricing_model": {
"type": "string",
"description": "The pricing model. fixed_list_prices means fixed list prices, apart from the services priced on request."
},
"bundled_implementation": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"price",
"unit",
"requires",
"sold_separately",
"summary"
],
"properties": {
"id": {
"type": "string",
"description": "Stable identifier of the add-on."
},
"name": {
"type": "string",
"description": "The name of the add-on."
},
"unit": {
"type": "string",
"description": "What the price covers, such as fixed."
},
"price": {
"type": "number",
"description": "Price in EUR, VAT not included."
},
"summary": {
"type": "string",
"description": "What the add-on covers and when it is bought."
},
"requires": {
"type": "string",
"description": "The id of the service this add-on is sold with."
},
"sold_separately": {
"type": "boolean",
"description": "Whether the add-on can be bought without its service. False means it cannot."
}
},
"additionalProperties": false
},
"description": "Implementation add-ons that are sold only with another service."
}
},
"additionalProperties": false
}