Cheapest API for any model across official, inference and relay providers; find free credits
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Compare Grandet model prices within each unit. Read listings for price-only ordering and conditions; legacy recommended/alternative/cheapest retain their old meanings. Use view=compact for shared connection cards and a short text response. Provide exactly one model or name selector. host records the source only and never selects the inference route. Send targetApp when the user or conversation identifies the intended API application, including explicit use in the current app. With no target, compare directly. An unrecorded app connection permits a price-only recommendation, not a compatibility claim. Omit profile/protocol for a multi-protocol app unless already specified. Existing client remains a legacy target-app alias. Infer coding/chat/long_output from the task; presets are estimates. Use grandet_list_apps only when application facts are needed. Do not request API keys.
Operating system the target app runs on, for connection steps: windows, macos, linux or unknown.
Workload used to blend input, cache and output prices into one price per million total tokens. Presets "chat" (default), "coding" and "long_output", or custom input/cache-read/output/cache-write shares totalling 100.
Evaluate as of this UTC time (ISO 8601, e.g. "2026-10-16T12:00:00Z"). Omit to evaluate now.
The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results.
Answer language: "en" or "zh-CN".
The catalogue's 20-character hexadecimal raw-name ID (not the name text). Send exactly one of model or name.
"compact" (default): a short text summary plus the listings, with connection cards shared in integrationCards; about a third of the size. "full": every legacy field, with the whole JSON repeated as text.
Rows per block, 1–20 (default 5).
Model to look up: a catalogue ID, an exact model name or a natural name such as "claude-sonnet-5-5". Send exactly one of model or name. An ambiguous name returns NEEDS_CLARIFICATION with candidates.
"best" (default) keeps one group per site; "all" lists every group of every site.
Legacy alias of targetApp. Prefer targetApp.
"standard" (default) lists ordinary channels, "declared-nonstandard" only channels the site itself labels nonstandard, "all" both.
Limit to one unit board: USD_CREDIT or CNY_CREDIT (site credit, not cash), USD or CNY (cash). Never compare prices across units.
Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used.
Pin a published data release by its release-set hash. Omit to use the current release.
Grandet Skill build ID when called from the Skill. Omit otherwise.
Limit to one API protocol. Send it only when the user named a protocol.
Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise.
An inference profile ID of the target app (see grandet_list_apps). Only together with targetApp or client.
Compare Grandet model prices within each unit. Read listings for price-only ordering and conditions; legacy recommended/alternative/cheapest retain their old meanings. Use view=compact for shared connection cards and a short text response. Provide exactly one model or name selector. host records the source only and never selects the inference route. Send targetApp when the user or conversation identifies the intended API application, including explicit use in the current app. With no target, compare directly. An unrecorded app connection permits a price-only recommendation, not a compatibility claim. Omit profile/protocol for a multi-protocol app unless already specified. Existing client remains a legacy target-app alias. Infer coding/chat/long_output from the task; presets are estimates. Use grandet_list_apps only when application facts are needed. Do not request API keys.
| Argument | Type | Description |
|---|---|---|
| os | string | Operating system the target app runs on, for connection steps: windows, macos, linux or unknown. |
| mix | string | Workload used to blend input, cache and output prices into one price per million total tokens. Presets "chat" (default), "coding" and "long_output", or custom input/cache-read/output/cache-write shares totalling 100. |
| asOf | string | Evaluate as of this UTC time (ISO 8601, e.g. "2026-10-16T12:00:00Z"). Omit to evaluate now. |
| host | string | The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results. |
| lang | string | Answer language: "en" or "zh-CN". |
| name | string | The catalogue's 20-character hexadecimal raw-name ID (not the name text). Send exactly one of model or name. |
| view | string | "compact" (default): a short text summary plus the listings, with connection cards shared in integrationCards; about a third of the size. "full": every legacy field, with the whole JSON repeated as text. |
| limit | integer | Rows per block, 1–20 (default 5). |
| model | string | Model to look up: a catalogue ID, an exact model name or a natural name such as "claude-sonnet-5-5". Send exactly one of model or name. An ambiguous name returns NEEDS_CLARIFICATION with candidates. |
| plans | string | "best" (default) keeps one group per site; "all" lists every group of every site. |
| client | string | Legacy alias of targetApp. Prefer targetApp. |
| channel | string | "standard" (default) lists ordinary channels, "declared-nonstandard" only channels the site itself labels nonstandard, "all" both. |
| currency | string | Limit to one unit board: USD_CREDIT or CNY_CREDIT (site credit, not cash), USD or CNY (cash). Never compare prices across units. |
| targetApp | string | Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used. |
| releaseSet | string | Pin a published data release by its release-set hash. Omit to use the current release. |
| skillBuild | string | Grandet Skill build ID when called from the Skill. Omit otherwise. |
| endpointType | string | Limit to one API protocol. Send it only when the user named a protocol. |
| skillVersion | string | Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise. |
| targetProfile | string | An inference profile ID of the target app (see grandet_list_apps). Only together with targetApp or client. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"os": {
"enum": [
"windows",
"macos",
"linux",
"unknown"
],
"type": "string",
"default": "unknown",
"description": "Operating system the target app runs on, for connection steps: windows, macos, linux or unknown."
},
"mix": {
"type": "string",
"maxLength": 120,
"description": "Workload used to blend input, cache and output prices into one price per million total tokens. Presets \"chat\" (default), \"coding\" and \"long_output\", or custom input/cache-read/output/cache-write shares totalling 100."
},
"asOf": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Evaluate as of this UTC time (ISO 8601, e.g. \"2026-10-16T12:00:00Z\"). Omit to evaluate now."
},
"host": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "The assistant or app making this call, e.g. \"claude-code\" or \"codex\". Attribution only; it does not change results."
},
"lang": {
"enum": [
"en",
"zh-CN"
],
"type": "string",
"default": "en",
"description": "Answer language: \"en\" or \"zh-CN\"."
},
"name": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "The catalogue's 20-character hexadecimal raw-name ID (not the name text). Send exactly one of model or name."
},
"view": {
"enum": [
"full",
"compact",
"brief"
],
"type": "string",
"default": "compact",
"description": "\"compact\" (default): a short text summary plus the listings, with connection cards shared in integrationCards; about a third of the size. \"full\": every legacy field, with the whole JSON repeated as text."
},
"limit": {
"type": "integer",
"default": 5,
"maximum": 20,
"minimum": 1,
"description": "Rows per block, 1–20 (default 5)."
},
"model": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Model to look up: a catalogue ID, an exact model name or a natural name such as \"claude-sonnet-5-5\". Send exactly one of model or name. An ambiguous name returns NEEDS_CLARIFICATION with candidates."
},
"plans": {
"enum": [
"best",
"all"
],
"type": "string",
"description": "\"best\" (default) keeps one group per site; \"all\" lists every group of every site."
},
"client": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Legacy alias of targetApp. Prefer targetApp."
},
"channel": {
"enum": [
"standard",
"declared-nonstandard",
"all"
],
"type": "string",
"description": "\"standard\" (default) lists ordinary channels, \"declared-nonstandard\" only channels the site itself labels nonstandard, \"all\" both."
},
"currency": {
"enum": [
"USD_CREDIT",
"CNY_CREDIT",
"USD",
"CNY"
],
"type": "string",
"description": "Limit to one unit board: USD_CREDIT or CNY_CREDIT (site credit, not cash), USD or CNY (cash). Never compare prices across units."
},
"targetApp": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue ID of the app that will use the API, e.g. \"openclaw\", \"claude-code\" or \"codex\". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used."
},
"releaseSet": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Pin a published data release by its release-set hash. Omit to use the current release."
},
"skillBuild": {
"type": "string",
"maxLength": 256,
"description": "Grandet Skill build ID when called from the Skill. Omit otherwise."
},
"endpointType": {
"enum": [
"openai",
"openai-response",
"anthropic",
"gemini"
],
"type": "string",
"description": "Limit to one API protocol. Send it only when the user named a protocol."
},
"skillVersion": {
"type": "string",
"maxLength": 32,
"description": "Grandet Skill version when called from the Skill, e.g. \"0.3.0\". Omit otherwise."
},
"targetProfile": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "An inference profile ID of the target app (see grandet_list_apps). Only together with targetApp or client."
}
},
"additionalProperties": false
}Find current official free tiers, application-based credits and relay free groups. Return the stated benefit, six requirements, deadline, original observation and claim link. userCanMeet=no_card excludes explicit required/conditional card entries; unknown card requirements remain clearly labelled unknown. Application categories describe programs, not the user’s eligibility. Follow pagination.
| Argument | Type | Description |
|---|---|---|
| q | string | Model, vendor or site to search, e.g. "gemini". |
| asOf | string | Evaluate as of this UTC time (ISO 8601, e.g. "2026-10-16T12:00:00Z"). Omit to evaluate now. |
| host | string | The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results. |
| kind | string | "official" free tiers and credits, "relay" free groups, or "all". |
| lang | string | Answer language: "en" or "zh-CN". |
| page | integer | Result page, starting at 1. |
| view | string | "compact" (default): about 18 KB for a typical query. "full": every field, often over 250 KB. |
| limit |
Look up the published Grandet relay glossary. Site labels are source claims and glossary terms explain them; they do not verify quality. Query q or category and follow pagination. Unknown terms include up to three related FAQ links.
| Argument | Type | Description |
|---|---|---|
| q | string | Term or phrase to look up, e.g. "倍率" or "token group". |
| host | string | The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results. |
| lang | string | Answer language: "en" or "zh-CN". |
| page | integer | Result page, starting at 1. |
| limit | integer | Results per page, 1–20. |
| category | string | Limit to one glossary category. |
| targetApp | string | Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used. |
| skillBuild | string | Grandet Skill build ID when called from the Skill. Omit otherwise. |
Read the shared Grandet application list and inference profiles before selecting a supplier. App profiles determine API compatibility; MCP capability alone does not prove an inference route or Skill installation. Use only when the target app ID, supported protocol or configuration variant is uncertain.
| Argument | Type | Description |
|---|---|---|
| app | string | Catalogue app ID to show, e.g. "openclaw". Omit to list every app. |
| host | string | The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results. |
| lang | string | Answer language: "en" or "zh-CN". |
| targetApp | string | Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used. |
| skillBuild | string | Grandet Skill build ID when called from the Skill. Omit otherwise. |
| skillVersion | string | Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"app": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue app ID to show, e.g. \"openclaw\". Omit to list every app."
},
"host": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "The assistant or app making this call, e.g. \"claude-code\" or \"codex\". Attribution only; it does not change results."
},
"lang": {
"enum": [
"en",
"zh-CN"
],
"type": "string",
"default": "en",
"description": "Answer language: \"en\" or \"zh-CN\"."
},
"targetApp": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue ID of the app that will use the API, e.g. \"openclaw\", \"claude-code\" or \"codex\". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used."
},
"skillBuild": {
"type": "string",
"maxLength": 256,
"description": "Grandet Skill build ID when called from the Skill. Omit otherwise."
},
"skillVersion": {
"type": "string",
"maxLength": 32,
"description": "Grandet Skill version when called from the Skill, e.g. \"0.3.0\". Omit otherwise."
}
},
"additionalProperties": false
}Read one provider's paged public declarations for a model and optional rowId. Use only when a detail matters, not before every recommendation. A missing row on one page is not proof of absence; follow pagination if needed. This does not test model quality or spend money.
| Argument | Type | Description |
|---|---|---|
| asOf | string | Evaluate as of this UTC time (ISO 8601, e.g. "2026-10-16T12:00:00Z"). Omit to evaluate now. |
| host | string | The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results. |
| lang | string | Answer language: "en" or "zh-CN". |
| name | string | The catalogue's 20-character hexadecimal raw-name ID (not the name text). Send exactly one of model or name. |
| model | string | Model to look up: a catalogue ID, an exact model name or a natural name such as "claude-sonnet-5-5". Send exactly one of model or name. An ambiguous name returns NEEDS_CLARIFICATION with candidates. |
| rowId | string | The rowId of the selected row, to read that exact declaration. |
| provider* | string | The sourceId of the row to inspect (the site host, e.g. "api.example.com"), not the operator ID. |
Look up public model identifiers when a requested name is ambiguous. Results are a page of candidates, not a cheapest-provider ranking. Prefer an exact officialId match; do not silently substitute a different model generation.
| Argument | Type | Description |
|---|---|---|
| host | string | The assistant or app making this call, e.g. "claude-code" or "codex". Attribution only; it does not change results. |
| lang | string | Answer language: "en" or "zh-CN". |
| name* | string | Model name text to look up, e.g. "sonnet" or "deepseek v4". |
| page | integer | Result page, starting at 1. |
| targetApp | string | Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used. |
| skillBuild | string | Grandet Skill build ID when called from the Skill. Omit otherwise. |
| skillVersion | string | Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise. |
| integer |
| Results per page, 1–20. |
| targetApp | string | Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used. |
| releaseSet | string | Pin a published data release by its release-set hash. Omit to use the current release. |
| skillBuild | string | Grandet Skill build ID when called from the Skill. Omit otherwise. |
| userCanMeet | string | Only offers the user can meet: "any", "no_card" (no payment card) or "student". |
| skillVersion | string | Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"maxLength": 200,
"description": "Model, vendor or site to search, e.g. \"gemini\"."
},
"asOf": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Evaluate as of this UTC time (ISO 8601, e.g. \"2026-10-16T12:00:00Z\"). Omit to evaluate now."
},
"host": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "The assistant or app making this call, e.g. \"claude-code\" or \"codex\". Attribution only; it does not change results."
},
"kind": {
"enum": [
"official",
"relay",
"all"
],
"type": "string",
"description": "\"official\" free tiers and credits, \"relay\" free groups, or \"all\"."
},
"lang": {
"enum": [
"en",
"zh-CN"
],
"type": "string",
"default": "en",
"description": "Answer language: \"en\" or \"zh-CN\"."
},
"page": {
"type": "integer",
"maximum": 99999,
"minimum": 1,
"description": "Result page, starting at 1."
},
"view": {
"enum": [
"full",
"compact"
],
"type": "string",
"default": "compact",
"description": "\"compact\" (default): about 18 KB for a typical query. \"full\": every field, often over 250 KB."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Results per page, 1–20."
},
"targetApp": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue ID of the app that will use the API, e.g. \"openclaw\", \"claude-code\" or \"codex\". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used."
},
"releaseSet": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Pin a published data release by its release-set hash. Omit to use the current release."
},
"skillBuild": {
"type": "string",
"maxLength": 256,
"description": "Grandet Skill build ID when called from the Skill. Omit otherwise."
},
"userCanMeet": {
"enum": [
"any",
"no_card",
"student"
],
"type": "string",
"description": "Only offers the user can meet: \"any\", \"no_card\" (no payment card) or \"student\"."
},
"skillVersion": {
"type": "string",
"maxLength": 32,
"description": "Grandet Skill version when called from the Skill, e.g. \"0.3.0\". Omit otherwise."
}
},
"additionalProperties": false
}| skillVersion | string | Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"q": {
"type": "string",
"maxLength": 160,
"description": "Term or phrase to look up, e.g. \"倍率\" or \"token group\"."
},
"host": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "The assistant or app making this call, e.g. \"claude-code\" or \"codex\". Attribution only; it does not change results."
},
"lang": {
"enum": [
"en",
"zh-CN"
],
"type": "string",
"default": "en",
"description": "Answer language: \"en\" or \"zh-CN\"."
},
"page": {
"type": "integer",
"minimum": 1,
"description": "Result page, starting at 1."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "Results per page, 1–20."
},
"category": {
"type": "string",
"maxLength": 64,
"description": "Limit to one glossary category."
},
"targetApp": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue ID of the app that will use the API, e.g. \"openclaw\", \"claude-code\" or \"codex\". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used."
},
"skillBuild": {
"type": "string",
"maxLength": 256,
"description": "Grandet Skill build ID when called from the Skill. Omit otherwise."
},
"skillVersion": {
"type": "string",
"maxLength": 32,
"description": "Grandet Skill version when called from the Skill, e.g. \"0.3.0\". Omit otherwise."
}
},
"additionalProperties": false
}| offerPage | integer | Page of this provider's declarations, starting at 1. Follow it when rowId is absent. |
| targetApp | string | Catalogue ID of the app that will use the API, e.g. "openclaw", "claude-code" or "codex". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used. |
| releaseSet | string | Pin a published data release by its release-set hash. Omit to use the current release. |
| skillBuild | string | Grandet Skill build ID when called from the Skill. Omit otherwise. |
| skillVersion | string | Grandet Skill version when called from the Skill, e.g. "0.3.0". Omit otherwise. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"provider"
],
"properties": {
"asOf": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Evaluate as of this UTC time (ISO 8601, e.g. \"2026-10-16T12:00:00Z\"). Omit to evaluate now."
},
"host": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "The assistant or app making this call, e.g. \"claude-code\" or \"codex\". Attribution only; it does not change results."
},
"lang": {
"enum": [
"en",
"zh-CN"
],
"type": "string",
"default": "en",
"description": "Answer language: \"en\" or \"zh-CN\"."
},
"name": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "The catalogue's 20-character hexadecimal raw-name ID (not the name text). Send exactly one of model or name."
},
"model": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Model to look up: a catalogue ID, an exact model name or a natural name such as \"claude-sonnet-5-5\". Send exactly one of model or name. An ambiguous name returns NEEDS_CLARIFICATION with candidates."
},
"rowId": {
"type": "string",
"maxLength": 512,
"description": "The rowId of the selected row, to read that exact declaration."
},
"provider": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "The sourceId of the row to inspect (the site host, e.g. \"api.example.com\"), not the operator ID."
},
"offerPage": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page of this provider's declarations, starting at 1. Follow it when rowId is absent."
},
"targetApp": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue ID of the app that will use the API, e.g. \"openclaw\", \"claude-code\" or \"codex\". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used."
},
"releaseSet": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Pin a published data release by its release-set hash. Omit to use the current release."
},
"skillBuild": {
"type": "string",
"maxLength": 256,
"description": "Grandet Skill build ID when called from the Skill. Omit otherwise."
},
"skillVersion": {
"type": "string",
"maxLength": 32,
"description": "Grandet Skill version when called from the Skill, e.g. \"0.3.0\". Omit otherwise."
}
},
"additionalProperties": false
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"name"
],
"properties": {
"host": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "The assistant or app making this call, e.g. \"claude-code\" or \"codex\". Attribution only; it does not change results."
},
"lang": {
"enum": [
"en",
"zh-CN"
],
"type": "string",
"default": "en",
"description": "Answer language: \"en\" or \"zh-CN\"."
},
"name": {
"type": "string",
"maxLength": 256,
"minLength": 1,
"description": "Model name text to look up, e.g. \"sonnet\" or \"deepseek v4\"."
},
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Result page, starting at 1."
},
"targetApp": {
"type": "string",
"pattern": "^[a-zA-Z0-9._/-]{1,64}$",
"description": "Catalogue ID of the app that will use the API, e.g. \"openclaw\", \"claude-code\" or \"codex\". Selects compatible protocols and connection steps. Send it only when the user says where the API will be used."
},
"skillBuild": {
"type": "string",
"maxLength": 256,
"description": "Grandet Skill build ID when called from the Skill. Omit otherwise."
},
"skillVersion": {
"type": "string",
"maxLength": 32,
"description": "Grandet Skill version when called from the Skill, e.g. \"0.3.0\". Omit otherwise."
}
},
"additionalProperties": false
}