MCP Capabilities
Tools 20
category_get
Description: Category Get
Handler: App\Mcp\Tools\CategoryMcpTool::category_get()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
slug |
string | Yes | - | - |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "slug" => array:1 [ "type" => "string" ] ] "required" => array:1 [ 0 => "slug" ] ] |
category_search
Description: Category Search
Handler: App\Mcp\Tools\CategoryMcpTool::category_search()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
q |
string | Yes | - | query search in name for category |
paged |
null|integer | No |
1
|
- |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "q" => array:6 [ "type" => "string" "description" => "query search in name for category" "format" => "ganancias, aduanero" "minLength" => 3 "maxLength" => 100 "pattern" => "^.*$" ] "paged" => array:2 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => 1 ] ] "required" => array:1 [ 0 => "q" ] ] |
category_all
Description: List all categories
Handler: App\Mcp\Tools\CategoryMcpTool::category_all()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
paged |
null|integer | No |
1
|
- |
Full Schema
array:2 [ "type" => "object" "properties" => array:1 [ "paged" => array:2 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => 1 ] ] ] |
get_node_statute
Description: Get node statute for a specific node_unique_ref.
Handler: App\Mcp\Tools\NodeStatuteMcpTool::get_statute()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
node_unique_ref |
string | Yes | - | Unique Ref for node statute |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "node_unique_ref" => array:6 [ "type" => "string" "description" => "Unique Ref for node statute" "format" => "{type}.{number statute}_{year}" "minLength" => 5 "maxLength" => 100 "pattern" => "^[a-z]+\.[0-9]{1,7}(_[0-9]{4})?\..+$" ] ] "required" => array:1 [ 0 => "node_unique_ref" ] ] |
get_active_session_debug
Description: Solo para diagnóstico del servidor MCP, no aporta información normativa. Returns the session object from the active MCP request so you can inspect the current client state and metadata.
Handler: App\Mcp\Tools\SessionMcpTool::getActiveSession()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
include_meta |
boolean | No |
1
|
If true, include the active request metadata and the current session payload. |
Full Schema
array:2 [ "type" => "object" "properties" => array:1 [ "include_meta" => array:3 [ "type" => "boolean" "default" => true "description" => "If true, include the active request metadata and the current session payload." ] ] ] |
get_statute
Description: Get statute for a specific unique_ref.
Handler: App\Mcp\Tools\StatuteContentMcpTool::get_statute()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
unique_ref |
string | Yes | - | Unique Ref for statute |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "unique_ref" => array:6 [ "type" => "string" "description" => "Unique Ref for statute" "format" => "{type}.{number statute}_{year}" "minLength" => 5 "maxLength" => 100 "pattern" => "^[a-z]+\.[0-9]{1,7}(_[0-9]{4})?$" ] ] "required" => array:1 [ 0 => "unique_ref" ] ] |
get_statute_index
Description: Get index for a unique_ref of statute
Handler: App\Mcp\Tools\StatuteContentMcpTool::get_statute_index()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
unique_ref |
string | Yes | - | Unique Ref for statute |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "unique_ref" => array:6 [ "type" => "string" "description" => "Unique Ref for statute" "format" => "{type}.{number statute}_{year}" "minLength" => 5 "maxLength" => 100 "pattern" => "^[a-z]+\.[0-9]{1,7}(_[0-9]{4})?$" ] ] "required" => array:1 [ 0 => "unique_ref" ] ] |
get_statute_content
Description: Get content for a unique_ref of statute
Handler: App\Mcp\Tools\StatuteContentMcpTool::get_statute_content()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
unique_ref |
string | Yes | - | Unique Ref for statute |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "unique_ref" => array:6 [ "type" => "string" "description" => "Unique Ref for statute" "format" => "{type}.{number statute}_{year}" "minLength" => 5 "maxLength" => 100 "pattern" => "^[a-z]+\.[0-9]{1,7}(_[0-9]{4})?$" ] ] "required" => array:1 [ 0 => "unique_ref" ] ] |
search_statute
Description: Search for free field statutes
Handler: App\Mcp\Tools\StatuteMcpTool::search_statute()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
q |
string | Yes | - | query search in title and meta data for statutes |
paged |
integer | No |
1
|
paged results |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "q" => array:6 [ "type" => "string" "description" => "query search in title and meta data for statutes" "format" => "ganancias, aduanero" "minLength" => 3 "maxLength" => 100 "pattern" => "^.*$" ] "paged" => array:4 [ "type" => "integer" "default" => 1 "description" => "paged results" "pattern" => "^[0-9]+$" ] ] "required" => array:1 [ 0 => "q" ] ] |
find_statute_by_tag
Description: You can find the options at data://tags or by using the tag_search tool
Handler: App\Mcp\Tools\StatuteMcpTool::find_statute_by_tag()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
tag_slug |
string | Yes | - | Tag.slug |
paged |
integer | No |
1
|
paged results |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "tag_slug" => array:6 [ "type" => "string" "description" => "Tag.slug " "format" => "impuesto-ganancias" "minLength" => 3 "maxLength" => 100 "pattern" => "^[0-9a-z\-]+$" ] "paged" => array:4 [ "type" => "integer" "default" => 1 "description" => "paged results" "pattern" => "^[0-9]+$" ] ] "required" => array:1 [ 0 => "tag_slug" ] ] |
find_statute_by_category
Description: You can find the options at data://categories or by using the category_search tool
Handler: App\Mcp\Tools\StatuteMcpTool::find_statute_by_category()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
category_slug |
string | Yes | - | Category.slug |
paged |
integer | No |
1
|
paged results |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "category_slug" => array:6 [ "type" => "string" "description" => "Category.slug " "format" => "impuesto-ganancias" "minLength" => 3 "maxLength" => 100 "pattern" => "^[0-9a-z\-]+$" ] "paged" => array:4 [ "type" => "integer" "default" => 1 "description" => "paged results" "pattern" => "^[0-9]+$" ] ] "required" => array:1 [ 0 => "category_slug" ] ] |
find_statute_by_number
Description: Busca normas por número exacto (ej. 862), sin filtrar por tipo ni año — puede devolver varias normas distintas con el mismo número.
Handler: App\Mcp\Tools\StatuteMcpTool::find_statute_by_number()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
number |
integer | Yes | - | Número exacto a buscar |
paged |
integer | No |
1
|
paged results |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "number" => array:5 [ "type" => "integer" "description" => "Número exacto a buscar" "format" => "862" "minimum" => 1 "maximum" => 99999 ] "paged" => array:4 [ "type" => "integer" "default" => 1 "description" => "paged results" "pattern" => "^[0-9]+$" ] ] "required" => array:1 [ 0 => "number" ] ] |
find_statute_by_type
Description: You can find the options by using the statute_type_search tool
Handler: App\Mcp\Tools\StatuteMcpTool::find_statute_by_type()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
type_slug |
string | Yes | - | Type.slug |
paged |
integer | No |
1
|
paged results |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "type_slug" => array:6 [ "type" => "string" "description" => "Type.slug " "format" => "ley|decreto" "minLength" => 3 "maxLength" => 100 "pattern" => "^[a-z0-9\-]+$" ] "paged" => array:4 [ "type" => "integer" "default" => 1 "description" => "paged results" "pattern" => "^[0-9]+$" ] ] "required" => array:1 [ 0 => "type_slug" ] ] |
find_statute_by
Description: Busca con almenos unas de las variables
Handler: App\Mcp\Tools\StatuteMcpTool::find_statute_by()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
tag_slug |
null|string | No |
|
Tag.slug is opcional |
category_slug |
null|string | No |
|
Category.slug is opcional |
number |
null|integer|string | No |
|
Number is opcional |
year |
null|integer | No |
|
Year |
type_slug |
null|string | No |
|
Type.slug is opcional |
paged |
integer | No |
1
|
paged results |
Full Schema
array:2 [ "type" => "object" "properties" => array:6 [ "tag_slug" => array:7 [ "type" => array:2 [ 0 => "null" 1 => "string" ] "default" => null "description" => "Tag.slug is opcional" "format" => "impuesto-ganancias" "minLength" => 3 "maxLength" => 100 "pattern" => "^[0-9a-z\-]*$" ] "category_slug" => array:7 [ "type" => array:2 [ 0 => "null" 1 => "string" ] "default" => null "description" => "Category.slug is opcional" "format" => "impuesto-ganancias" "minLength" => 3 "maxLength" => 100 "pattern" => "^[0-9a-z\-]*$" ] "number" => array:7 [ "type" => array:3 [ 0 => "null" 1 => "integer" 2 => "string" ] "default" => null "description" => "Number is opcional" "format" => "impuesto-ganancias" "minLength" => 1 "maxLength" => 100 "pattern" => "^[0-9]*$" ] "year" => array:7 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => null "description" => "Year" "format" => "2025" "minLength" => 1 "maxLength" => 100 "pattern" => "^([0-9]{4})?$" ] "type_slug" => array:7 [ "type" => array:2 [ 0 => "null" 1 => "string" ] "default" => null "description" => "Type.slug is opcional" "format" => "ley|decreto" "minLength" => 3 "maxLength" => 100 "pattern" => "^[a-z0-9\-]*$" ] "paged" => array:4 [ "type" => "integer" "default" => 1 "description" => "paged results" "pattern" => "^[0-9]+$" ] ] ] |
statute_type_get
Description: StatuteType Get
Handler: App\Mcp\Tools\StatuteTypeMcpTool::statute_type_get()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
slug |
string | Yes | - | - |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "slug" => array:1 [ "type" => "string" ] ] "required" => array:1 [ 0 => "slug" ] ] |
statute_type_search
Description: StatuteType Search
Handler: App\Mcp\Tools\StatuteTypeMcpTool::statute_type_search()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
q |
string | Yes | - | query search in name for statute type |
paged |
null|integer | No |
1
|
- |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "q" => array:6 [ "type" => "string" "description" => "query search in name for statute type" "format" => "ley, decreto" "minLength" => 3 "maxLength" => 100 "pattern" => "^.*$" ] "paged" => array:2 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => 1 ] ] "required" => array:1 [ 0 => "q" ] ] |
statute_type_all
Description: List all StatuteType
Handler: App\Mcp\Tools\StatuteTypeMcpTool::statute_type_all()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
paged |
null|integer | No |
1
|
- |
Full Schema
array:2 [ "type" => "object" "properties" => array:1 [ "paged" => array:2 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => 1 ] ] ] |
tag_all
Description: List all tags
Handler: App\Mcp\Tools\TagMcpTool::tag_all()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
paged |
null|integer | No |
1
|
- |
Full Schema
array:2 [ "type" => "object" "properties" => array:1 [ "paged" => array:2 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => 1 ] ] ] |
tag_get
Description: Tag Get
Handler: App\Mcp\Tools\TagMcpTool::tag_get()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
slug |
string | Yes | - | - |
Full Schema
array:3 [ "type" => "object" "properties" => array:1 [ "slug" => array:1 [ "type" => "string" ] ] "required" => array:1 [ 0 => "slug" ] ] |
tag_search
Description: Tag Search
Handler: App\Mcp\Tools\TagMcpTool::tag_search()
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
q |
string | Yes | - | query search in name for tag |
paged |
null|integer | No |
1
|
- |
Full Schema
array:3 [ "type" => "object" "properties" => array:2 [ "q" => array:6 [ "type" => "string" "description" => "query search in name for tag" "format" => "ganancias, aduanero" "minLength" => 3 "maxLength" => 100 "pattern" => "^.*$" ] "paged" => array:2 [ "type" => array:2 [ 0 => "null" 1 => "integer" ] "default" => 1 ] ] "required" => array:1 [ 0 => "q" ] ] |
Prompts 0
No prompts were registered.
Resources 0
No resources were registered.
Resource Templates 7
all_tags
| URI Template | data://tags/paged/{paged} |
|---|---|
| Handler | App\Mcp\Resources\DataMcpResource::tag_all() |
| Description | All Tags |
| MIME Type | application/json |
all_categories
| URI Template | data://categories/paged/{paged} |
|---|---|
| Handler | App\Mcp\Resources\DataMcpResource::category_all() |
| Description | All categories |
| MIME Type | application/json |
all_statute_types
| URI Template | data://statute_types/paged/{paged} |
|---|---|
| Handler | App\Mcp\Resources\DataMcpResource::statute_type_all() |
| Description | All statute types |
| MIME Type | application/json |
get_statute_by_unique_ref
| URI Template | statute://{unique_ref} |
|---|---|
| Handler | App\Mcp\Resources\StatuteMcpResource::get_statute_by_unique_ref() |
| Description | Get statute for a specific unique_ref. |
| MIME Type | application/json |
get_index_for_statute
| URI Template | statute://{unique_ref}/index_content |
|---|---|
| Handler | App\Mcp\Resources\StatuteMcpResource::get_index_for_statute() |
| Description | Get index for a unique_ref of statute |
| MIME Type | application/json |
get_content_for_statute
| URI Template | statute://{unique_ref}/content |
|---|---|
| Handler | App\Mcp\Resources\StatuteMcpResource::get_content_for_statute() |
| Description | Get content for a unique_ref of statute |
| MIME Type | application/json |
get_related_for_statute
| URI Template | statute://{unique_ref}/related |
|---|---|
| Handler | App\Mcp\Resources\StatuteMcpResource::get_related_for_statute() |
| Description | Get related for a unique_ref of statute |
| MIME Type | application/json |