MyPos MCP
Uses .ENV files for configuration management, allowing secure storage of database connection parameters and other sensitive information through environment variables.
Connects to MySQL databases, offering tools for schema management, executing queries, and performing CRUD operations on tables with support for data import/export to CSV and JSON formats.
Requires Node.js runtime environment (v16 or higher) to operate, leveraging its capabilities for database connectivity and server operations.
Connects to PostgreSQL databases, providing comprehensive tools for managing database schema, executing SQL queries, and handling data operations with import/export capabilities to CSV and JSON formats.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MyPos MCPlist the tables in the database"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MyPos MCP DB
Este es un proyecto de ejemplo para un Model-Context-Protocol (MCP) Server que se conecta a una base de datos.
Características
Se conecta a bases de datos MySQL o PostgreSQL.
Proporciona herramientas para interactuar con la base de datos y administrar el esquema.
Related MCP server: PostgreSQL MCP Server
Herramientas disponibles
listarTablas: Enumera todas las tablas en la base de datos.
consultarSQL: Ejecuta una consulta
SELECTy devuelve los resultados.columnasDeTabla: Enumera las columnas de una tabla específica.
crearTabla: Crea una nueva tabla a partir de un objeto de definición.
eliminarTabla: Elimina una tabla de la base de datos.
renombrarTabla: Cambia el nombre de una tabla existente.
agregarColumna: Agrega una nueva columna a una tabla existente.
eliminarColumna: Elimina una columna de una tabla.
renombrarColumna: Cambia el nombre de una columna en una tabla.
cambiarTipoColumna: Cambia el tipo de datos de una columna (por ejemplo, a DATE, VARCHAR, etc).
insertarDatos: Inserta uno o varios registros en una tabla.
crudTabla: Permite realizar operaciones CRUD (crear, leer, actualizar, borrar) en cualquier tabla.
agregarClaveForanea: Agrega una clave foránea (FOREIGN KEY) entre tablas.
eliminarClaveForanea: Elimina una clave foránea por nombre.
exportarTabla: Exporta los datos de una tabla o columnas específicas a CSV o JSON.
importarTabla: Importa datos a una tabla desde CSV o JSON, permitiendo especificar columnas.
Requisitos
Node.js (v16 o superior)
Una base de datos MySQL o PostgreSQL en ejecución.
Configuración
Clonar el repositorio:
git clone https://github.com/Yonsn76/MyPos-MCP.git cd MyPos-MCPInstalar dependencias:
npm installConfigurar las variables de entorno:
Crea un archivo
.enven la raíz del proyecto y añade las siguientes variables:DB_TYPE=mysql # o postgres DB_HOST=localhost DB_PORT=3306 # o 5432 para postgres DB_USER=root DB_PASSWORD=tu_contraseña DB_DATABASE=nombre_de_la_base_de_datos
Uso
Para iniciar el servidor MCP, ejecuta:
npm startEl servidor se iniciará y se conectará a la base de datos especificada en el archivo .env.
Ejemplo de Configuración MCP
Para usar este MCP, puedes agregarlo a tu configuración con el siguiente objeto:
"MyPost MCP": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"node",
"C:/Users/Pociko/Desktop/MCP/legion-mcp/Mi-mcp/mcp_server.js"
//Aqui va la url del directorio en la cual esta el archivo mcp_server.js
]
}Available Tools
18 toolsagregarClaveForaneaA
Sigue estas reglas para agregar una clave foránea: PROPÓSITO: Crear una relación (clave foránea) entre dos tablas para mantener la integridad referencial. REGLA: Las tablas y columnas involucradas ya deben existir. PRECAUCIÓN: La operación puede fallar si los datos existentes violan la nueva restricción. USO: Especifica la tabla local, sus columnas, la tabla de referencia y sus columnas. EJEMPLO: "Agrega una clave foránea de cliente_id en ventas referenciando clientes(id)."
| Name | Required | Description | Default |
|---|---|---|---|
| columnas | Yes | Columnas locales | |
| columnasReferencia | Yes | Columnas referenciadas | |
| nombre | No | Nombre de la clave foránea (opcional) | |
| onDelete | No | Acción ON DELETE (ej. CASCADE, SET NULL) | |
| onUpdate | No | Acción ON UPDATE (ej. CASCADE, SET NULL) | |
| tabla | Yes | Tabla que tendrá la clave foránea | |
| tablaReferencia | Yes | Tabla referenciada |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes critical behavioral traits: the prerequisite that tables/columns must exist, the potential failure due to data violations, and the action of creating a foreign key constraint. However, it doesn't mention side effects like performance impact or transaction behavior, leaving some gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with labeled sections (PROPÓSITO, REGLA, PRECAUCIÓN, USO, EJEMPLO), making it easy to scan. It's concise with no redundant sentences, though the example could be integrated more smoothly. Every sentence adds value, such as clarifying prerequisites and risks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (mutation with 7 parameters, no annotations, no output schema), the description is reasonably complete. It covers purpose, rules, cautions, usage, and an example. However, it lacks details on return values or error handling, which would be helpful since there's no output schema. It compensates well but isn't fully exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 7 parameters. The description adds minimal parameter semantics beyond the schema—it mentions 'tabla local' (local table), 'columnas' (columns), 'tabla de referencia' (reference table), and 'columnas referenciadas' (referenced columns) in the USO section, but doesn't provide additional context like format examples (beyond the general example) or explain optional parameters like 'nombre' (name). Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Crear una relación (clave foránea) entre dos tablas para mantener la integridad referencial' (Create a relationship between two tables to maintain referential integrity). This is specific (verb+resource+goal) and clearly distinguishes it from sibling tools like 'crearTabla' (create table) or 'agregarColumna' (add column) by focusing on establishing foreign key constraints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage rules: 'REGLA: Las tablas y columnas involucradas ya deben existir' (Rule: The involved tables and columns must already exist) and 'PRECAUCIÓN: La operación puede fallar si los datos existentes violan la nueva restricción' (Caution: The operation may fail if existing data violates the new constraint). It also includes an example and specifies when to use it for foreign key creation, distinguishing it from alternatives like 'eliminarClaveForanea' (delete foreign key).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agregarColumnaA
Sigue estas reglas para agregar una columna: PROPÓSITO: Agregar una nueva columna a una tabla EXISTENTE. REGLA: No la uses para crear tablas nuevas ni para modificar o eliminar columnas existentes. PRECAUCIÓN: Asegúrate de que el nombre de la tabla y la nueva columna sean correctos antes de ejecutar. EJEMPLO: "Agrega la columna email a la tabla usuarios."
| Name | Required | Description | Default |
|---|---|---|---|
| columna | Yes | Nombre de la nueva columna | |
| tabla | Yes | Nombre de la tabla a modificar | |
| tipo | Yes | Definición del tipo de la columna (ej. VARCHAR(255) NOT NULL) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It adds useful context such as the caution to ensure table and column names are correct before execution, which hints at potential errors or destructive effects. However, it lacks details on permissions, rate limits, or what happens on success/failure, leaving gaps in behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with clear sections (PROPÓSITO, REGLA, PRECAUCIÓN, EJEMPLO), making it easy to scan. It is appropriately sized with four concise sentences that each add value, though the example could be integrated more smoothly. There is minimal waste, but slight room for improvement in flow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a database mutation tool with no annotations and no output schema, the description is moderately complete. It covers purpose, usage rules, and cautions, but lacks details on behavioral aspects like error handling or return values. It compensates somewhat with the example, but more context on outcomes would enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (columna, tabla, tipo) with clear descriptions. The description does not add any additional semantic meaning beyond what the schema provides, such as examples of 'tipo' values or constraints. Baseline 3 is appropriate when the schema handles parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Agregar una nueva columna a una tabla EXISTENTE' (Add a new column to an EXISTING table), which is a specific verb+resource combination. It clearly distinguishes this tool from sibling tools like 'crearTabla' (create table), 'eliminarColumna' (delete column), and 'renombrarColumna' (rename column), making the distinction explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use and when not to use this tool: 'No la uses para crear tablas nuevas ni para modificar o eliminar columnas existentes' (Do not use it to create new tables or to modify or delete existing columns). It also implies alternatives by naming sibling tools like 'crearTabla' for table creation, offering clear context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agregarRestriccionUnicaA
Sigue estas reglas para agregar una restricción UNIQUE: PROPÓSITO: Agregar una restricción de unicidad (UNIQUE) a una o más columnas para evitar valores duplicados. REGLA: No la uses para crear tablas o columnas. La columna ya debe existir. PRECAUCIÓN: La operación fallará si ya existen datos duplicados en la(s) columna(s) seleccionada(s). USO: Especifica la tabla y las columnas que deben ser únicas. EJEMPLO: "Haz que el campo email sea único en la tabla usuarios."
| Name | Required | Description | Default |
|---|---|---|---|
| columnas | Yes | Columnas a restringir como únicas | |
| nombre | No | Nombre de la restricción (opcional) | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behavioral traits: the operation will fail if duplicate data exists ('La operación fallará si ya existen datos duplicados'), it requires pre-existing columns ('La columna ya debe existir'), and it's a mutation operation (implied by 'agregar'). However, it doesn't mention permissions needed, whether the change is reversible, or what happens on success.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (PROPÓSITO, REGLA, PRECAUCIÓN, USO, EJEMPLO), each earning its place. It's front-loaded with the purpose, followed by important rules and cautions, then usage guidance and an example. No wasted words, and the structure enhances clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description does an excellent job covering purpose, usage rules, and behavioral constraints. It clearly explains what the tool does, when to use it, and important failure conditions. The main gap is the lack of information about what happens on success (e.g., confirmation message, constraint name generation), but given the strong coverage elsewhere, this is a minor omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds some context by mentioning 'tabla' and 'columnas' in the USO section and providing an example, but doesn't add meaningful semantic details beyond what the schema provides. The baseline of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Agregar una restricción de unicidad (UNIQUE) a una o más columnas para evitar valores duplicados', which is a specific verb (agregar) + resource (restricción UNIQUE) + outcome (evitar valores duplicados). It clearly distinguishes from siblings like 'crearTabla' or 'agregarColumna' by specifying it's for adding constraints to existing columns, not creating tables or columns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage rules: 'No la uses para crear tablas o columnas. La columna ya debe existir.' It also includes a caution about when it will fail ('La operación fallará si ya existen datos duplicados'), and gives a clear example of when to use it ('Haz que el campo email sea único en la tabla usuarios'). This covers when to use, when not to use, and provides context for alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cambiarTipoColumnaA
Sigue estas reglas OBLIGATORIAS para cambiar el tipo de una columna: ADVERTENCIA INICIAL: Informa al usuario que cambiar el tipo de dato de una columna es una acción PELIGROSA que puede resultar en PÉRDIDA DE DATOS si la conversión no es compatible. CONFIRMACIÓN EXPLÍCITA: Para proceder, el usuario DEBE escribir la frase exacta: "Confirmar cambio de tipo para la columna [nombreColumna] a [nuevoTipo]". VERIFICACIÓN ESTRICTA: No ejecutes la modificación si la confirmación no es exacta. USO: Especifica la tabla, la columna y el nuevo tipo de dato. EJEMPLO: "Cambia el tipo de la columna fecha a DATE en la tabla ventas."
| Name | Required | Description | Default |
|---|---|---|---|
| columna | Yes | Nombre de la columna a modificar | |
| nuevoTipo | Yes | Nuevo tipo de datos (ej. DATE, VARCHAR(255), INT, etc.) | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses critical behavioral traits: the action is 'PELIGROSA' (dangerous) with potential 'PÉRDIDA DE DATOS' (data loss), requires explicit user confirmation with a specific phrase, and includes strict verification rules. However, it lacks details on error handling, rollback capabilities, or performance impact, which are relevant for a destructive operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with bullet-point-like rules (ADVERTENCIA, CONFIRMACIÓN, VERIFICACIÓN, USO, EJEMPLO), which aids readability. However, it is verbose for a simple tool—the warning and confirmation rules could be condensed. Every sentence earns its place by providing necessary safety instructions, but it could be more front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a destructive database operation with no annotations and no output schema), the description is fairly complete. It covers the purpose, usage, safety warnings, and confirmation requirements. However, it lacks information on return values or error responses, which would be helpful for an agent. The context is sufficient for safe use but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for 'columna', 'nuevoTipo', and 'tabla'. The description adds minimal value beyond the schema: it reiterates the need to specify these parameters in the 'USO' section and provides an example. Since the schema already documents parameters well, the baseline score of 3 is appropriate, as the description doesn't add significant semantic context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: 'cambiar el tipo de una columna' (change the type of a column). It specifies the verb ('cambiar') and resource ('tipo de una columna'), and clearly distinguishes it from sibling tools like 'renombrarColumna' (rename column) or 'agregarColumna' (add column), which perform different operations on columns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidelines: it states 'USO: Especifica la tabla, la columna y el nuevo tipo de dato' (USE: Specify the table, column, and new data type) and includes an example. It also implicitly distinguishes from alternatives by focusing on type changes, unlike other tools for adding, deleting, or renaming columns. The warning and confirmation rules further clarify when to use it cautiously.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
columnasDeTablaA
Sigue estas reglas para listar columnas: PROPÓSITO: Obtener una lista con los nombres de todas las columnas de una tabla específica. USO: Útil para conocer la estructura de una tabla antes de realizar una consulta o inserción. EJEMPLO: "¿Cuáles son las columnas de la tabla ventas?"
| Name | Required | Description | Default |
|---|---|---|---|
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it states the tool lists column names, it doesn't describe the return format (e.g., list of strings, JSON structure), whether it includes metadata like data types, error handling for non-existent tables, or any performance considerations. For a read operation with zero annotation coverage, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with labeled sections (PROPÓSITO, USO, EJEMPLO) and uses three concise sentences that each add value. It's front-loaded with the purpose and avoids unnecessary repetition or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (single parameter, read-only operation) and 100% schema coverage, the description is adequate but not complete. It lacks details on output format and error behavior, which are important for an agent to use it correctly. No output schema exists, so the description should ideally cover return values, but it doesn't.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage (the 'tabla' parameter is described as 'Nombre de la tabla'), so the schema already documents the parameter. The description doesn't add any additional meaning or examples beyond what the schema provides, such as format requirements or constraints. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Obtener una lista con los nombres de todas las columnas de una tabla específica' (Get a list with the names of all columns of a specific table). This is a specific verb+resource combination that clearly distinguishes it from sibling tools like listarTablas (list tables) or consultarSQL (query SQL).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: 'Útil para conocer la estructura de una tabla antes de realizar una consulta o inserción' (Useful for knowing the structure of a table before performing a query or insertion). It doesn't explicitly state when not to use it or name specific alternatives, but the context is well-defined and helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
consultarSQLA
Sigue estas reglas para consultar con SQL: PROPÓSITO: Ejecutar una consulta SQL de solo lectura (SELECT) para obtener datos. RESTRICCIÓN DE SEGURIDAD: Solo se permiten consultas que comiencen con SELECT. Cualquier otro tipo de consulta (INSERT, UPDATE, DELETE, DROP) será rechazado. USO: Ideal para obtener datos específicos, filtrar o unir tablas. EJEMPLO: "Muestra todos los clientes registrados."
| Name | Required | Description | Default |
|---|---|---|---|
| consulta | Yes | Consulta SQL tipo SELECT |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full burden of behavioral disclosure. It effectively describes key behavioral traits: it's read-only (solo lectura), restricts queries to SELECT only with rejection of other types, and is used for data retrieval. However, it doesn't mention potential limitations like query complexity, timeout risks, or result size constraints, which could be relevant for an agent. No contradiction with annotations exists as none are provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (PROPÓSITO, RESTRICCIÓN DE SEGURIDAD, USO, EJEMPLO) and uses bullet points effectively. It's appropriately sized for the tool's complexity, with each sentence adding value. However, the example 'Muestra todos los clientes registrados' is somewhat redundant with the purpose statement, slightly reducing efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only query tool with one parameter and no output schema, the description is mostly complete. It covers purpose, security restrictions, usage context, and provides an example. However, it lacks details on output format (e.g., structure of returned data) and doesn't address potential error conditions or performance considerations, which would enhance completeness for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'consulta' documented as 'Consulta SQL tipo SELECT'. The description adds minimal value beyond this, only reinforcing that it's a SELECT query. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema already provides adequate parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Ejecutar una consulta SQL de solo lectura (SELECT) para obtener datos' (Execute a read-only SQL SELECT query to obtain data), which is a specific verb+resource combination. It clearly distinguishes this tool from its siblings like insertarDatos, crearTabla, eliminarTabla, etc., which are write operations. The purpose is unambiguous and well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool: 'Ideal para obtener datos específicos, filtrar o unir tablas' (Ideal for obtaining specific data, filtering, or joining tables). It also clearly states when NOT to use it by specifying the security restriction that only SELECT queries are allowed, with other types like INSERT, UPDATE, DELETE, DROP being rejected. This directly contrasts with sibling tools that handle those operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crearTablaA
Sigue estas reglas para crear una tabla: PROPÓSITO: Crear una tabla COMPLETAMENTE NUEVA en la base de datos. REGLA: No uses esta herramienta para modificar o agregar columnas a una tabla que ya existe. La herramienta fallará si la tabla ya existe. USO: Define el nombre de la tabla y la estructura de sus columnas. EJEMPLO: "Crea la tabla productos con columnas id y nombre."
| Name | Required | Description | Default |
|---|---|---|---|
| columnas | Yes | Lista de columnas con nombre y tipo | |
| nombreTabla | Yes | Nombre de la nueva tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behavioral traits: it's a mutation tool (creates new tables), it will fail if the table already exists (error behavior), and it requires defining table name and column structure. However, it doesn't mention permissions, transaction safety, or what happens on success (e.g., confirmation message).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (PROPÓSITO, REGLA, USO, EJEMPLO) and front-loaded key information. It's appropriately sized for a tool with 2 parameters and no annotations, though the example could be slightly more concise. Every sentence earns its place by providing distinct guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (mutation with 2 parameters), no annotations, and no output schema, the description does a good job covering the essentials: purpose, exclusion rules, and parameter overview. It could be more complete by mentioning what happens on success or error details beyond 'fallará' (will fail), but it's largely adequate for the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents both parameters ('nombreTabla' and 'columnas'). The description adds minimal value beyond the schema by mentioning 'Define el nombre de la tabla y la estructura de sus columnas' (Define the table name and the structure of its columns), which essentially restates what the schema says. The example provides some context but no new parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Crear una tabla COMPLETAMENTE NUEVA en la base de datos' (Create a COMPLETELY NEW table in the database), which is a specific verb+resource combination. It clearly distinguishes this from sibling tools like 'agregarColumna' (add column) or 'modificarTabla' (modify table) by emphasizing it's for new tables only, not modifications.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidelines: 'No uses esta herramienta para modificar o agregar columnas a una tabla que ya existe. La herramienta fallará si la tabla ya existe.' (Do not use this tool to modify or add columns to an existing table. The tool will fail if the table already exists.) This clearly defines when NOT to use it and implicitly points to alternatives like 'agregarColumna' for modifications.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
crudTablaA
Sigue estas reglas OBLIGATORIAS para operaciones CRUD: PROPÓSITO: Realizar operaciones de Crear (create), Leer (read), Actualizar (update) o Eliminar (delete) registros en una tabla. REGLA: Esta herramienta es solo para MANIPULAR DATOS, nunca para modificar la ESTRUCTURA de la tabla (ALTER, DROP, CREATE TABLE). ACCIÓN DESTRUCTIVA (DELETE): Si la acción es "delete", es OBLIGATORIO pedir una confirmación explícita al usuario antes de ejecutar. El usuario DEBE escribir la frase exacta: "Confirmar eliminación de los registros filtrados en la tabla [nombreTabla]". Si la confirmación no es exacta, no procedas. USO: Especifica la tabla, la acción, los datos (para create/update) y el filtro (para read/update/delete). EJEMPLO: "Actualiza el email del cliente con id 5 en la tabla clientes."
| Name | Required | Description | Default |
|---|---|---|---|
| accion | Yes | Acción CRUD a realizar | |
| datos | No | Datos para crear o actualizar (objeto) | |
| filtro | No | Filtro para leer, actualizar o borrar (objeto) | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and excels at behavioral disclosure. It clearly states destructive nature of delete operations with mandatory confirmation requirements, specifies exact confirmation phrasing, and provides operational constraints (no structural modifications). It adds substantial context beyond what the input schema provides about execution behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized but not optimally structured. It uses a rule-based format with headings (PROPÓSITO, REGLA, etc.) which helps organization, but some sections could be more concise. The delete confirmation rule is verbose but necessary. Overall, most sentences earn their place, but the structure could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description does an excellent job covering operational context, behavioral constraints, and usage rules. It addresses the complexity of a multi-operation tool well. The main gap is lack of information about return values or error handling, which would be helpful given there's no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds meaningful context about parameter usage: it explains that 'datos' is for create/update, 'filtro' is for read/update/delete, and provides an example showing how parameters work together. However, it doesn't fully explain the structure of nested objects in 'datos' and 'filtro' beyond what the schema already indicates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as performing CRUD operations (create, read, update, delete) on table records, using specific verbs and distinguishing it from structural modifications. It clearly differentiates from sibling tools like crearTabla or eliminarTabla by emphasizing it's only for data manipulation, not table structure changes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage rules: when to use (for data manipulation), when NOT to use (for structural changes like ALTER, DROP, CREATE TABLE), and alternatives (implicitly pointing to sibling tools for structural operations). It includes mandatory confirmation requirements for delete operations with specific phrasing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eliminarClaveForaneaA
Sigue estas reglas OBLIGATORIAS para eliminar una clave foránea: ADVERTENCIA INICIAL: Informa al usuario que eliminar una clave foránea puede llevar a datos huérfanos y romper la integridad referencial. CONFIRMACIÓN EXPLÍCITA: Para proceder, el usuario DEBE escribir la frase exacta: "Confirmar eliminación de la clave foránea [nombreFK] de la tabla [nombreTabla]". VERIFICACIÓN ESTRICTA: No ejecutes la eliminación si la confirmación no es exacta. USO: Especifica la tabla y el nombre de la clave foránea a eliminar. EJEMPLO: "Elimina la clave foránea fk_cliente de la tabla ventas."
| Name | Required | Description | Default |
|---|---|---|---|
| nombre | Yes | Nombre de la clave foránea | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and excels. It discloses critical behavioral traits: the destructive nature (warns about orphaned data and broken referential integrity), strict confirmation requirements (exact phrase verification), and execution constraints (no execution without exact confirmation). This goes beyond basic function to explain safety and procedural aspects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (rules, warning, confirmation, usage, example) and front-loaded with mandatory rules. It's appropriately sized for a destructive operation, though slightly verbose due to formatting. Every sentence adds value, but it could be more concise by integrating some points.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (destructive operation with confirmation), no annotations, and no output schema, the description is highly complete. It covers purpose, usage guidelines, behavioral transparency, and includes an example. For a 2-parameter tool with full schema coverage, this provides sufficient context for safe and correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters ('nombre' and 'tabla'). The description adds minimal value beyond the schema by mentioning 'Especifica la tabla y el nombre de la clave foránea' and providing an example, but doesn't elaborate on parameter semantics like format or constraints. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: 'eliminar una clave foránea' (delete a foreign key). It distinguishes from siblings like 'eliminarColumna' (delete column) or 'eliminarTabla' (delete table) by specifying the exact resource (foreign key) and action (delete with confirmation rules). The description provides specific verb+resource differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage rules: it states when to use (to delete a foreign key), includes a mandatory confirmation phrase requirement, and gives a clear example. It also warns about data integrity risks, helping the agent understand the tool's appropriate context versus alternatives like 'agregarClaveForanea' (add foreign key).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eliminarColumnaA
Sigue estas reglas OBLIGATORIAS para eliminar una columna: ADVERTENCIA INICIAL: Informa al usuario que eliminar una columna es una acción DESTRUCTIVA y PERMANENTE que borrará todos los datos que contiene. CONFIRMACIÓN EXPLÍCITA: Para proceder, el usuario DEBE escribir la frase exacta: "Confirmar eliminación de la columna [nombreColumna] de la tabla [nombreTabla]". VERIFICACIÓN ESTRICTA: No ejecutes la eliminación si la frase de confirmación no es una coincidencia exacta. USO EXCLUSIVO: Úsala solo para eliminar columnas, no tablas ni registros. EJEMPLO: "Elimina la columna edad de la tabla clientes."
| Name | Required | Description | Default |
|---|---|---|---|
| columna | Yes | Nombre de la columna a eliminar | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It thoroughly describes destructive and permanent nature ('acción DESTRUCTIVA y PERMANENTE'), mandatory confirmation requirements ('CONFIRMACIÓN EXPLÍCITA'), strict verification rules ('VERIFICACIÓN ESTRICTA'), and provides a concrete example. This goes well beyond what the input schema provides about parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (ADVERTENCIA INICIAL, CONFIRMACIÓN EXPLÍCITA, etc.) and every sentence serves a purpose. It could be slightly more concise by combining some points, but the information density is high and front-loaded with critical warnings.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no annotations and no output schema, the description provides comprehensive context: it explains the destructive nature, specifies exact confirmation requirements, gives usage boundaries vs sibling tools, and includes an example. This adequately compensates for the lack of structured metadata about this high-risk operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters clearly documented in the schema ('columna: Nombre de la columna a eliminar', 'tabla: Nombre de la tabla'). The description doesn't add significant parameter semantics beyond what's in the schema, though it reinforces parameter usage through the example. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose as 'eliminar una columna' (delete a column), specifying both the verb (eliminar) and resource (columna). It clearly distinguishes this from sibling tools like eliminarTabla (delete table) by stating 'USO EXCLUSIVO: Úsala solo para eliminar columnas, no tablas ni registros' (EXCLUSIVE USE: Use it only to delete columns, not tables or records).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool vs alternatives: 'Úsala solo para eliminar columnas, no tablas ni registros' (Use it only to delete columns, not tables or records), directly contrasting with sibling tools like eliminarTabla. It also specifies prerequisites: the user must provide an exact confirmation phrase, making usage conditions clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eliminarRestriccionUnicaA
Sigue estas reglas OBLIGATORIAS para eliminar una restricción UNIQUE: ADVERTENCIA INICIAL: Informa al usuario que eliminar esta restricción permitirá datos duplicados, lo que podría afectar la integridad de los datos. CONFIRMACIÓN EXPLÍCITA: Para proceder, el usuario DEBE escribir la frase exacta: "Confirmar eliminación de la restricción [nombreRestriccion] de la tabla [nombreTabla]". VERIFICACIÓN ESTRICTA: No ejecutes la eliminación si la confirmación no es exacta. USO: Especifica la tabla y el nombre exacto de la restricción a eliminar. EJEMPLO: "Elimina la restricción única email_unique de la tabla usuarios."
| Name | Required | Description | Default |
|---|---|---|---|
| nombre | Yes | Nombre de la restricción UNIQUE | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It thoroughly describes the tool's behavior: the mandatory warning to users, strict confirmation requirement, exact phrase verification, and the potential impact on data integrity (allowing duplicate data). This goes well beyond basic parameter documentation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (ADVERTENCIA, CONFIRMACIÓN, VERIFICACIÓN, USO, EJEMPLO) and uses bullet-point-like formatting. However, it could be more concise by integrating some points; the example partially repeats usage instructions. Every sentence adds value, but minor trimming is possible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a destructive operation with safety mechanisms), no annotations, and no output schema, the description is highly complete. It covers purpose, usage rules, behavioral constraints, warnings, and provides an example. This adequately compensates for the lack of structured metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters ('nombre' and 'tabla'). The description adds minimal parameter semantics beyond the schema—it mentions specifying table and constraint name but doesn't provide additional context about format or constraints. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: 'eliminar una restricción UNIQUE' (delete a UNIQUE constraint). It uses a specific verb ('eliminar') and resource ('restricción UNIQUE'), and clearly distinguishes it from sibling tools like 'eliminarClaveForanea' or 'eliminarColumna' by focusing on unique constraints specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage rules: it specifies when to use (to delete a unique constraint), includes a mandatory confirmation step ('Confirmar eliminación...'), and gives an example. It also warns about data integrity implications, which helps differentiate it from other deletion tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eliminarTablaA
Sigue estas reglas OBLIGATORIAS para eliminar una tabla: ADVERTENCIA INICIAL: Informa al usuario que esta es una acción DESTRUCTIVA y PERMANENTE que no se puede deshacer. CONFIRMACIÓN EXPLÍCITA: Para proceder, el usuario DEBE escribir la frase exacta: "Confirmar eliminación de la tabla [nombreTabla]", reemplazando [nombreTabla] con el nombre de la tabla a eliminar. VERIFICACIÓN ESTRICTA: No ejecutes la eliminación si la frase de confirmación del usuario no es una coincidencia exacta. USO EXCLUSIVO: Recuerda que esta herramienta solo elimina tablas completas, NUNCA registros o columnas individuales.
| Name | Required | Description | Default |
|---|---|---|---|
| nombreTabla | Yes | Nombre exacto de la tabla que se va a eliminar |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and excels. It discloses critical behavioral traits: the action is 'DESTRUCTIVA y PERMANENTE que no se puede deshacer' (destructive and permanent), requires exact user confirmation phrase matching, and has strict verification rules. This goes beyond basic function to explain safety and procedural constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded with a warning. Each sentence earns its place: warning, confirmation rule, verification rule, and scope clarification. It uses bullet-like formatting for clarity without redundancy, making it efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, 100% schema coverage, no output schema, and a single parameter, the description is complete. It covers purpose, destructive nature, procedural requirements, and scope limitations. For a destructive tool, this provides sufficient context for safe invocation without needing output details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'nombreTabla', so baseline is 3. The description adds value by embedding the parameter in the confirmation phrase context: 'Confirmar eliminación de la tabla [nombreTabla]', reinforcing its role. However, it doesn't add semantic details beyond what the schema provides (e.g., format constraints).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: 'eliminar una tabla' (delete a table). It distinguishes from siblings by specifying it deletes entire tables, not individual records or columns, unlike tools like eliminarColumna or eliminarClaveForanea. The verb+resource combination is clear and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use guidance: 'esta herramienta solo elimina tablas completas, NUNCA registros o columnas individuales.' It also implicitly contrasts with siblings like eliminarColumna or eliminarClaveForanea by specifying scope. The confirmation requirement adds procedural context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
exportarTablaA
Sigue estas reglas para exportar una tabla: PROPÓSITO: Exportar los datos de una tabla a un formato de texto (CSV o JSON). USO: Especifica la tabla y el formato deseado. Opcionalmente, puedes indicar columnas específicas para exportar solo una parte de los datos. EJEMPLO: "Exporta la tabla clientes a CSV."
| Name | Required | Description | Default |
|---|---|---|---|
| columnas | No | Columnas a exportar (opcional) | |
| formato | Yes | Formato de exportación | |
| tabla | Yes | Nombre de la tabla a exportar |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the action (export) and optional column selection but lacks details on behavioral traits like whether this requires specific permissions, if it's a read-only operation, what happens to the exported data (e.g., file generation, download), or any rate limits. For a tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with clear sections (PROPÓSITO, USO, EJEMPLO) and uses three sentences efficiently. However, the example 'Exporta la tabla clientes a CSV.' is redundant with the purpose and usage sections, slightly reducing conciseness. Overall, it is front-loaded and appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and 100% schema coverage, the description is adequate but has clear gaps. It covers the purpose and basic usage but lacks behavioral context (e.g., permissions, output handling) and does not explain return values. For a tool with moderate complexity (exporting data), this is minimal viable but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (tabla, formato, columnas) with descriptions and enum values. The description adds minimal value beyond the schema by mentioning the same parameters in the 'USO' section, but does not provide additional syntax or format details. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Exportar los datos de una tabla a un formato de texto (CSV o JSON)', which is a specific verb (exportar) + resource (datos de una tabla) + output format. It clearly distinguishes from siblings like importarTabla (import), consultarSQL (query), or listarTablas (list), which have different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use it: 'Especifica la tabla y el formato deseado. Opcionalmente, puedes indicar columnas específicas para exportar solo una parte de los datos.' It gives basic usage instructions but does not explicitly state when NOT to use it or name alternatives among siblings, such as consultarSQL for querying instead of exporting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
importarTablaA
Sigue estas reglas para importar a una tabla: PROPÓSITO: Importar y insertar datos en una tabla desde un formato de texto (CSV o JSON). PRECAUCIÓN: Asegúrate de que los datos en el texto coincidan con las columnas y tipos de la tabla destino para evitar errores. USO: Proporciona el nombre de la tabla, los datos en formato de texto (string) y el formato (csv o json). EJEMPLO: "Importa los datos del archivo clientes.csv a la tabla clientes."
| Name | Required | Description | Default |
|---|---|---|---|
| columnas | No | Columnas a importar (opcional, para CSV) | |
| datos | Yes | Datos a importar (CSV o JSON) | |
| formato | Yes | Formato de los datos | |
| tabla | Yes | Nombre de la tabla destino |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool performs data insertion (a write operation) and warns about potential errors if data doesn't match table columns/types, which is useful behavioral context. However, it lacks details on permissions, rate limits, transaction behavior, or error handling specifics, leaving gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with labeled sections (PROPÓSITO, PRECAUCIÓN, USO, EJEMPLO) and front-loaded key information. It is appropriately sized, but the 'USO' section slightly repeats schema details, and the example could be more concise. Overall, it efficiently conveys necessary information without significant waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (data import/insertion with 4 parameters), no annotations, and no output schema, the description is moderately complete. It covers purpose, precautions, usage, and an example, but lacks details on return values, error formats, or advanced behavioral traits. For a mutation tool without structured support, it should provide more context to be fully adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value by mentioning the parameters in the 'USO' section but does not provide additional semantics, syntax examples, or constraints beyond what the schema specifies. The baseline of 3 is appropriate given the comprehensive schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('importar', 'insertar') and resources ('datos', 'tabla'), and distinguishes it from siblings like 'exportarTabla' (export) and 'insertarDatos' (insert without import). It explicitly mentions the source format (text, CSV, JSON) and destination (table), providing a complete picture of its function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage by specifying the required inputs (table name, data string, format) and offering an example. However, it does not explicitly state when to use this tool versus alternatives like 'insertarDatos' or 'exportarTabla', nor does it mention any exclusions or prerequisites beyond data compatibility.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
insertarDatosA
Sigue estas reglas para insertar datos: PROPÓSITO: Insertar uno o varios registros (filas) nuevos en una tabla. REGLA: Solo debe usarse para agregar datos nuevos. No la uses para actualizar registros existentes ni para modificar la estructura de la tabla. FORMATO: Los datos deben ser un array de objetos, donde cada objeto es un registro. EJEMPLO: "Agrega un cliente con nombre Juan a la tabla clientes."
| Name | Required | Description | Default |
|---|---|---|---|
| datos | Yes | Array de objetos con los datos a insertar | |
| tabla | Yes | Nombre de la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the basic behavior (inserting new records) and includes a usage rule about not updating existing records. However, it lacks details about permissions needed, error handling, transaction behavior, or what happens on duplicate keys. For a mutation tool with zero annotation coverage, this provides some behavioral context but leaves significant gaps in understanding the full operational characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (PROPÓSITO, REGLA, FORMATO, EJEMPLO) and every sentence earns its place. It's front-loaded with the purpose, followed by important rules and format specifications, ending with a practical example. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description provides good purpose clarity and usage guidelines but lacks information about what happens after insertion (return values, success indicators, error responses). The example helps but doesn't fully compensate for the missing behavioral details that would be important for an AI agent to use this tool effectively in production scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters ('tabla' and 'datos'). The description adds value by explaining the format requirement: 'Los datos deben ser un array de objetos, donde cada objeto es un registro' (Data must be an array of objects, where each object is a record) and provides an example that illustrates how the parameters work together. This enhances understanding beyond the basic schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the purpose as 'Insertar uno o varios registros (filas) nuevos en una tabla' (Insert one or several new records/rows into a table). This is a specific verb+resource combination that clearly distinguishes it from sibling tools like 'actualizar' (update) or 'modificar estructura' (modify structure) operations. The description goes beyond just restating the name by specifying what type of operation it performs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage rules: 'Solo debe usarse para agregar datos nuevos. No la uses para actualizar registros existentes ni para modificar la estructura de la tabla' (Only use for adding new data. Do not use to update existing records or modify table structure). This clearly defines when to use this tool versus alternatives, with specific exclusions that help differentiate it from other CRUD or schema modification tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
listarTablasB
Sigue estas reglas para listar tablas: PROPÓSITO: Obtener una lista de todas las tablas en la base de datos. USO: Úsalo cuando necesites saber qué tablas existen. EJEMPLO: "Muestra las tablas disponibles."
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool lists all tables but doesn't mention behavioral traits like whether it's read-only, if it requires specific permissions, how results are formatted (e.g., pagination, sorting), or any rate limits. For a tool with zero annotation coverage, this is a significant gap, as it leaves the agent guessing about operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with sections (PROPÓSITO, USO, EJEMPLO), which helps organization, but it's somewhat verbose for a simple tool. Sentences like 'Sigue estas reglas para listar tablas:' add unnecessary framing. The example 'Muestra las tablas disponibles.' is redundant with the purpose statement. It could be more concise by removing the introductory phrase and merging sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is adequate but has gaps. It explains what the tool does and when to use it, but lacks behavioral context (e.g., output format, error handling). Without annotations or an output schema, the agent might not know what to expect from the results, making it incomplete for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100% (since there are no parameters to describe). The description doesn't need to add parameter semantics, and it correctly doesn't mention any. A baseline score of 4 is appropriate for tools with no parameters, as there's nothing to compensate for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose: 'Obtener una lista de todas las tablas en la base de datos' (Get a list of all tables in the database). It specifies the verb ('obtener una lista') and resource ('tablas en la base de datos'), making it easy to understand. However, it doesn't explicitly differentiate from sibling tools like 'consultarSQL' or 'columnasDeTabla', which might also involve table listing in different contexts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage guidance: 'Úsalo cuando necesites saber qué tablas existen' (Use it when you need to know what tables exist). This gives a specific context for when to use the tool. However, it doesn't mention when not to use it or provide explicit alternatives among siblings, such as distinguishing from 'consultarSQL' for more complex queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renombrarColumnaA
Sigue estas reglas OBLIGATORIAS para renombrar una columna: ADVERTENCIA: Renombrar una columna es una acción delicada que puede romper consultas o código de aplicación que dependan de ella. Procede con cuidado. PROPÓSITO: Cambiar el nombre de una columna existente dentro de una tabla. REQUISITO: Debes proporcionar el tipo de dato de la columna junto con el nuevo nombre. USO: Especifica la tabla, el nombre actual, el nuevo nombre y el tipo de dato. EJEMPLO: "Renombra la columna nombre a nombre_completo en la tabla empleados."
| Name | Required | Description | Default |
|---|---|---|---|
| columnaActual | Yes | Nombre actual de la columna | |
| nuevoNombre | Yes | Nuevo nombre para la columna | |
| tabla | Yes | Nombre de la tabla | |
| tipo | Yes | Tipo de la columna (ej. VARCHAR(255) NOT NULL) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It successfully warns about the delicate nature of the operation ('acción delicada que puede romper consultas o código'), which is crucial for a destructive mutation. However, it doesn't mention permissions, rollback capabilities, or response format, leaving some behavioral aspects unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with clear sections (ADVERTENCIA, PROPÓSITO, REQUISITO, USO, EJEMPLO), which aids readability. However, it's somewhat verbose with repetitive information (e.g., the example largely restates the USO section), and the formatting with all-caps headings could be more streamlined.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description does a good job covering the essential context: purpose, warning, parameter requirements, and usage example. It lacks details on permissions, error handling, and return values, but given the schema's full coverage and the clear behavioral warning, it's reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 4 parameters. The description adds value by emphasizing that 'tipo' is required ('REQUISITO: Debes proporcionar el tipo de dato') and providing an example format ('ej. VARCHAR(255) NOT NULL'), which goes beyond the schema's basic documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Cambiar el nombre de una columna existente dentro de una tabla' (Change the name of an existing column within a table), which is a specific verb+resource combination. It clearly distinguishes this from sibling tools like 'renombrarTabla' (rename table) and 'cambiarTipoColumna' (change column type), establishing its unique purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance with 'USO: Especifica la tabla, el nombre actual, el nuevo nombre y el tipo de dato' (USE: Specify the table, current name, new name, and data type). It also includes a concrete example and warns about when to be careful ('ADVERTENCIA: Renombrar una columna es una acción delicada...'), though it doesn't name specific alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renombrarTablaA
Sigue estas reglas OBLIGATORIAS para renombrar una tabla: ADVERTENCIA: Renombrar una tabla es una acción delicada que puede romper consultas o vistas existentes que dependan de ella. Procede con cuidado. PROPÓSITO: Cambiar el nombre de una tabla existente por uno nuevo. VERIFICACIÓN: Asegúrate de que el nuevo nombre no esté ya en uso. USO: Proporciona el nombre actual y el nuevo nombre. EJEMPLO: "Renombra la tabla ventas a ventas_2024."
| Name | Required | Description | Default |
|---|---|---|---|
| nombreActual | Yes | Nombre actual de la tabla | |
| nuevoNombre | Yes | Nuevo nombre para la tabla |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It does an excellent job disclosing critical behavioral traits: it warns that renaming is a 'delicate action that can break existing queries or views' and emphasizes proceeding with care. This goes beyond the basic rename function to highlight potential side effects and risks, which is valuable context for safe tool invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (ADVERTENCIA, PROPÓSITO, VERIFICACIÓN, USO, EJEMPLO) and every sentence earns its place. It's appropriately sized—concise yet comprehensive—with no wasted words, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description does an excellent job covering the essential context: purpose, risks, verification steps, and usage instructions. The only minor gap is the lack of information about return values or confirmation of success, but given the warning-heavy nature of the tool, the description is largely complete for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters clearly documented in the schema. The description adds minimal value beyond the schema: it mentions providing 'el nombre actual y el nuevo nombre' and includes an example, but doesn't explain parameter semantics beyond what the schema already states. This meets the baseline of 3 when schema coverage is high.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Cambiar el nombre de una tabla existente por uno nuevo' (Change the name of an existing table to a new one), which is a specific verb+resource combination. It clearly distinguishes from sibling tools like 'renombrarColumna' (rename column) by focusing on tables rather than columns, and from 'eliminarTabla' (delete table) by being a rename operation rather than deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: when you need to rename a table. It includes a verification step ('Asegúrate de que el nuevo nombre no esté ya en uso') and an example. However, it doesn't explicitly state when NOT to use it or mention specific alternatives among the sibling tools, though the purpose clearly differentiates it from other table operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Every tool has a clearly distinct purpose with no ambiguity. The tools are well-organized around specific database operations like table management (crearTabla, eliminarTabla), column operations (agregarColumna, eliminarColumna), constraints (agregarRestriccionUnica, eliminarClaveForanea), and data manipulation (consultarSQL, crudTabla). Even tools that might seem similar like insertarDatos and crudTabla are clearly differentiated by scope and functionality.
All 18 tools follow a consistent Spanish verb_noun naming pattern (e.g., agregarColumna, eliminarTabla, renombrarColumna). The naming is perfectly predictable and uniform throughout the entire set, making it easy for agents to understand the action and target of each tool.
With 18 tools, this server provides comprehensive coverage for database management operations. Each tool earns its place by addressing specific needs like schema modification, data querying, import/export, and CRUD operations. The count is well-scoped for a database management system, neither too sparse nor overly bloated.
The toolset provides complete coverage for database management, including full CRUD operations (via crudTabla and insertarDatos), schema lifecycle management (create/rename/delete tables and columns), constraint management (foreign keys, unique constraints), data querying (consultarSQL), and import/export functionality. There are no obvious gaps that would hinder an agent's ability to perform standard database tasks.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
A Model Context Protocol (MCP) server for Selise Blocks Cloud integration
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides tools for connecting to and interacting with various database systems (SQLite, PostgreSQL, MySQL/MariaDB, SQL Server) through a unified interface.3
- AlicenseNot gradedqualityCmaintenanceA Model Context Protocol server that enables interaction with PostgreSQL databases to list tables, retrieve schemas, and execute read-only SQL queries.29MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that connects to MySQL databases, allowing execution of SQL queries, table listing, and schema inspection through Claude Desktop.454MIT
- AlicenseNot gradedqualityCmaintenanceA Model Context Protocol server for interacting with MSSQL and PostgreSQL databases, offering tools for schema exploration and SQL execution. It features configurable query modes for safety and supports advanced authentication methods like Windows Auth and SSL.17MIT
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Yonsn76/MyPos-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server