Agent skill

Agents

by mendixlabs in mendixlabs/mxcli

Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts.

Apache-2.0Auto-check passedKnowledge Management

Install Agents

skills CLI
$ npx skills add mendixlabs/mxcli --skill agents -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mendixlabs/mxcli agents --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mendixlabs/mxcli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/mendix/agents .claude/skills/agents && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
agents
GitHub stars
128
Used in
1 other repo
Token cost
~2.2k tokens
SKILL.md length
652 words
Files
1
Skills in repo
75
Repo updated
First seen
Licence
Apache-2.0

At a glance

Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts.

  • Adding GenAI features to a Mendix app
  • SKILL.md covers Overview, Syntax, Altering existing documents and Gotchas, plus 3 more sections
  • Needs OPENAI_KEY
  • Wiring an LLM model

What it does

Agents is an agent skill from mendixlabs/mxcli. Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts. Use when adding GenAI features to a Mendix app, wiring an LLM model or knowledge base, or listing/describing existing agent documents. Requires AgentEditorCommons and Mendix 11.9+.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Knowledge Management, covering Knowledge bases and MCP servers. It works with Model Context Protocol. The repository describes itself as: Mendix cli tool, a headless way to work with Mendix projects. Enables Mendix projects for use with 3rd party agentic coding tools like Claude Code and Copilot. Includes a… The licence is Apache-2.0.

When your agent uses it

  • Adding GenAI features to a Mendix app
  • Wiring an LLM model
  • Listing/describing existing agent documents

Example prompts

  • “/agents”

Requirements

  • A credential in OPENAI_KEY

What it can do on your machine

Read from SKILL.md and the folder at commit a924d11. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are sql).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • OPENAI_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Agents loads about 2.2k tokens when it runs. Until then it costs about 83 tokens; SKILL.md has 652 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~83
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from mendixlabs/mxcli at commit a924d11, republished under its Apache-2.0 licence (© mendixlabs). 652 words, ~2,178 tokens.

Download SKILL.mdSave it as .claude/skills/agents/SKILL.md (or your agent's skills folder).
name
agents
description
Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts. Use when adding GenAI features to a Mendix app, wiring an LLM model or knowledge base, or listing/describing existing agent documents. Requires AgentEditorCommons and Mendix 11.9+.

Agents

Overview

Four AI agent document types stored as JSON inside Mendix MPR files:

TypeCREATE keywordNotes
Modelcreate ai modelGenAI model configuration; required by Agent
Knowledge Basecreate knowledge baseKB source; referenced by Agent body
Consumed MCP Servicecreate consumed mcp serviceMCP tool server; referenced by Agent body
Agentcreate agentOrchestrates model + tools + prompts

Requires: Mendix 11.9+ and the full agent-editor marketplace stack (7 modules) — AgentEditorCommons depends transitively on the other six, so all must be installed:

ModuleRole
GenAICommonsCore AI types (Request/Response, DeployedModel, Tool, KnowledgeBase)
MxGenAIConnectorMendix Cloud AI backend, model config, embeddings
AgentCommonsAgent management (versioned agents, tools, KBs, MCP)
AgentEditorCommonsBridge to the Studio Pro Agent Editor extension
MCPClientMCP server connections, tool discovery/execution
ConversationalUIChat widgets, tool-approval UI, trace monitoring
EncryptionProvides the 32-char key models/KBs reference

Install them with mxcli marketplace install <id> -p app.mpr (or via Studio Pro). Also register ASU_AgentEditor as an after-startup microflow.

Syntax

Model
sql
mdl 1;
create ai model Module.MyModel (
  Provider: MxCloudGenAI,   -- default, can omit
  key: @Module.ApiKeyConst   -- must be a String constant
);

Provider is free-form, and nothing validates it. MDL passes the value straight through; MxCloudGenAI is only the default applied when you omit the property, not the only accepted value. Provider: OpenAI parses, writes, and round-trips through describe ai model — as does Provider: TotallyMadeUp.

That means a typo is caught by nothing in the headless path. Agent Editor documents are stored as custom blobs, and mxbuild contains no agent-editor strings at all, so mx check and the build both stay green and the fault surfaces only when Studio Pro opens the document.

mxcli deliberately does not enforce an allowlist, because the authoritative set of provider values is not available to it: the agent editor is a Studio Pro extension, its enum is not in generated/metamodel and not in mxbuild. Guessing a list risks rejecting a value Mendix accepts. Take the value from a model document Studio Pro created, rather than from memory or from this file.

Knowledge Base
sql
mdl 1;
create knowledge base Module.ProductDocs (
  Provider: MxCloudGenAI,
  key: @Module.KBKeyConst
);
Consumed MCP Service
sql
mdl 1;
create consumed mcp service Module.WebSearch (
  ProtocolVersion: v2025_03_26,
  version: '1.0',
  ConnectionTimeoutSeconds: 30,
  documentation: 'Web search MCP server'
);
Agent (full syntax)
sql
mdl 1;
create agent Module.MyAgent (
  UsageType: task,              -- Task | Conversational
  model: Module.MyModel,        -- must exist
  description: 'Agent description',
  MaxTokens: 4096,
  Temperature: 0.7,             -- float
  TopP: 0.9,                    -- float
  ToolChoice: Auto,
  variables: ("Language": EntityAttribute, "Name": string),
  SystemPrompt: $$multi-line
prompt here.$$,
  UserPrompt: 'Single line prompt.'
)
{
  mcp service Module.WebSearch (
    Enabled: true
  )

  knowledge base KBAlias (
    source: Module.ProductDocs,
    collection: 'product-docs',
    MaxResults: 5,
    description: 'Product docs',
    Enabled: true
  )

  tool MyMicroflowTool (
    description: 'Fetch customer data',
    Enabled: true
  )
};

Altering existing documents

All four agent-editor document types support ALTER for targeted partial updates (no need to re-specify the whole document):

sql
mdl 1;
-- Model, Knowledge Base, Consumed MCP Service: SET-only (no collections)
alter ai model Module.MyModel set DisplayName = 'GPT-4 Turbo', KeyName = 'OPENAI_KEY';

alter knowledge base Module.MyKB set ModelDisplayName = 'text-embedding-3-small';

alter consumed mcp service Module.MyMCP
    set ConnectionTimeoutSeconds = 60, Version = '0.2.0';

-- Agent: SET for scalars, ADD/DROP for tools, MCP services, knowledge bases
alter agent Module.MyAgent
    set SystemPrompt = 'New prompt', Temperature = 0.7, MaxTokens = 4096
    add tool MyMicroflow ( Description: '...', Enabled: true )
    add mcp service Module.WeatherSvc ( Description: '...', Enabled: true )
    add knowledge base Docs ( Source: Module.MyKB, Collection: 'docs', MaxResults: 5 )
    drop tool OldTool
    drop mcp service Module.OldSvc
    drop knowledge base OldKB;

Property names match CREATE (SystemPrompt, UserPrompt, Temperature, MaxTokens, ToolChoice, Model, Entity, Description, UsageType, …). Unknown property names error out with unknown agent property: X. CREATE OR MODIFY remains available when you want a full replacement.

Gotchas

Show full SKILL.md (273 more words)Show less
Dollar-quoting for multi-line prompts

Single-quoted strings cannot span lines. Use $$...$$ for any SystemPrompt or UserPrompt that contains newlines. DESCRIBE always emits $$...$$ when the value contains newlines, so DESCRIBE output re-parses cleanly.

Portal-populated metadata fields

DisplayName, KeyName, KeyID, Environment, ResourceName, DeepLinkURL are populated by the Mendix portal at sync time. Do not set them manually in CREATE statements — they will be overwritten.

documentId vs qualifiedName

Each document has both a qualifiedName (e.g. Module.MyModel) and an opaque documentId UUID. The UUID is assigned by ASU_AgentEditor at runtime. Only qualifiedName is set by CREATE; cross-reference lookups resolve by scanning all documents for a matching name.

Drop order

Agents reference Model, Knowledge Base, and MCP Service documents. Always drop Agents before dropping their dependencies:

sql
mdl 1;
drop agent Module.MyAgent;
drop consumed mcp service Module.WebSearch;
drop knowledge base Module.ProductDocs;
drop ai model Module.MyModel;
Variables: syntax
  • "key": EntityAttribute — binds an attribute from the entity in the agent's context
  • "key": string — binds a plain string value
  • Keys must be quoted (string literals or quoted identifiers)
Association between BSON and MDL names

The feature uses CustomBlobDocument BSON type with a Contents field holding the JSON payload. The $type field is always "AgentEditorCommons$CustomBlobDocument". The document type is identified by the readableTypeName inside Metadata.

Common Patterns

Minimal agent (no tools)
sql
mdl 1;
create ai model Module.M (Provider: MxCloudGenAI, key: @Module.K);
create agent Module.A (
  UsageType: task,
  model: Module.M,
  SystemPrompt: 'You are a helpful assistant.',
  UserPrompt: 'Ask me anything.'
);
Check all agent documents in a module
sql
list ai models in module;
list knowledge bases in module;
list consumed mcp services in module;
list agents in module;

Calling Agents from Microflows

Dedicated call agent MDL syntax is not yet implemented. Use call java action with the AgentCommons Java actions instead:

sql
-- Single-call (Task) agent — no chat history
$response = call java action AgentCommons.Agent_Call_WithoutHistory(
  agent = $agent,
  UserMessage = $UserInput
);

-- Conversational agent — with chat history
$response = call java action AgentCommons.Agent_Call_WithHistory(
  agent = $agent,
  ChatContext = $ChatContext,
  UserMessage = $UserInput
);

-- Create a ChatContext wired to an agent (for ConversationalUI)
$ChatContext = call java action AgentCommons.ChatContext_Create_ForAgent(
  agent = $agent,
  ActionMicroflow = Module.HandleToolCall,
  context = $ContextObject
);

Retrieve the AgentCommons.Agent entity by qualified name before calling:

sql
retrieve $agent from AgentCommons.Agent
  where [QualifiedName = 'Module.MyAgent']
  first;

The AgentCommons.Agent entity is populated at runtime by ASU_AgentEditor from the agent documents you create with create agent.

AI agent documents

Model, Knowledge Base, Consumed MCP Service, Agent (LIST/DESCRIBE/CREATE/DROP, with variables, tools, KB tools, dollar-quoted multi-line prompts; requires AgentEditorCommons module, Mendix 11.9+)

© mendixlabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/mendix/agents of mendixlabs/mxcli.

Open the folder on GitHubat commit a924d11

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in mendixlabs/mxcli, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Agents next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Agents compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Agents this skillmendixlabs/mxcli1281 repos~2.2kAutomated safety check: PassApache-2.0
Arkon Editnduckmink/arkon1.5k—~1.6kAutomated safety check: PassCustom licence
Arkon Querynduckmink/arkon1.5k—~1kAutomated safety check: PassCustom licence
Arkon Reviewnduckmink/arkon1.5k—~1.3kAutomated safety check: PassCustom licence
Kb Guide0xranx/golembot323—~612Automated safety check: PassMIT
Confluence Expertalirezarezvani/claude-skills28k1 repos~3.1kAutomated safety check: PassMIT

Similar skills

  • Arkon Edit

    nduckmink/arkon

    Propose or directly apply edits to Arkon wiki pages, including proposing brand new pages.

    1.5k GitHub stars~1.6k tokensUpdated 4 mo ago
    Knowledge ManagementAuto-check passed
  • Arkon Query

    nduckmink/arkon

    Answer questions using the Arkon knowledge base. An agent skill from nduckmink/arkon.

    1.5k GitHub stars~1k tokensUpdated 4 mo ago
    Knowledge ManagementAuto-check passed
  • Arkon Review

    nduckmink/arkon

    Review, approve, request changes on, or reject pending wiki edit drafts in Arkon.

    1.5k GitHub stars~1.3k tokensUpdated 4 mo ago
    Knowledge ManagementAuto-check passed
  • Kb Guide

    0xranx/golembot

    Search, read, create, and update knowledge base entries via MCP-connected KB tools.

    323 GitHub stars~612 tokensUpdated 8 days ago
    Knowledge ManagementAuto-check passed
  • Confluence Expert

    alirezarezvani/claude-skills

    Atlassian Confluence expert for creating and managing spaces, knowledge bases, and documentation.

    28k GitHub starsUsed in 1 repo~3.1k tokens
    Knowledge ManagementAuto-check passed
  • Context Mode Indexer

    mksglu/context-mode

    Indexes a local file or project directory into context-mode's FTS5 knowledge base so later searches return focused snippets instead of rereading whole files.

    26k GitHub stars~328 tokensUpdated yesterday
    Knowledge ManagementAuto-check passed

More from mendixlabs/mxcli

All 75 skills in this repo
  • Mendix Odata Pushdown

    mendixlabs/mxcli

    Push OData query options into the SQL of a Mendix resource served by a read microflow, so $filter, $orderby, $top, $skip, $count and the key lookup reach the database instead of being silently…

    128 GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Mendix Vega Charts

    mendixlabs/mxcli

    Chart a Mendix app with Vega-Lite through a pluggable widget that takes the specification and the data as separate properties, so the model emits rows and never assembles a chart payload.

    128 GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Mendix Bulk Oql Dml

    mendixlabs/mxcli

    Run set-based INSERT, UPDATE and DELETE against Mendix entities through OQL statements, which the runtime supports and Studio Pro cannot author.

    128 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Mock REST APIs

    mendixlabs/mxcli

    Stand up an HTTP endpoint you control instead of a live third-party API, and point the Mendix app at it — Prism from an OpenAPI contract, a constant swap, or a forward proxy.

    128 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • REST Client

    mendixlabs/mxcli

    Call external REST APIs from Mendix — the three approaches (inline REST CALL, consumed REST client document, generated from OpenAPI) and how to choose.

    128 GitHub starsUsed in 1 repo~3.9k tokens
    Auto-check passed
  • Analyze Runtime

    mendixlabs/mxcli

    Find out what a running Mendix app actually does — logs, Prometheus metrics, OpenTelemetry traces and the model catalog, joined across sources.

    128 GitHub stars~2.8k tokensUpdated today
    Auto-check passed

Questions about Agents

What does Agents do?

Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts. Agents is an agent skill from mendixlabs/mxcli. Author Mendix AI agent documents in MDL — Model, Knowledge Base, Consumed MCP Service and Agent, with variables, tools and multi-line prompts.

When should I use Agents?

Agents fits situations like: adding GenAI features to a Mendix app; wiring an LLM model; listing/describing existing agent documents.

How do I install Agents in Claude Code?

Run `npx skills add mendixlabs/mxcli --skill agents -a claude-code`. Or copy the skill folder (.claude/skills/mendix/agents in mendixlabs/mxcli) into .claude/skills/agents in your project. Claude Code loads it when a task matches its description.

How do I install Agents in Codex?

Run `npx skills add mendixlabs/mxcli --skill agents -a codex`. Or copy the skill folder (.claude/skills/mendix/agents in mendixlabs/mxcli) into .agents/skills/agents in your project. Codex loads it when a task matches its description.

Can I use Agents in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mendixlabs/mxcli --skill agents -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/agents, .gemini/skills/agents, .github/skills/agents and .opencode/skills/agents in your project.

What does Agents need to run?

Going by SKILL.md and its folder, Agents needs credentials named OPENAI_KEY. Our summary lists: A credential in OPENAI_KEY.

Does Agents access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Agents safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Agents use?

Agents is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Agents use?

About 2.2k tokens (SKILL.md is roughly 8.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Agents?

Skills that share tags, products or a category with Agents: Arkon Edit (nduckmink/arkon, 1.5k stars), Arkon Query (nduckmink/arkon, 1.5k stars), Arkon Review (nduckmink/arkon, 1.5k stars) and Kb Guide (0xranx/golembot, 323 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Agents?

mendixlabs (a GitHub organization) maintains it in mendixlabs/mxcli, which has 128 GitHub stars. The repository holds 75 skills in this directory. The repository was last updated on October 7, 2026.

Source: mendixlabs/mxcli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.