Morphik MCP
Morphik多模式数据库的模型上下文协议(MCP)服务器实现。
概述
此MCP服务器允许Claude和其他兼容MCP的AI助手与Morphik数据库系统交互,从而实现:
- 文档摄取(文本和文件)
- 文档检索(按与查询的相关性)
- 使用LLM驱动的补全功能进行文档查询
- 文档管理(列出、获取、删除)
- 文件系统导航和从路径摄取文件
服务器支持两种传输模式:
- 标准 (默认):用于Claude Desktop和其他MCP客户端的标准输入/输出
- 可流式HTTPS:用于基于web的集成的HTTP/HTTPS端点
先决条件
您需要访问以下任一内容:
- 运行在localhost:8000上的本地Morphik服务器,或
- Morphik云平台
安装与使用
选项1:直接使用npx运行(推荐)
# Connect to local Morphik server
npx morphik-mcp
# Connect to Morphik cloud platform (replace with your actual URI)
npx morphik-mcp --uri=https://api.morphik.ai
# Specify allowed directories for file operations (comma-separated)
npx morphik-mcp --allowed-dir=~/Documents,~/Downloads选项2:全局安装
npm install -g morphik-mcp
# Connect to local Morphik server
morphik-mcp
# Connect to Morphik cloud platform
morphik-mcp --uri=https://api.morphik.ai
# Specify allowed directories for file operations
morphik-mcp --allowed-dir=~/Documents,~/Downloads方案3:地方发展
# Clone the repository
git clone https://github.com/morphik-org/morphik-npm-mcp.git
cd morphik-npm-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Start the server (local Morphik)
npm start
# Start the server with file operations enabled
node build/index.js --allowed-dir=~/Documents,~/Downloads默认情况下,服务器在标准输入/输出流上运行,可以与Claude等MCP客户端一起使用。
有关HTTP/HTTPS模式(可流式传输),请参阅 streamable_https.md 文档。
使用Claude Desktop
将此添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json\ 视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"morphik-local": {
"command": "npx",
"args": ["-y", "morphik-mcp"]
},
"morphik-cloud": {
"command": "npx",
"args": ["-y", "morphik-mcp", "--uri=https://api.morphik.ai"]
},
"morphik-with-files": {
"command": "npx",
"args": ["-y", "morphik-mcp", "--allowed-dir=~/Documents,~/Downloads"]
}
}
}MCP工具
服务器提供以下工具:
1.文件摄入
ingest-text:将文本文档摄入Morphik
- 参数:内容、文件名(可选)、元数据(可选)和apiKey
ingest-file-from-path:将服务器文件系统中的文件摄入Morphik
- 参数:路径、元数据(可选)、规则(可选)
ingest-files-from-paths:从服务器的文件系统批量摄取多个文件
- 参数:路径、元数据(可选)、规则(可选),folderName(可选)和endUserId(可选)以及useColpali(可选)
2.文件检索
retrieve-chunks:根据查询从Morphik检索相关块
- 参数:查询、过滤器(可选)、k(可选),minScore(可选)和apiKey
retrieve-docs:根据查询从Morphik检索相关文档
- 参数:查询、过滤器(可选)、k(可选),minScore(可选)和apiKey
3.单据查询
query:使用相关块作为上下文生成完成
- 参数:查询、过滤器(可选)、k(可选),maxTokens(可选)
4.文件管理
list-documents:在Morphik中列出文档
- 参数:跳过(可选),限制(可选)、过滤器(可选)和apiKey
get-document:通过ID从Morphik获取特定文档
- 参数:documentId、apiKey
delete-document:按ID从Morphik中删除文档
- 参数:documentId、apiKey
5.文件系统导航
list-allowed-directories:列出允许服务器访问的目录
- 参数:无
list-directory:列出特定目录中的文件和子目录
- 参数:路径
search-files:在目录及其子目录中搜索与模式匹配的文件
- 参数:路径、模式、excludePatterns(可选)
get-file-info:获取有关文件或目录的详细信息
- 参数:路径
文件操作安全
出于安全原因,文件操作仅限于使用启动服务器时明确允许的目录 --allowed-dir 参数。如果没有指定目录,则只能访问用户的主目录。
服务器验证所有文件路径,以确保它们在允许的目录内,防止访问敏感的系统文件。还检查了符号链接,以确保它们不会指向允许的目录之外。
发展
构建项目:
npm run build运行测试:
npm test运行手动测试:
npm run test:manual许可证
国际协调委员会
