/bkend-data
bkend.ai database — CRUD, column types, filtering, sorting, relations, indexing. Triggers: bkend table, bkend CRUD, bkend column, bkend relation, bkend data
$ npx -y skills add popup-studio-ai/bkit-claude-code --skill bkend-data --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/bkend-data
Context preview
The summary Claude sees to decide when to auto-load this skill.
bkend.ai database — CRUD, column types, filtering, sorting, relations, indexing. Triggers: bkend table, bkend CRUD, bkend column, bkend relation, bkend data
SKILL.md
bkend-data.SKILL.mdname: bkend-data
classification: capability
classification-reason: Pattern guidance may overlap with model's built-in knowledge as it improves
deprecation-risk: medium
effort: medium
description: |
bkend.ai database — CRUD, column types, filtering, sorting, relations, indexing.
Triggers: bkend table, bkend CRUD, bkend column, bkend relation, bkend data
user-invocable: false
agent: bkit:bkend-expert
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
- mcp__bkend__*
imports:
- ${PLUGIN_ROOT}/templates/shared/bkend-patterns.mdbkend.ai Database Guide
Column Types (7)
| Type | Description | Example | |------|-------------|---------| | String | Text | name, email | | Number | Numeric | age, price | | Boolean | True/false | isActive | | Date | Date/time | birthDate | | Array | Array | tags: ["a","b"] | | Object | Nested object | address: {city, zip} | | Mixed | Any type | metadata |
Constraints
- `required`: Field must have a value
- `unique`: No duplicate values allowed
- `default`: Default value when not provided
Auto System Fields
| Field | Type | Description | |-------|------|-------------| | id | String | Auto-generated unique ID | | createdBy | String | Creator user ID | | createdAt | Date | Creation timestamp | | updatedAt | Date | Last update timestamp |
**Important**: bkend uses `id` (NOT `_id`) in all API responses.
MCP Table Management Tools
| Tool | Purpose | Scope | |------|---------|-------| | `backend_table_create` | Create table | table:create | | `backend_table_list` | List tables | table:read | | `backend_table_get` | Get table detail + schema | table:read | | `backend_table_delete` | Delete table | table:delete | | `backend_field_manage` | Add/modify/delete fields | table:update | | `backend_index_manage` | Manage indexes | table:update | | `backend_schema_version_list` | Schema version history | table:read | | `backend_schema_version_get` | Schema version detail | table:read | | `backend_schema_version_apply` | Apply schema version (rollback) | table:update | | `backend_index_version_list` | Index version history | table:read | | `backend_index_version_get` | Index version detail | table:read |
MCP Data CRUD Tools
| Tool | Purpose | Key Parameters | |------|---------|----------------| | `backend_data_list` | List records (filter, sort, paginate) | tableId, page?, limit?, sortBy?, sortDirection?, andFilters?, orFilters? | | `backend_data_get` | Get single record | tableId, recordId | | `backend_data_create` | Create record | tableId, data: { field: value } | | `backend_data_update` | Partial update record | tableId, recordId, data: { field: value } | | `backend_data_delete` | Delete record | tableId, recordId |
All Data CRUD tools require: organizationId, projectId, environmentId (from `get_context`).
Filter Operators
| Operator | Meaning | Example | |----------|---------|---------| | `$eq` | Equal | `{ "status": { "$eq": "active" } }` | | `$ne` | Not equal | `{ "role": { "$ne": "admin" } }` | | `$gt` / `$gte` | Greater than / >= | `{ "age": { "$gt": 18 } }` | | `$lt` / `$lte` | Less than / <= | `{ "price": { "$lt": 100 } }` | | `$in` / `$nin` | In / Not in array | `{ "tag": { "$in": ["a","b"] } }` |
MCP Guide Docs (via search_docs)
Use `search_docs` tool to access these guides:
| Doc ID | Content | |--------|---------| | `4_howto_implement_data_crud` | CRUD implementation patterns | | `7_code_examples_data` | CRUD + file upload code examples |
Use `get_operation_schema` to get any tool's input/output schema.
REST Data API
| Method | Endpoint | Description | |--------|----------|-------------| | GET | /v1/data/{table} | List (filter, sort, page, limit) | | POST | /v1/data/{table} | Create | | GET | /v1/data/{table}/{id} | Get single | | PATCH | /v1/data/{table}/{id} | Partial update | | DELETE | /v1/data/{table}/{id} | Delete |
Filtering
- Text search: `?search=keyword`
- AND filter: `?filter[field1]=value1&filter[field2]=value2`
- Comparison operators: `$eq`, `$ne`, `$gt`, `$gte`, `$lt`, `$lte`, `$in`, `$nin`
- Sort: `?sort=field:asc` (or desc)
- Pagination: `?page=1&limit=20` (default 20, max 100)
Relations & Joins
- Configure table relationships
- Join queries for related data retrieval
Index Management
- Single/compound index creation
- Manage via MCP `backend_index_manage`
- Essential for query performance optimization
Official Documentation (Live Reference)
For the latest database documentation, use WebFetch:
- MCP Data Tools: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/en/mcp/05-data-tools.md
- MCP Table Tools: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/en/mcp/04-table-tools.md
- Database Guide: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/en/database/01-overview.md
- Full TOC: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/SUMMARY.md
Read more
name: bkend-data
classification: capability
classification-reason: Pattern guidance may overlap with model's built-in knowledge as it improves
deprecation-risk: medium
effort: medium
description: |
bkend.ai database — CRUD, column types, filtering, sorting, relations, indexing.
Triggers: bkend table, bkend CRUD, bkend column, bkend relation, bkend data
user-invocable: false
agent: bkit:bkend-expert
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
- mcp__bkend__*
imports:
- ${PLUGIN_ROOT}/templates/shared/bkend-patterns.mdbkend.ai Database Guide
Column Types (7)
| Type | Description | Example | |------|-------------|---------| | String | Text | name, email | | Number | Numeric | age, price | | Boolean | True/false | isActive | | Date | Date/time | birthDate | | Array | Array | tags: ["a","b"] | | Object | Nested object | address: {city, zip} | | Mixed | Any type | metadata |
Constraints
- `required`: Field must have a value
- `unique`: No duplicate values allowed
- `default`: Default value when not provided
Auto System Fields
| Field | Type | Description | |-------|------|-------------| | id | String | Auto-generated unique ID | | createdBy | String | Creator user ID | | createdAt | Date | Creation timestamp | | updatedAt | Date | Last update timestamp |
**Important**: bkend uses `id` (NOT `_id`) in all API responses.
MCP Table Management Tools
| Tool | Purpose | Scope | |------|---------|-------| | `backend_table_create` | Create table | table:create | | `backend_table_list` | List tables | table:read | | `backend_table_get` | Get table detail + schema | table:read | | `backend_table_delete` | Delete table | table:delete | | `backend_field_manage` | Add/modify/delete fields | table:update | | `backend_index_manage` | Manage indexes | table:update | | `backend_schema_version_list` | Schema version history | table:read | | `backend_schema_version_get` | Schema version detail | table:read | | `backend_schema_version_apply` | Apply schema version (rollback) | table:update | | `backend_index_version_list` | Index version history | table:read | | `backend_index_version_get` | Index version detail | table:read |
MCP Data CRUD Tools
| Tool | Purpose | Key Parameters | |------|---------|----------------| | `backend_data_list` | List records (filter, sort, paginate) | tableId, page?, limit?, sortBy?, sortDirection?, andFilters?, orFilters? | | `backend_data_get` | Get single record | tableId, recordId | | `backend_data_create` | Create record | tableId, data: { field: value } | | `backend_data_update` | Partial update record | tableId, recordId, data: { field: value } | | `backend_data_delete` | Delete record | tableId, recordId |
All Data CRUD tools require: organizationId, projectId, environmentId (from `get_context`).
Filter Operators
| Operator | Meaning | Example | |----------|---------|---------| | `$eq` | Equal | `{ "status": { "$eq": "active" } }` | | `$ne` | Not equal | `{ "role": { "$ne": "admin" } }` | | `$gt` / `$gte` | Greater than / >= | `{ "age": { "$gt": 18 } }` | | `$lt` / `$lte` | Less than / <= | `{ "price": { "$lt": 100 } }` | | `$in` / `$nin` | In / Not in array | `{ "tag": { "$in": ["a","b"] } }` |
MCP Guide Docs (via search_docs)
Use `search_docs` tool to access these guides:
| Doc ID | Content | |--------|---------| | `4_howto_implement_data_crud` | CRUD implementation patterns | | `7_code_examples_data` | CRUD + file upload code examples |
Use `get_operation_schema` to get any tool's input/output schema.
REST Data API
| Method | Endpoint | Description | |--------|----------|-------------| | GET | /v1/data/{table} | List (filter, sort, page, limit) | | POST | /v1/data/{table} | Create | | GET | /v1/data/{table}/{id} | Get single | | PATCH | /v1/data/{table}/{id} | Partial update | | DELETE | /v1/data/{table}/{id} | Delete |
Filtering
- Text search: `?search=keyword`
- AND filter: `?filter[field1]=value1&filter[field2]=value2`
- Comparison operators: `$eq`, `$ne`, `$gt`, `$gte`, `$lt`, `$lte`, `$in`, `$nin`
- Sort: `?sort=field:asc` (or desc)
- Pagination: `?page=1&limit=20` (default 20, max 100)
Relations & Joins
- Configure table relationships
- Join queries for related data retrieval
Index Management
- Single/compound index creation
- Manage via MCP `backend_index_manage`
- Essential for query performance optimization
Official Documentation (Live Reference)
For the latest database documentation, use WebFetch:
- MCP Data Tools: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/en/mcp/05-data-tools.md
- MCP Table Tools: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/en/mcp/04-table-tools.md
- Database Guide: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/en/database/01-overview.md
- Full TOC: https://raw.githubusercontent.com/popup-studio-ai/bkend-docs/main/SUMMARY.md
A Claude Code plugin that verifies AI-generated code against its own design specs. Three commands. Anyone — even someone vibe-coding for the first time — can ship robust, production-quality software.
Repo: popup-studio-ai/bkit-claude-code
Other skills on bkit.
- /audit
View audit logs, decision traces, and session history for AI transparency. ACTION_TYPES (19 entries) include PDCA events (phase_transition, gate_passed/failed, agent_spawned/completed/failed, rollback_executed, destructive_blocked) and Sprint events (sprint_paused,
Open skill - /bkend-auth
bkend.ai authentication — email/social login, JWT tokens, RBAC, session management. Triggers: bkend auth, bkend login, bkend signup, bkend JWT, bkend RBAC
Open skill - /bkend-cookbook
bkend.ai project tutorials (todo to SaaS) and common error troubleshooting. Triggers: bkend tutorial, bkend cookbook, bkend troubleshooting
Open skill - /bkend-quickstart
bkend.ai onboarding — MCP setup, resource hierarchy, tenant/user model, first project. Triggers: bkend quickstart, bkend onboarding, bkend setup, bkend MCP
Open skill - /bkend-storage
bkend.ai file storage — upload (presigned URL), download (CDN), visibility levels, buckets. Triggers: bkend file, bkend upload, bkend download, bkend storage, bkend presigned URL
Open skill - /bkit-evals
Run skill evals via evals/runner.js — wrapper validates skill names, captures stdout/stderr, persists JSON results. Triggers: bkit evals, evals run, skill quality, eval runner
Open skill

