使用说明
Watsonx.data文档库检索MCP服务器
这 Watsonx.data文档库检索MCP服务器 是一种符合模型上下文协议(MCP)的服务,可将AI代理与watsonx.data中的文档库无缝连接,实现智能数据检索和交互。
主要特点
-
动态发现和注册
自动检测文档库并将其注册为MCP工具。 -
自然语言接口
使用会话语言查询文档库并接收人类可读的响应。 -
最小配置
部署时只需简单的设置要求,无需复杂的配置。 -
框架不可知集成
直接插入具有原生MCP兼容性的首选代理框架。
概述
- 协议:模型上下文协议(MCP)
- 目的:充当代理AI框架和watsonx.data文档库之间的桥梁
- 支持的环境:IBM Cloud Pak for Data(CPD)、Watsonx SaaS
- 代理兼容性:代理框架必须支持MCP标准(通过SSE或Stdio)。
注意:此服务器将无法与不支持MCP的代理一起运行。
先决条件
- Python版本 3.11 或以后
- 访问您的 CPD或SaaS环境
- 访问凭据和a CA证书包 CPD
- 确保您的 代理框架支持MCP协议
获取CPD的CA捆绑包
-
登录到您的OpenShift集群:
oc login -u kubeadmin -p '<your_openshift_password>' https://<your_openshift_cpd_url>:6443 -
提取根CA包:
oc get configmap kube-root-ca.crt -o jsonpath='{.data.ca\.crt}' > cabundle.crt
注意:请使用open shift登录命令。用户和密码将打开轮班门户登录用户名和密码
设置
第一步:安装Python
步骤2:创建虚拟环境
python -m venv .venv
步骤3:激活虚拟环境
source .venv/bin/activate # macOS/Linux
.venv\Scripts\activate # Windows
步骤4:安装 uv 包管理器
pip install uv
uv包裹: https://pypi.org/project/uv/
步骤5:安装MCP服务器包
pip install ibm-watsonxdata-dl-retrieval-mcp-server
配置
对于Cloud Pak For Data(CPD):
export CPD_ENDPOINT="<cpd-endpoint>"
export CPD_USERNAME="<cpd-username>"
export CPD_PASSWORD="<cpd-password>"
export CA_BUNDLE_PATH="<absolute_path_to_cabundle.crt>"
export LH_CONTEXT="CPD"
注:
- 对于CPD_ENDPOINT,请使用已安装CPD的端点url。示例:“https://cpd-cpd-instance.apps.perf10.5y2z.openshiftapps.com"
- 对于CPD_USERNAME和CPD_PASSWORD,使用用于登录CPD的用户名和密码。
对于Watsonx SaaS:
export WATSONX_DATA_API_KEY="<api-key>"
export WATSONX_DATA_RETRIEVAL_ENDPOINT="<retrieval-service-endpoint>"
export DOCUMENT_LIBRARY_API_ENDPOINT="<document-library-endpoint>"
export WATSONX_DATA_TOKEN_GENERATION_ENDPOINT="<token-generation-endpoint>"
export LH_CONTEXT="SAAS"
注:
- 对于DOCUMENT_LIBRARY_API_ENDPOINT,请在此使用与区域对应的端点url:https://cloud.ibm.com/apidocs/data-ai-common-core#endpoint-url。 例子:https://api.ca-tor.dai.cloud.ibm.com
- 对于WATSONX_DATA_RETRIVAL_ENDPOINT,请使用WATSONX.DATA端点。 例子:https://console-ibm-cator.lakehouse.saas.ibm.com
- 对于WATSONX_DATA_TOKEN_GENERATION_ENDPOINT,请使用此处的端点url:https://cloud.ibm.com/apidocs/iam-identity-token-api#endpoints . 例子:https://iam.cloud.ibm.com
运行服务器
uv run ibm-watsonxdata-dl-retrieval-mcp-server
默认情况下,服务器在 sse 8000号港口的运输方式。
运输:苏格兰和南方能源公司
uv run ibm-watsonxdata-dl-retrieval-mcp-server --port <desired_port> --transport sse
运输:stdio
uv run ibm-watsonxdata-dl-retrieval-mcp-server --port <desired_port> --transport stdio
与WXO集成
先决条件:
安装WXO ADK并完成初始设置。有关更多详细信息,请参阅文档:https://developer.watson-orchestrate.ibm.com
运输:STDIO
要使用WXO在stdio传输中添加MCP服务器,请参阅以下示例。
- 创建连接
orchestrate connections add -a <app id>
- 配置连接
orchestrate connections configure --app-id <app id> --environment draft -t team -k key_value
- 设置凭据
orchestrate connections set-credentials --app-id=<app id> --env draft -e WATSONX_DATA_API_KEY="<api_key>" -e WATSONX_DATA_RETRIEVAL_ENDPOINT="<wxd retrieval endpoint>" -e DOCUMENT_LIBRARY_API_ENDPOINT="<DL endpoint>" -e WATSONX_DATA_TOKEN_GENERATION_ENDPOINT="<token generation endpoint>" -e LH_CONTEXT="SAAS"
Saas示例:
orchestrate toolkits import \
--kind mcp \
--name "mcp-toolkit" \
--description "mcp server for watsonx retrival service" \
--package "ibm-watsonxdata-dl-retrieval-mcp-server" \
--command "uv run ibm-watsonxdata-dl-retrieval-mcp-server --port <port> --transport stdio" \
--language python \
--tools "*" \
--app-id <app id>
运输:苏格兰和南方能源公司
- 安装mcp代理
pip install mcp-proxy
- 在sse传输中运行ibmwatsonxdata-dl检索mcp服务器。
一旦满足先决条件,这些工具就可以作为工具包添加到WXO中。
例子:
orchestrate toolkits import \
--kind mcp \
--name mcp_toolkit \
--description "MCP server (hosted, SSE)" \
--package "mcp-proxy" \
--language python \
--command "uvx mcp-proxy https://<mcp server endpoint>/sse" \
--tools "*"
注:
在SAAS和MCP服务器本地运行wxo时,如果需要,可以公开MCP服务器端点。
有关更多详细信息,请参阅wxo文档:https://www.ibm.com/docs/en/watsonx/watson-orchestrate/base?topic=tools-从mcp服务器导入
与其他代理框架集成
有关使用Watsonx.data文档库检索MCP服务器和代理框架的更多示例,请参阅 examples
局限性
- 环境凭据 在运行时无法更改.
- 要更改凭据,请执行以下操作之一:
- 使用新的环境变量启动新服务器,或者
- 获取新的环境变量并重新启动服务器。
- 要更改凭据,请执行以下操作之一:
工具命名
每个文档库都注册了一个唯一的工具名称:
tool_name = <library_name><library_id>
例子:
invoice_document_library77e4b4dd_479e_4406_acc4_ce154c96266c
