@mcp sybase服务器开发
该项目提供与 模型上下文协议(MCP),旨在与Sybase数据库交互。它充当与MCP兼容的客户端(如IA向导)和数据库之间的桥梁,允许远程执行查询和探索数据库模式。
服务器由Node.js构建,并使用Java连接器(JDBC)建立与Sybase的通信。
特征
- 与Sybase数据库的安全连接。
- 列出所有可用的表。
- 特定表的架构描述。
- 执行只读SQL查询(
SELECT). - 支持在带有Docker的容器中部署。
先决条件
在开始之前,请确保您的系统上安装了以下内容:
- Node.js (建议V18或更高版本)
- npm (通常用node.js安装)
- Java开发工具包(JDK) (建议JDK 11或更高)
- 码头工人 (可选,仅当您想使用容器部署时)
安装
- 克隆存储库 (或下载目录中的文件):
# Ejemplo si estuviera en un repositorio git
# git clone https://github.com/mcp-sybase-server-dev.git
# cd sybase-server- 安装依赖项并编译项目:
导航到项目的根目录并执行以下命令。该命令将安装所需的node.js包,并自动运行脚本来编译Java和TypeScript代码。
npm install最后,您应该有一个新文件夹 dist 准备好执行JavaScript代码。
谎言
运行服务器
要启动服务器,请从项目的根目录运行以下命令,以JSON字符串提供与Sybase的连接细节。
node dist/src/index.js "{\"host\":\"tu_host\",\"port\":tu_puerto,\"database\":\"tu_db\",\"user\":\"tu_usuario\",\"password\":\"tu_contraseña\"}"重要的:
- 替换的值
tu_host,tu_puerto等等,用你真正的证书。 - 整个JSON连接字符串必须用双引号包装(
")让终端将其解释为一个参数。
如果服务器正确启动,终端将等待连接。除非发生错误,否则不会显示任何其他消息。
可用的工具
一旦服务器运行并连接到MCP客户端,您可以使用以下工具(通常通过自然语言):
list_tables
列出数据库中的所有用户表。
- 示例说明:
"¿Qué tablas hay en la base de datos?"
describe_table
显示特定表的列和数据类型。
- 参数 :
table_name(字符串) - 示例说明:
"Describe el esquema de la tabla 'sysusers'"
query
执行查询 SELECT 并以JSON格式返回结果。
- 参数 :
sql(字符串) - 示例说明:
"Ejecuta la consulta 'SELECT * FROM sysusers WHERE uid < 10'"
使用Docker部署(可选)
该项目包括 Dockerfile 以方便在容器中部署。
- 建立Docker的形象:
从项目的根目录中,执行构建脚本:
# Para Windows (si usas Git Bash o WSL)
sh build.sh
# O directamente con Docker
docker build -t mcp-sybase-server-dev .- 运行容器:
使用以下命令在Docker容器中启动服务器。国旗 -i 这对于保持标准输入打开并允许服务器接收请求至关重要。
docker run -i --rm mcp-sybase-server-dev "{\"host\":\"tu_host\",\"port\":tu_puerto,\"database\":\"tu_db\",\"user\":\"tu_usuario\",\"password\":\"tu_contraseña\"}"许可证
这个项目是在麻省理工学院的许可下进行的。
