Token导航 LogoToken导航TokenDH.com
CONNX MCP Sample logo
数据服务stdio官方级别未说明来源级核验

CONNX MCP Sample

MCP Server

@modelcontextprotocol/inspector

一个基于MCP协议的CONNX数据库查询与更新工具,提供安全的SQL执行和数据处理功能,适用于企业数据分析和操作。

工具数

12

提示词数

0

GitHub Stars

0

资源数

0
数据分析PythonClaude数据操作Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

SoftwareAG

提供方

SoftwareAG

最后核验

2026/5/17 20:19

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @modelcontextprotocol/inspector

详细介绍

CI

目录

- query_connx - update_connx - find_customers

CONNX MCP服务器

该项目是一个演示和参考实施,旨在展示如何在本地构建、配置和托管MCP服务器,以通过软件AG CONNX实现人工智能辅助访问大型机VSAM数据。

服务器不是一个完整的或强化的生产解决方案。相反,它提供了一个集中的、最小的MCP概念示例,包括工具定义、资源公开、ANSI SQL-92查询模式以及与遗留数据源的安全交互。

如有任何问题或建议,请联系Demos Economacos(Demos.Economacos(at)softwareageg.com)。

特性

  • 与CONNX的ODBC连接,用于统一数据库访问。
  • MCP工具:例如 query_connx, update_connx.
  • 资源:模式发现。
  • 异步支持提高效率。

先决条件

  • Python 3.8或更高版本(用Python 3.11/3.12测试)
  • 已安装并配置CONNX ODBC驱动程序

- 对于Windows:CONNX ODBC驱动程序。 - 对于Linux:带CONNX驱动程序的unixODBC

  • 系统中配置的有效CONNX DSN(数据源名称)
  • 具有适当读/写权限的数据库和CONNX凭据

安装

  1. 克隆仓库: git clone https://github.com/SoftwareAG/CONNX_MCP_Sample.git
  2. 安装依赖项: pip install -r requirements.txt
  3. 配置CONNX DSN(请参阅下面的配置部分)
  4. 配置克劳德桌面MCP连接

配置

环境变量

创建 .env 项目根目录中的文件:

CONNX_DSN=your_connx_dsn_name
CONNX_USER=your_username
CONNX_PASSWORD=your_password
CONNX_TIMEOUT=30

连接字符串格式

或者,在中配置 connx_server.py:

connection_string = (
    f"DSN={CONNX_DSN};"
    f"UID={CONNX_USER};"
    f"PWD={CONNX_PASSWORD};"
)

安全说明:永远不要将凭据提交到版本控制。始终在生产中使用环境变量或安全凭据管理。

用法

此服务器设计为由MCP主机(例如Claude Desktop)使用stdio传输启动。看 集成到MCP主机配置中

除了冒烟测试,您通常不会手动运行Python代码。

______________________________________________________________________

MCP工具

此服务器通过以下方式公开功能 MCP工具,允许客户端使用结构化、经过验证的入口点对CONNX连接的数据源执行数据库操作。

MCP工具提供了一个安全、定义良好的接口,用于与CONNX支持的数据进行交互,而不会向客户端暴露原始数据库连接。

当前可用工具示例

query_connx

目的 对CONNX连接的数据库执行SQL SELECT语句并返回结果。

参数

  • query (str):SQL SELECT语句

行为

  • 异步执行
  • 在内部使用参数化执行
  • 以字典列表的形式返回结果
  • 自动清理输入以降低SQL注入风险

返回格式

{
  "results": [
    { "COLUMN1": "value", "COLUMN2": 123 },
    ...
  ],
  "count": 10
}

示例

SELECT CUSTOMER_ID, CUSTOMER_NAME
FROM CUSTOMERS
WHERE STATE = 'CA'

______________________________________________________________________

update_connx

目的 通过CONNX执行数据修改SQL语句(INSERT、UPDATE、DELETE)。

参数

  • operation (str):插入、更新、删除之一
  • query (str):完整的SQL语句

行为

  • 执行前验证操作类型
  • 在交易中执行
  • 承诺成功,放弃失败

返回格式

{
  "affected_rows": 5,
  "message": "Update completed successfully."
}

示例

UPDATE CUSTOMERS
SET STATUS = 'INACTIVE'
WHERE LAST_LOGIN  '2024-01-01'"
  }
}

示例:批量更新

{
  "tool": "update_connx",
  "arguments": {
    "operation": "update",
    "query": "UPDATE INVENTORY SET STATUS = 'REORDER' WHERE QUANTITY  Dict[str, Any]:
    """
    Return the number of rows in a table.
    """
    query = f"SELECT COUNT(*) AS ROW_COUNT FROM {sanitize_input(table_name)}"

    try:
        results = await execute_query_async(query)
        return {
            "table": table_name,
            "row_count": results[0]["ROW_COUNT"]
        }
    except ValueError as e:
        return {"error": str(e)}

用法

{
  "tool": "count_connx",
  "arguments": {
    "table_name": "CUSTOMERS"
  }
}

______________________________________________________________________

什么是MCP?

模型上下文协议(MCP)是由Anthropic开发的开源标准,于2024年11月发布。它使人工智能模型和应用程序能够通过标准化的界面安全地连接到外部数据源、工具和工作流并与之交互。

MCP充当AI的通用“USB-C”端口,允许无缝集成,无需为每个连接定制代码。该协议基于工具使用和函数调用等现有概念,但对其进行了标准化,减少了人工智能集成中的碎片化。通过提供对真实世界实时数据的访问,MCP使像Claude这样的大型语言模型(LLM)能够执行任务,提供准确的见解,并处理超出其原始训练数据的操作。

MCP解决了人工智能模型与实时数据和外部功能隔离的挑战。它使LLM能够:

  • 访问来自不同来源的当前数据。
  • 代表用户执行操作,例如查询数据库或发送电子邮件。
  • 利用专门的工具和工作流程,无需自定义集成。

为什么选择CONNX的MCP?

CONNX已经提供了对不同数据源的统一访问,MCP在上面添加了一个人工智能驱动的自然语言界面。这种组合可以实现:

  • 简化传统访问:使用简单的英语而不是复杂的SQL查询大型机和遗留系统
  • 民主化数据:非技术用户可以在没有SQL知识的情况下访问企业数据
  • 降低集成复杂性:一个MCP服务器提供对所有CONNX连接源的AI访问
  • 企业安全:利用CONNX经过验证的安全模型,同时添加AI功能
  • 更快的洞察时间:从提问到回答只需几秒钟,而不是几个小时

______________________________________________________________________

积木

MCP服务器通过三个主要构建块公开功能,这些构建块标准化了AI应用程序与外部系统的交互方式:

功能说明示例谁控制它
工具LLM可以根据用户请求调用的活动函数。这些可以执行写入数据库、调用API或修改文件等操作。主机在调用之前必须获得用户同意。搜索航班、发送消息、创建日历事件模型(LLM决定何时呼叫)
资源提供上下文的被动、只读数据源,如文件内容、数据库架构或API文档。检索文档、访问知识库、读取日历应用程序(主机管理访问权限)
提示指导LLM有效使用工具和资源的预构建模板或工作流程。计划假期、总结会议、起草电子邮件用户(选择或自定义)

______________________________________________________________________

MCP的工作原理

MCP的核心是允许LLM向外部系统请求帮助以完成用户查询。该过程涉及发现、调用、执行和响应。

简化工作流示例

考虑一个用户查询:“在我们的数据库中查找最新的销售报告,并将其通过电子邮件发送给我的经理。”

  1. 请求和发现LLM认识到它需要外部访问(例如,数据库查询和电子邮件发送)。通过MCP客户端,它可以发现可用的服务器和相关工具,例如 database_queryemail_sender.
  1. 工具调用:LLM生成结构化请求。客户端将其发送到适当的服务器(例如,首先调用 database_query 报告详情)。
  1. 外部行动和响应:服务器翻译请求(例如,转换为安全的SQL查询),在后端系统上执行它,检索数据,并将其以格式化的响应形式返回给客户端。
  1. 后续行动:LLM使用数据调用下一个工具(例如。, email_sender),服务器确认完成。
  1. 最终响应LLM回复用户:“我找到了最新的销售报告,并通过电子邮件发送给了您的经理。”

这种双向流确保了高效、安全的交互。现实世界的例子包括从Figma设计生成web应用程序,通过自然语言分析多个数据库中的数据,或在Blender中创建3D模型进行打印。

______________________________________________________________________

CONNX MCP用例

商业智能与分析

  • 自然语言查询:“显示2024年第四季度收入排名前10的客户”
  • 跨数据库分析:在单个对话中查询来自多个CONNX连接源(大型机、Oracle、SQL Server)的数据
  • 趋势分析:“比较过去3个季度各地区的销售业绩”

数据运营

  • 批量更新:“更新自2022年以来未登录的所有非活跃客户”
  • 数据验证:“检查重复的客户记录并显示冲突”
  • 数据迁移:“从遗留系统中提取客户数据,为转型做好准备”

企业集成

  • 主机访问:通过自然语言访问遗留VSAM、IMS或DB2数据
  • 多平台查询:在单个查询中组合来自AS/400、Oracle和SQL Server的数据
  • 实时报告:从实时企业数据生成报告,无需手动SQL

开发与测试

  • 模式探索:“哪些表包含客户信息?”
  • 数据采样:“显示订单表中的示例记录”
  • 查询优化:在人工智能的帮助下测试和优化查询

______________________________________________________________________

安全最佳实践

  • 输入净化:所有查询都经过净化,以防止SQL注入攻击
  • 参数化查询:尽可能使用参数化执行
  • 最小特权:仅授予数据库用户必要的权限
  • 审计日志:启用CONNX审核日志以跟踪所有数据库操作
  • 凭据管理:使用环境变量或密钥管理服务(AWS Secrets Manager、Azure密钥库)
  • 网络安全:使用VPN或专用网络进行数据库连接
  • 速率限制:考虑对MCP工具调用实施速率限制

______________________________________________________________________

免责声明

本项目按原样提供,不提供任何形式的保修。

其目的是:

  • 学习资源
  • 参考实现
  • 安全MCP服务器开发的起点

它并不打算取代企业级安全控制。

目录标签

目录标签

数据分析PythonClaude数据操作数据库访问本地部署SQL执行企业数据分析VSAM访问

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@modelcontextprotocol/inspector

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP