remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Provides tools for interacting with PostgreSQL databases, including CRUD operations, schema management (listing databases and tables, describing table structures, creating and altering tables), and executing SQL queries with optional query plan validation and read-only mode protection.
go-mcp-postgres
Descripción general
Copié el código de https://github.com/Zhwt/go-mcp-mysql/ y, con la ayuda de IA, cambié la base de datos de MySQL a Postgres. Servidor de Protocolo de Contexto de Modelo (MCP) listo para usar y sin carga para interactuar con Postgres y la automatización. No se requiere un entorno Node.js ni Python. Este servidor proporciona herramientas para realizar operaciones CRUD en bases de datos y tablas MySQL, y un modo de solo lectura para evitar escrituras inesperadas. También puedes hacer que el servidor MCP revise el plan de consulta mediante una sentencia EXPLAIN
antes de ejecutar la consulta, añadiendo el indicador --with-explain-check
.
Tenga en cuenta que este es un trabajo en progreso y es posible que aún no esté listo para su uso en producción.
Instalación
- Obtén la última versión y colócala en tu
$PATH
o en algún lugar al que puedas acceder fácilmente. - O si tienes Go instalado, puedes compilarlo desde la fuente:
Uso
Método A: Uso de argumentos de línea de comandos para el modo stdio
Nota: Para aquellos que colocan el binario fuera de su $PATH
, deben reemplazar go-mcp-postgres
con la ruta completa al binario: por ejemplo: si coloca el binario en la carpeta Descargas , puede usar la siguiente ruta:
Método B: Uso de argumentos de línea de comandos para el modo sse
./go-mcp-postgres --t sse --ip xxxx --port nnnn --dsn postgresql://usuario:contraseña@host:puerto/db --lang es
Banderas opcionales
--lang
: establece la opción de idioma (en/zh-CN), el valor predeterminado es el idioma del sistema- Agregue el indicador
--read-only
para habilitar el modo de solo lectura. En este modo, solo están disponibles las herramientas que empiezan porlist
,read_
ydesc_
. Asegúrese de actualizar/reiniciar el servidor MCP después de agregar este indicador. - De forma predeterminada, las consultas CRUD se ejecutan primero con una instrucción
EXPLAIN ?
para comprobar si el plan de consulta generado coincide con el patrón esperado. Agregue el indicador--with-explain-check
para desactivar este comportamiento.
Herramientas
Compatibilidad con varios idiomas: todas las descripciones de las herramientas se localizarán automáticamente según el parámetro de idioma.
Si desea añadir compatibilidad con su propio idioma, consulte la carpeta [locales](para i18n). Debe crear el nuevo archivo locales/xxx/active-xx.toml si desea usarlo en la línea de comandos.
Herramientas de esquema
list_database
- ${mcp.tool.list_database.desc}
- Parámetros: Ninguno
- Devuelve: una lista de nombres de bases de datos coincidentes.
list_table
- ${mcp.tool.list_table.desc}
- Parámetros:
name
: si se proporciona, enumera las tablas con el nombre especificado; de lo contrario, enumera todas las tablas.
- Devuelve: una lista de nombres de tablas coincidentes.
create_table
- ${mcp.tool.create_table.desc}
- Parámetros:
query
: La consulta SQL para crear la tabla.
- Devuelve: x filas afectadas.
alter_table
- Modificar una tabla existente en el servidor Postgres. Se informa al LLM que no debe eliminar ninguna tabla o columna existente.
- Parámetros:
query
: La consulta SQL para alterar la tabla.
- Devuelve: x filas afectadas.
desc_table
- Describe la estructura de una tabla.
- Parámetros:
name
: El nombre de la tabla a describir.
- Devuelve: La estructura de la tabla.
Herramientas de datos
read_query
- Ejecutar una consulta SQL de solo lectura.
- Parámetros:
query
: La consulta SQL a ejecutar.
- Devuelve: El resultado de la consulta.
write_query
- Ejecutar una consulta SQL de escritura.
- Parámetros:
query
: La consulta SQL a ejecutar.
- Devuelve: x filas afectadas, último ID de inserción: <last_insert_id>.
update_query
- Ejecutar una consulta SQL de actualización.
- Parámetros:
query
: La consulta SQL a ejecutar.
- Devuelve: x filas afectadas.
delete_query
- Ejecutar una consulta SQL de eliminación.
- Parámetros:
query
: La consulta SQL a ejecutar.
- Devuelve: x filas afectadas.
count_query
- Consultar el número de filas de una tabla determinada.
- Parámetros:
name
: El nombre de la tabla a contar.
- Devuelve: El número de fila de la tabla.
Muchas gracias nuevamente a https://github.com/Zhwt/go-mcp-mysql/ .
Licencia
Instituto Tecnológico de Massachusetts (MIT)
This server cannot be installed
¿Qué es go-mcp-postgres? go-mcp-postgres es un servidor de Protocolo de Contexto de Modelo (MCP) diseñado para interactuar con bases de datos Postgres, lo que permite realizar operaciones CRUD sencillas y automatizarlas sin necesidad de un entorno Node.js o Python.