MCPInstall

docyrus-architect

Use the Docyrus Architect MCP tools to manage data sources, fields, enums, apps, custom queries, and query data in the Docyrus platform. Use when the user asks to create, update, delete, or query data sources, fields, enum options, apps, or custom query templates via the docyrus-architect MCP server. Also use when building reports, dashboards, or performing data analysis that requires querying Docyrus data sources or running custom SQL templates with filters, aggregations, formulas, pivots, or child queries.

Installs
75
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/docyrus/agent-skills --skill docyrus-architect
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads docyrus-architect automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Docyrus Architect

Guide for using docyrus-architect MCP tools to manage and query data sources in Docyrus.

Tool Overview

Discovery Tools

  • get_apps — List tenant apps. Use before create_data_source to find the target tenantAppId.
  • get_data_source_list — Search data sources by name/description or app ID.
  • get_data_source_list_with_fields — Same as above but includes field names and types.
  • get_data_source_metadata — Get full metadata (fields with IDs, types, slugs, enums, relations) for a data source. Always call this before querying to discover field slugs and relation targets.
  • get_enums_by_field_id — Get enum options for select/status/tagSelect fields.
  • read_current_user / read_tenant_user — Get user info.

Data Source CRUD

  • create_data_source — Create a new data source (table). Default fields auto-created: id, autonumber_id, name, record_owner, created_on, created_by, last_modified_by, last_modified_on.
  • create_data_sources_batch — Create multiple data sources with fields and enum options in a single atomic transaction. Supports cross-referencing data sources within the batch by slug for field-relation types. Max 20 data sources per batch.
  • update_data_source — Update data source properties.
  • delete_data_source — Delete a data source and all its data.

Field Management

  • create_fields — Batch create fields. Set relationDataSourceId for field-relation types.
  • update_fields — Batch update fields. Non-CUSTOM fields get customization records.
  • delete_fields — Batch delete fields by ID.

Enum Management

  • create_enums — Create enum options for select/tagSelect/status fields. Pass fieldId for field-specific enums or enumSetId for shared enum sets.
  • update_enums — Update enum option name/slug/color/icon.
  • delete_enums — Delete enum options.

OpenAPI Spec

  • regenerate_openapi_spec — Regenerate and upload the tenant's OpenAPI spec after data source or field changes. Accepts optional dataSourceSlugs (string array) to limit scope; omit to include all data sources. Returns the publicUrl of the uploaded spec. Call this after any create_data_source, update_data_source, delete_data_source, create_fields, update_fields, or delete_fields operation to keep the spec in sync.

Query & Compute

  • query_data_source — Read data with filtering, sorting, aggregation, formulas, pivots, child queries. See references/data-source-query-guide.md for complete query syntax.
  • evaluate_jsonata — Test JSONata expressions. Use for validating computed field formulas.

Custom Queries

  • get_custom_queries — List non-archived custom queries for the tenant.
  • get_custom_query_by_id — Read full custom query definition (name, description, query, filters).
  • create_custom_query — Create a saved SQL template using Handlebars variables and optional filter definitions.
  • update_custom_query — Update selected fields of an existing custom query (partial update).
  • delete_custom_query — Soft-delete (archive) a custom query.
  • run_custom_query — Execute a saved custom query with runtime filters, pagination offset, and optional simulate mode.

Common Workflows

Create a Data Source with Fields and Enums

Single data source approach:

  1. Call get_apps to find the target app ID
  2. Call create_data_source with title (plural), name (singular), slug (singular snake_case)
  3. Call create_fields with all custom fields (default fields already exist)
  4. For select/tagSelect/status fields, call create_enums with the field ID from step 3
  5. Call regenerate_openapi_spec to update the OpenAPI spec

Batch approach (recommended for multiple data sources):

  1. Call get_apps to find the target app ID (optional, defaults to "Default Customizations App")
  2. Call create_data_sources_batch with an array of data source definitions (max 20)
    • Each data source includes title, name, slug, and fields array
    • Fields can include inline enumOptions for select/status/tagSelect fields
    • Use slug references for relationDataSourceId to reference other data sources in the same batch
    • All data sources, fields, and enums are created in a single atomic transaction
  3. Call regenerate_openapi_spec to update the OpenAPI spec

Query Data

  1. Call get_data_source_metadata to discover field slugs, types, and relations
  2. Call query_data_source with appropriate columns, filters, and sorting
  3. For advanced queries (aggregations, formulas, pivots, child queries), read references/data-source-query-guide.md

Modify Existing Data Source

  1. Call get_data_source_metadata to see current fields
  2. Use create_fields / update_fields / delete_fields as needed
  3. For enum changes, use get_enums_by_field_id first, then create_enums / update_enums / delete_enums
  4. Call regenerate_openapi_spec to update the OpenAPI spec

Manage a Custom Query Lifecycle

  1. Call get_custom_queries to find an existing query or confirm naming
  2. Call create_custom_query with name, query, and optional description/filters
  3. Call get_custom_query_by_id to verify the saved template and filter definitions
  4. Use update_custom_query for targeted edits (rename, revise SQL template, update filter definitions)
  5. Use delete_custom_query only when archival is explicitly requested

Run and Debug a Custom Query

  1. Call get_custom_query_by_id first to inspect SQL template and available filter slugs
  2. Build runtime filters with rules[].field values that match the query's filter slugs
  3. Call run_custom_query with simulate: true for complex or untrusted queries to inspect plan output
  4. Call run_custom_query with simulate: false (or omitted) to fetch real data
  5. Use offset for pagination and expect a max of 50,000 rows per execution

Key Rules

Data Source Creation

  • title is plural (e.g., "Sales Orders"), name is singular (e.g., "Sales Order"), slug is singular snake_case (e.g., "sales_order")
  • Use defaultEditFormTarget: "tab" for complex forms, "side" for simple ones
  • Enable pluginActivityView for CRM-type data sources (leads, contacts, deals)
  • Enable pluginComments for collaborative data sources
  • Enable pluginFile when users need to attach files to records
  • Enable pluginDocyment when users need rich text documents per record

Field Types

  • field-relation requires relationDataSourceId — the ID (UUID) of the related data source, or in batch operations, the slug of another data source in the same batch
  • field-list is a virtual field showing child records (one-to-many) — not stored in DB
  • field-select / field-tagSelect / field-status need enum options:
    • In create_fields: call create_enums after field creation
    • In create_data_sources_batch: include inline enumOptions array in the field definition
  • field-formula uses JSONata expressions — test with evaluate_jsonata first
  • field-inlineData stores array of objects, field-inlineForm stores single nested object
  • Field slug must be snake_case matching ^[a-z][a-z0-9_]*$
  • Enum option slug must be snake_case matching ^[a-z][a-z0-9_]*$ (auto-generated from name if not provided)

Batch Operations

  • create_data_sources_batch creates up to 20 data sources in a single transaction
  • Within a batch, reference other data sources using their slug for relationDataSourceId
  • For external data sources (created outside the batch), use the UUID for relationDataSourceId
  • Data source slugs must be unique within the batch (validation error otherwise)
  • Inline enum options are defined per-field using the enumOptions array
  • Each enum option in enumOptions can specify: name, slug, color, icon, sortOrder
  • If a batch operation fails, all changes are rolled back (atomic transaction)
  • Use batch operations when creating related data sources to avoid multiple API calls and ensure consistency

Querying

  • Use dataSourceId (UUID) to identify which data source to query
  • columns is a comma-separated string of field slugs, not an array
  • For aggregations, always use id field for count calculations
  • Relation expansion: relation_field(sub_field1, sub_field2) selects nested columns
  • Spread operator: ...relation_field(alias:sub_field) flattens into root object
  • Filter on related fields: rel_{{relation_slug}}/{{field_slug}}
  • Date filters have shortcut operators like today, this_month, last_30_days

query_data_source Required Parameters

All parameters are required in the MCP tool schema (most accept null):

  • dataSourceId: string (required, non-null)
  • columns: string | null
  • filters: object | null
  • filterKeyword: string | null
  • orderBy: array | null
  • limit: number | null (default: 1000)
  • offset: number | null
  • fullCount: boolean | null
  • recordId: string | null (fetch single record by ID)
  • calculations: array | null
  • distinctColumns: array | null
  • formulas: array | null
  • childQueries: array | null
  • pivot: object | null

Custom Query Rules

  • Treat custom query query content as a Handlebars SQL template, not static SQL.
  • Use built-in context variables in templates when relevant: TENANT_ID, TENANT_SCHEMA, USER_ID, USER_EMAIL, USER_FIRSTNAME, USER_LASTNAME, USER_FULLNAME.
  • Use {{filter FILTERS.<slug> <column_expression>}} for optional runtime filtering. If no runtime value is provided, the helper resolves to 1=1.
  • Keep filters definitions in create_custom_query / update_custom_query aligned with template usage:
    • template usage: FILTERS.<slug>
    • runtime rule field: <slug>
    • filter definition slug: <slug>
  • Prefer simulate: true before running expensive queries to inspect EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) output.
  • Respect runtime limits on run_custom_query: 50,000 row cap, 15s timeout for normal execution, 30s timeout for simulate mode.
  • Use delete_custom_query as an archival action (soft delete), not permanent deletion.
  • For JSONB-backed simple data sources, access custom fields with (table_alias."data"->>'field-uuid')::type.

References

  • Data Source Query Guide — Up-to-date reference for query_data_source including columns, filters, orderBy, pagination, calculations, formulas, pivots, child queries, and operator details.
  • Formula Design Guide (LLM) — Up-to-date guide for designing formula payloads used in query requests.
  • Custom Query Guide — Full lifecycle and execution reference for get_custom_queries, get_custom_query_by_id, create_custom_query, update_custom_query, delete_custom_query, and run_custom_query.

FAQ

What does the docyrus-architect skill do?

Use the Docyrus Architect MCP tools to manage data sources, fields, enums, apps, custom queries, and query data in the Docyrus platform. Use when the user asks to create, update, delete, or query data sources, fields, enum options, apps, or custom query templates via the docyrus-architect MCP server. Also use when building reports, dashboards, or performing data analysis that requires querying Docyrus data sources or running custom SQL templates with filters, aggregations, formulas, pivots, or child queries.

How do I install docyrus-architect?

Run npx skills add https://github.com/docyrus/agent-skills --skill docyrus-architect in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/docyrus-architect/ (personal) or .claude/skills/docyrus-architect/ (project).

Which AI agents can use docyrus-architect?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is docyrus-architect safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains docyrus-architect?

It is published by docyrus in docyrus/agent-skills. It has 75 recorded installs.

More from docyrus/agent-skills

View all →

docyrus-api-dev

docyrus/agent-skills

Develop applications using the Docyrus API with @docyrus/api-client and @docyrus/signin libraries. Use when building apps that authenticate with Docyrus OAuth2 (PKCE, iframe, client credentials, device code), make REST API calls to Docyrus data source endpoints, construct query payloads with filters, aggregations, formulas, pivots, and child queries, or integrate with external connectors (discover connectors, send requests through provider auth, run actions). Triggers on tasks involving Docyrus API integration, @docyrus/api-client usage, @docyrus/signin authentication, data source query building, Docyrus REST endpoint consumption, connector discovery, or external provider requests.

Backend & APIs826 installs

docyrus-cli-app

docyrus/agent-skills

Use the Docyrus CLI (docyrus) to interact with the Docyrus platform from the terminal. Use when the user asks to authenticate, list apps, query or manage data records (ds), manage dev app data source schema objects (studio) including data sources, fields, enums, data views, forms, webforms, HTML/PDF export templates, and email templates, manage automations and their triggers/action nodes (automation), build or edit custom AI agents and their sub-resources (agent), set an app's AI agent context or manage app-scoped AI tools (apps), list tenant email accounts and send emails (messaging), manage tenant account settings — brands, the current user's profile, and tenant regional/formatting preferences (account), discover and call connectors (connect), send API requests, switch tenants/accounts, discover tenant OpenAPI specs, drive browser automation (browser), chat with platform agents (docy), launch the pi cowork/coding agents (worky/cody/coder), run the agent br

docyrus-platform

docyrus/agent-skills

Architecture and building-blocks reference for the Docyrus platform — what the platform is made of (apps, data sources, fields, enumerations, custom queries, automations) and how the pieces fit together. Use when you need conceptual context about how Docyrus works, what its building blocks and capabilities are, or to decide which dedicated skill to use for a task. This is the conceptual map and router; hands-on how-to lives in the dedicated design / CLI / API skills it points to (data sources, automations, agents, AI tools, templates, webforms, ACL, querying, the CLI, and the REST API).

Backend & APIs222 installs

docyrus-api-doctor

docyrus/agent-skills

Run after making Docyrus API changes to catch bugs, performance issues, and code quality problems. Use when implementing or modifying code that uses Docyrus collection hooks (.list, .get, .create, .update, .delete), direct RestApiClient calls, query payloads with filters/calculations/formulas/childQueries/pivots, or TanStack Query integration with Docyrus data sources. Triggers on tasks involving Docyrus API logic, data fetching, mutations, or query payload construction.

Backend & APIs91 installs

docyrus-app-dev

docyrus/agent-skills

Build React TypeScript web applications using Docyrus as a backend. Use when creating or modifying apps that authenticate with Docyrus OAuth2, fetch/mutate data via the @docyrus/api-client library, use auto-generated collections for CRUD operations, or build queries with filters, aggregations, formulas, pivots, and child queries against Docyrus data sources. Triggers on tasks involving @docyrus/api-client, @docyrus/signin, Docyrus collections, data source queries, or Docyrus-backed React app development.

Backend & APIs87 installs

docyrus-app-ui-design

docyrus/agent-skills

Open the skill to read its SKILL.md instructions.

Popular ai & agents skills

View category →

google-agents-cli-publish

google/agents-cli

This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).

AI & Agents513.9K installs

google-agents-cli-eval

google/agents-cli

This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).

AI & Agents513.5K installs

skill-creator

anthropics/skills

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

OfficialAI & Agents416.4K installs

codex-pet

prime-skills/runcomfy-agent-skills

Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.

AI & Agents402.1K installs

full-output-enforcement

leonxlnx/taste-skill

Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.

AI & Agents401K installs

executing-plans

obra/superpowers

Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available

AI & Agents245.7K installs