PlanTierFeature
One tier's curated feature/limit values for the comparison matrix (#1138). Single source of truth = ``config/plan_tiers.py`` (env-overridable). Price is intentionally omitted — pricing lives in www / the payment service; this surface is feature *limits* only, so the OSS Plan page never fabricates an amount (consistent with #1141 / #1096). Numeric fields use ``0`` for "not available on this tier"; the frontend renders that as ✗.
Properties
| Name | Type | Description |
|---|---|---|
| name | string | |
| display_name | string | |
| max_contexts | integer | |
| max_members | integer | |
| owned_workspaces | integer | |
| memory_limit | integer | |
| memories_per_day | integer | |
| storage_limit_bytes | integer | |
| mcp_calls_per_day | integer | |
| rest_calls_per_day | integer | |
| public_calls_per_day | integer | |
| max_resource_tokens | integer | |
| max_connectors | integer | |
| max_content_chunk_contexts | integer | |
| max_llm_selector_contexts | integer | |
| analysis_runs_per_day | integer | |
| sleep_enabled_contexts_limit | integer | |
| reranking | boolean | |
| managed_embeddings | boolean | |
| managed_llm | boolean | |
| secret_store | boolean | |
| shared_contexts | boolean | |
| team_invitations | boolean | |
| resources | boolean | |
| connectors | boolean | |
| public_contexts | boolean | |
| content_chunks | boolean | |
| llm_selector | boolean | |
| operation_history | boolean | |
| feature_enforcement | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/kagura-ai-com/json-schema/kagura-ai-com-plan-tier-feature-schema.json",
"title": "PlanTierFeature",
"description": "One tier's curated feature/limit values for the comparison matrix (#1138).\n\nSingle source of truth = ``config/plan_tiers.py`` (env-overridable). Price is\nintentionally omitted — pricing lives in www / the payment service; this\nsurface is feature *limits* only, so the OSS Plan page never fabricates an\namount (consistent with #1141 / #1096). Numeric fields use ``0`` for \"not\navailable on this tier\"; the frontend renders that as ✗.",
"x-generated": "2026-11-13",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/kagura-ai-com-openapi.json#/components/schemas/PlanTierFeature",
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"display_name": {
"type": "string",
"title": "Display Name"
},
"max_contexts": {
"type": "integer",
"title": "Max Contexts"
},
"max_members": {
"type": "integer",
"title": "Max Members"
},
"owned_workspaces": {
"type": "integer",
"title": "Owned Workspaces"
},
"memory_limit": {
"type": "integer",
"title": "Memory Limit"
},
"memories_per_day": {
"type": "integer",
"title": "Memories Per Day"
},
"storage_limit_bytes": {
"type": "integer",
"title": "Storage Limit Bytes"
},
"mcp_calls_per_day": {
"type": "integer",
"title": "Mcp Calls Per Day"
},
"rest_calls_per_day": {
"type": "integer",
"title": "Rest Calls Per Day"
},
"public_calls_per_day": {
"type": "integer",
"title": "Public Calls Per Day"
},
"max_resource_tokens": {
"type": "integer",
"title": "Max Resource Tokens"
},
"max_connectors": {
"type": "integer",
"title": "Max Connectors"
},
"max_content_chunk_contexts": {
"type": "integer",
"title": "Max Content Chunk Contexts"
},
"max_llm_selector_contexts": {
"type": "integer",
"title": "Max Llm Selector Contexts"
},
"analysis_runs_per_day": {
"type": "integer",
"title": "Analysis Runs Per Day"
},
"sleep_enabled_contexts_limit": {
"type": "integer",
"title": "Sleep Enabled Contexts Limit"
},
"reranking": {
"type": "boolean",
"title": "Reranking"
},
"managed_embeddings": {
"type": "boolean",
"title": "Managed Embeddings"
},
"managed_llm": {
"type": "boolean",
"title": "Managed Llm"
},
"secret_store": {
"type": "boolean",
"title": "Secret Store"
},
"shared_contexts": {
"type": "boolean",
"title": "Shared Contexts"
},
"team_invitations": {
"type": "boolean",
"title": "Team Invitations"
},
"resources": {
"type": "boolean",
"title": "Resources"
},
"connectors": {
"type": "boolean",
"title": "Connectors"
},
"public_contexts": {
"type": "boolean",
"title": "Public Contexts"
},
"content_chunks": {
"type": "boolean",
"title": "Content Chunks"
},
"llm_selector": {
"type": "boolean",
"title": "Llm Selector"
},
"operation_history": {
"type": "boolean",
"title": "Operation History",
"default": false
},
"feature_enforcement": {
"additionalProperties": {
"type": "string"
},
"type": "object",
"title": "Feature Enforcement"
}
},
"type": "object",
"required": [
"name",
"display_name",
"max_contexts",
"max_members",
"owned_workspaces",
"memory_limit",
"memories_per_day",
"storage_limit_bytes",
"mcp_calls_per_day",
"rest_calls_per_day",
"public_calls_per_day",
"max_resource_tokens",
"max_connectors",
"max_content_chunk_contexts",
"max_llm_selector_contexts",
"analysis_runs_per_day",
"sleep_enabled_contexts_limit",
"reranking",
"managed_embeddings",
"managed_llm",
"secret_store",
"shared_contexts",
"team_invitations",
"resources",
"connectors",
"public_contexts",
"content_chunks",
"llm_selector",
"feature_enforcement"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/kagura-ai-com-plan-tier-feature"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.