MarkLogic文档服务器

一个用于MarkLogic数据库的MCP服务器实现,提供文档创建、读取、删除和搜索功能。

  • by karthiknarayankotha
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 karthiknarayankotha/marklogic-mcp

使用说明

MCP MarkLogic服务器

这是MarkLogic的模型上下文协议(MCP)服务器实现,允许您通过MCP工具与MarkLogic数据库进行交互。

  1. 服务器提供以下操作:

创建文档

  • 使用可选集合在MarkLogic中创建文档
  • 按URI读取文档
  • 按URI删除文档
  • 使用查询字符串和可选的集合筛选器搜索文档

安装

pip install mcp-marklogic

配置

服务器需要以下环境变量:

MARKLOGIC_HOST=localhost
MARKLOGIC_PORT=8000
MARKLOGIC_USERNAME=admin
MARKLOGIC_PASSWORD=admin

用法

安装和配置后,您可以启动服务器:

mcp-marklogic

可用工具

  1. create-document

    • 在MarkLogic中创建新文档
    • 参数:
      • uri:文档URI(必需)
      • content:JSON格式的文档内容(必填)
      • collections:要将文档添加到的集合列表(可选)
  2. read-document

    • 从MarkLogic读取文档
    • 参数:
      • uri:文档URI(必需)
  3. delete-document

    • 从MarkLogic中删除文档
    • 参数:
      • uri:文档URI(必需)
  4. search-documents

    • 在MarkLogic中搜索文档
    • 参数:
      • query:搜索查询字符串(必填)
      • collections:要搜索的集合列表(可选)

发展

设置

  1. 克隆存储库
  2. 创建虚拟环境并激活它
  3. 安装依赖项:
    pip install -e .
    

运行测试

pytest tests/

MarkLogic设置

  1. 确保已安装并运行MarkLogic服务器
  2. 在端口8000上创建一个REST API实例(如果尚未存在)
  3. 创建具有适当权限的用户:
    • 转到管理界面(通常http://localhost:8001)
    • 创建角色 python-docs-role 与:
      • 角色: rest-extension-user, rest-reader, rest-writer
      • 特权: xdbc:eval, xdbc:invoke, xdmp:eval-in
    • 创建用户 python-user 与:
      • 密码: pyth0n
      • 角色: python-docs-role

许可证

麻省理工学院