并行工作MCP服务器
模型上下文协议(MCP)服务器,使人工智能助手能够与并行工作激活REST API交互。这允许代码辅助代理管理Parallel Works资源,包括集群、存储、工作流等。
特性
MCP服务器提供管理工具:
- 集群:列出和查询计算集群和节点
- 工作流:列出、检查和执行工作流
- 存储:管理存储桶、Lustre文件系统和NFS存储
- 会话:查看和管理用户会话
- 分配:查询预算分配和使用情况
- 机器学习:列出和管理机器学习工作区(AWS SageMaker、Azure机器学习)
- Kubernetes:查询Kubernetes集群
- 用户资源:获取通知、组织和组
安装
先决条件
- Node.js 18+或最新版本
- 具有API访问权限的并行工作激活帐户
设置
- 克隆或导航到项目目录:
cd parallel-works-mcp- 安装依赖项:
npm install配置
MCP服务器需要身份验证才能连接到并行工程API。您可以使用以下任一方式进行身份验证:
选项1:API密钥(基本身份验证)
export PARALLEL_WORKS_API_KEY="your-api-key-here"选项2:不记名代币(JWT)
export PARALLEL_WORKS_TOKEN="your-jwt-token-here"可选:自定义API URL
export PARALLEL_WORKS_API_URL="https://activate.parallel.works"用法
运行服务器
使用stdio传输启动MCP服务器:
npm start或者直接使用Node:
node src/index.js使用自定义API URL:
node src/index.js --api-url https://activate.parallel.works --api-key YOUR_KEY使用Bearer代币:
node src/index.js --token YOUR_JWT_TOKENMCP客户端配置
添加MCP服务器的推荐方法是编辑您的 ~/.claude.json 直接配置文件:
# Open your Claude config file
nano ~/.claude.json将MCP服务器配置添加到要使用它的每个项目中:
{
"projects": {
"/your/project/path": {
"mcpServers": {
"parallelworks": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/to/parallel-works-mcp/src/index.js"],
"env": {
"PARALLEL_WORKS_API_KEY": "your-api-key-here"
}
}
},
"enabledMcpjsonServers": ["parallelworks"]
}
}
}配置选项:
| 字段 | 值 |
|---|---|
type | "stdio" -标准输入/输出通信 |
command | "node" -Node.js运行时 |
args | 具有绝对路径的数组 src/index.js |
env.PARALLEL_WORKS_API_KEY | 您的并行工作激活API密钥 |
enabledMcpjsonServers | ["parallelworks"] -启用服务器 |
为所有项目启用,在您的每个项目路径下添加相同的配置 ~/.claude.json 文件。
可用工具
身份验证和用户信息
get_auth_session
获取当前身份验证会话和用户信息。
{}get_organizations
列出用户可以访问的组织。
{}get_groups
为经过身份验证的用户获取组。
{
"provider": "aws-slurm",
"network": "my-network"
}集群操作
list_clusters
列出用户可以访问的所有集群。
{}get_cluster_nodes
获取特定计算集群的节点。
{
"organization": "parallelworks",
"user": "username",
"clusterName": "my-cluster",
"type": "compute"
}工作流操作
list_workflows
列出已验证用户的所有工作流。
{
"filter": "workflows"
}get_workflow
获取特定工作流的详细信息。
{
"workflow": "my-workflow"
}get_workflow_yaml
获取工作流的YAML配置。
{
"workflow": "my-workflow"
}run_workflow
使用可选输入参数运行工作流。
{
"workflow": "my-workflow",
"inputs": {
"param1": "value1",
"param2": "value2"
}
}存储操作
list_buckets
列出用户可以访问的存储桶。
{
"permission": "edit",
"provisioned": true
}list_lustre
列出用户可以访问的Lustre文件系统。
{
"permission": "mount",
"provisioned": true
}list_nfs
列出用户可以访问的NFS文件系统。
{
"permission": "edit",
"provisioned": true
}会话操作
list_sessions
列出已验证用户的会话。
{
"type": "tunnel",
"subdomain": "my-subdomain"
}分配操作
list_allocations
列出用户可以访问的预算分配。
{
"limit": 50,
"skip": 0,
"name": "production",
"sort": "-total"
}Kubernetes操作
list_kubernetes_clusters
列出用户可访问的Kubernetes集群。
{}ML工作区操作
list_ml_workspaces
列出机器学习工作区。
{
"csp": "aws",
"region": "us-west-2",
"provisioned": true
}通知
get_notifications
获取已验证用户的通知。
{
"limit": 20,
"skip": 0,
"read": false
}对话示例
列出集群
User: List all my clusters
Assistant: [calls list_clusters] Here are your clusters...运行工作流
User: Run the "data-processing" workflow with input dataset="s3://my-bucket/data"
Assistant: [calls run_workflow with workflow="data-processing", inputs={"dataset": "s3://my-bucket/data"}] Workflow started successfully...检查存储
User: What Lustre filesystems do I have access to?
Assistant: [calls list_lustre] You have access to the following Lustre filesystems...管理会话
User: Show me all my active tunnel sessions
Assistant: [calls list_sessions with type="tunnel"] Here are your active tunnel sessions...错误处理
MCP服务器优雅地处理错误:
- 身份验证错误:检查您的API密钥或令牌
- 网络错误:验证您的网络连接和API URL
- 无效参数:检查工具输入模式
- 资源未找到:验证资源名称和权限
所有错误都会在响应中返回描述性消息。
发展
项目结构
parallel-works-mcp/
├── src/
│ └── index.js # Main MCP server implementation
├── package.json # Dependencies and scripts
├── pw-openapi.json # OpenAPI specification (reference)
├── PROGRESS.md # Development progress tracking
└── README.md # This file添加新工具
要添加新工具,请执行以下操作:
- 将工具定义添加到
tools数组insrc/index.js - 在中添加一个案例
CallToolRequestSchema处理器 - 使用您的MCP客户端测试该工具
例子:
{
name: 'my_new_tool',
description: 'Does something useful',
inputSchema: {
type: 'object',
properties: {
param1: { type: 'string', description: 'First parameter' },
},
required: ['param1'],
},
}API 参考
此MCP服务器基于Parallel Works ACTIVATE OpenAPI规范:
- 基本URL:
https://activate.parallel.works - 文档: 并行工作文档
- OpenAPI规范:包括在内
pw-openapi.json
许可证
麻省理工学院
支持
对于问题或疑问:
- 并行工作支持:support@parallelworks.com
- GitHub问题:\[在存储库中创建问题\]
