ea0a028128
Changelog Validation / Validate CHANGELOG.md (push) Has been cancelled
Standards Compliance / Secret Scanning (push) Has been cancelled
Standards Compliance / License Header Validation (push) Has been cancelled
Standards Compliance / Repository Structure Validation (push) Has been cancelled
Standards Compliance / Coding Standards Check (push) Has been cancelled
Standards Compliance / Workflow Configuration Check (push) Has been cancelled
Standards Compliance / Documentation Quality Check (push) Has been cancelled
Standards Compliance / README Completeness Check (push) Has been cancelled
Standards Compliance / Git Repository Hygiene (push) Has been cancelled
Standards Compliance / Script Integrity Validation (push) Has been cancelled
Standards Compliance / Line Length Check (push) Has been cancelled
Standards Compliance / File Naming Standards (push) Has been cancelled
Standards Compliance / Insecure Code Pattern Detection (push) Has been cancelled
Standards Compliance / Version Consistency Check (push) Has been cancelled
CodeQL Security Scanning / Analyze (actions) (push) Has been cancelled
CodeQL Security Scanning / Analyze (javascript) (push) Has been cancelled
Standards Compliance / Dead Code Detection (push) Has been cancelled
Standards Compliance / File Size Limits (push) Has been cancelled
Standards Compliance / Binary File Detection (push) Has been cancelled
Standards Compliance / TODO/FIXME Tracking (push) Has been cancelled
Standards Compliance / Code Complexity Analysis (push) Has been cancelled
Standards Compliance / Broken Link Detection (push) Has been cancelled
Standards Compliance / API Documentation Coverage (push) Has been cancelled
Standards Compliance / Accessibility Check (push) Has been cancelled
Standards Compliance / Performance Metrics (push) Has been cancelled
Standards Compliance / Code Duplication Detection (push) Has been cancelled
Standards Compliance / Unused Dependencies Check (push) Has been cancelled
Standards Compliance / Dependency Vulnerability Scanning (push) Has been cancelled
Standards Compliance / Terraform Configuration Validation (push) Has been cancelled
CodeQL Security Scanning / Security Scan Summary (push) Has been cancelled
Standards Compliance / Enterprise Readiness Check (push) Has been cancelled
Standards Compliance / Repository Health Check (push) Has been cancelled
Standards Compliance / Compliance Summary (push) Has been cancelled
Sync Version from README / Propagate README version (push) Has been cancelled
- docs/INSTALLATION.md: setup instructions, config format, troubleshooting - docs/ARCHITECTURE.md: component overview and design decisions - docs/API.md: complete MCP tool reference with all parameters Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
280 lines
8.0 KiB
Markdown
280 lines
8.0 KiB
Markdown
<!--
|
|
Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
|
|
|
|
This file is part of a Moko Consulting project.
|
|
|
|
SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
# FILE INFORMATION
|
|
DEFGROUP: joomla-api-mcp.Documentation
|
|
INGROUP: joomla-api-mcp
|
|
REPO: https://git.mokoconsulting.tech/MokoConsulting/joomla-api-mcp
|
|
PATH: /docs/API.md
|
|
VERSION: 00.00.01
|
|
BRIEF: MCP tool reference documentation
|
|
-->
|
|
|
|
# API Reference
|
|
|
|
All tools accept an optional `connection` parameter to target a specific named connection. If omitted, the default connection is used.
|
|
|
|
## Articles
|
|
|
|
### `joomla_articles_list`
|
|
List articles with optional filtering.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `category_id` | number | No | Filter by category ID |
|
|
| `state` | `"0"` / `"1"` / `"-2"` | No | 1=published, 0=unpublished, -2=trashed |
|
|
| `search` | string | No | Search in title |
|
|
| `limit` | number | No | Max results (default 20) |
|
|
| `offset` | number | No | Pagination offset |
|
|
|
|
### `joomla_article_get`
|
|
Get a single article by ID.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | Article ID |
|
|
|
|
### `joomla_article_create`
|
|
Create a new article.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `title` | string | Yes | Article title |
|
|
| `articletext` | string | Yes | Article body (HTML) |
|
|
| `catid` | number | Yes | Category ID |
|
|
| `state` | number | No | 1=published, 0=unpublished (default 0) |
|
|
| `language` | string | No | Language code (default `"*"`) |
|
|
| `featured` | number | No | 1=featured, 0=not |
|
|
| `metadesc` | string | No | Meta description |
|
|
| `metakey` | string | No | Meta keywords |
|
|
|
|
### `joomla_article_update`
|
|
Update an existing article. Only provided fields are changed.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | Article ID |
|
|
| `title` | string | No | New title |
|
|
| `articletext` | string | No | New body (HTML) |
|
|
| `catid` | number | No | New category ID |
|
|
| `state` | number | No | State value |
|
|
| `featured` | number | No | Featured flag |
|
|
| `metadesc` | string | No | Meta description |
|
|
|
|
### `joomla_article_delete`
|
|
Delete an article.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | Article ID |
|
|
|
|
## Categories
|
|
|
|
### `joomla_categories_list`
|
|
List content categories.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `extension` | string | No | Extension name (default `"com_content"`) |
|
|
| `search` | string | No | Search in title |
|
|
|
|
### `joomla_category_create`
|
|
Create a new category.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `title` | string | Yes | Category title |
|
|
| `parent_id` | number | No | Parent category ID (default 1 = root) |
|
|
| `extension` | string | No | Extension (default `"com_content"`) |
|
|
| `description` | string | No | Category description |
|
|
| `state` | number | No | 1=published, 0=unpublished |
|
|
| `language` | string | No | Language code (default `"*"`) |
|
|
|
|
### `joomla_category_update`
|
|
Update a category.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | Category ID |
|
|
| `title` | string | No | New title |
|
|
| `description` | string | No | New description |
|
|
| `state` | number | No | State value |
|
|
|
|
### `joomla_category_delete`
|
|
Delete a category.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | Category ID |
|
|
|
|
## Users
|
|
|
|
### `joomla_users_list`
|
|
List Joomla users.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `search` | string | No | Search in name/username/email |
|
|
| `group_id` | number | No | Filter by user group ID |
|
|
| `state` | `"0"` / `"1"` | No | 0=blocked, 1=active |
|
|
| `limit` | number | No | Max results |
|
|
|
|
### `joomla_user_get`
|
|
Get a single user by ID.
|
|
|
|
### `joomla_user_create`
|
|
Create a user with auto-generated secure password.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `name` | string | Yes | Full name |
|
|
| `username` | string | Yes | Username |
|
|
| `email` | string | Yes | Email address |
|
|
| `groups` | number[] | No | Group IDs (default `[2]` = Registered) |
|
|
| `block` | number | No | 0=active, 1=blocked (default 0) |
|
|
|
|
Returns the generated password in the response. Share securely with the user.
|
|
|
|
### `joomla_user_update`
|
|
Update a user.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | User ID |
|
|
| `name` | string | No | Full name |
|
|
| `email` | string | No | Email |
|
|
| `groups` | number[] | No | Group IDs |
|
|
| `block` | number | No | 0=active, 1=blocked |
|
|
|
|
### `joomla_user_delete`
|
|
Delete a user.
|
|
|
|
### `joomla_user_groups_list`
|
|
List all user groups. No parameters.
|
|
|
|
## Menus
|
|
|
|
### `joomla_menus_list`
|
|
List menu types. No parameters.
|
|
|
|
### `joomla_menu_items_list`
|
|
List menu items for a menu type.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `menutype` | string | Yes | Menu type alias (e.g. `"mainmenu"`) |
|
|
|
|
### `joomla_menu_item_get`
|
|
Get a single menu item by ID.
|
|
|
|
## Plugins
|
|
|
|
### `joomla_plugins_list`
|
|
List plugins.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `type` | string | No | Filter by plugin folder (e.g. `"system"`, `"content"`) |
|
|
| `state` | `"0"` / `"1"` | No | 0=disabled, 1=enabled |
|
|
| `search` | string | No | Search in name |
|
|
|
|
### `joomla_plugin_update`
|
|
Enable or disable a plugin.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `id` | number | Yes | Plugin ID |
|
|
| `enabled` | number | Yes | 1=enable, 0=disable |
|
|
|
|
## Modules
|
|
|
|
### `joomla_modules_list`
|
|
List site or admin modules.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `client_id` | `"0"` / `"1"` | No | 0=site, 1=admin |
|
|
|
|
## Templates
|
|
|
|
### `joomla_templates_list`
|
|
List site or admin templates.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `client_id` | `"0"` / `"1"` | No | 0=site, 1=admin |
|
|
|
|
## Other Tools
|
|
|
|
### `joomla_languages_list`
|
|
List installed content languages.
|
|
|
|
### `joomla_tags_list`
|
|
List tags with optional search.
|
|
|
|
### `joomla_tag_create`
|
|
Create a tag.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `title` | string | Yes | Tag title |
|
|
| `parent_id` | number | No | Parent tag ID |
|
|
|
|
### `joomla_fields_list`
|
|
List custom fields for a context (default `"com_content.article"`).
|
|
|
|
### `joomla_contacts_list`
|
|
List contacts with optional search.
|
|
|
|
### `joomla_banners_list`
|
|
List banners.
|
|
|
|
### `joomla_newsfeeds_list`
|
|
List newsfeeds.
|
|
|
|
### `joomla_messages_list`
|
|
List private messages.
|
|
|
|
### `joomla_message_get`
|
|
Get a single private message by ID.
|
|
|
|
### `joomla_media_list`
|
|
List media files in a folder.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `path` | string | No | Folder path relative to media root |
|
|
|
|
### `joomla_config_get`
|
|
Get application configuration.
|
|
|
|
### `joomla_config_update`
|
|
Update application configuration values.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `settings` | object | Yes | Key-value pairs of settings to update |
|
|
|
|
### `joomla_api_request`
|
|
Make a raw API request to any Joomla Web Services endpoint.
|
|
|
|
| Parameter | Type | Required | Description |
|
|
|-----------|------|----------|-------------|
|
|
| `method` | `"GET"` / `"POST"` / `"PATCH"` / `"DELETE"` | Yes | HTTP method |
|
|
| `endpoint` | string | Yes | API path (e.g. `"/content/articles"`) |
|
|
| `body` | object | No | Request body for POST/PATCH |
|
|
| `params` | object | No | Query parameters |
|
|
|
|
### `joomla_list_connections`
|
|
List all configured connections. No parameters.
|
|
|
|
## Revision History
|
|
|
|
| Date | Version | Author | Notes |
|
|
| --- | --- | --- | --- |
|
|
| 2026-04-23 | 0.0.1 | jmiller | Initial API reference |
|