Pike13 MCP服务器
Pike13 API的MCP服务器与Claude Desktop的stdio传输集成。
特性
- 186 Pike13 API工具 跨前端(客户端)、桌面(员工)、帐户和报告API
- 1提示 用于常见工作流
- 标准运输 用于直接集成Claude Desktop
- 基于Docker 具有最小依赖性的部署
- 工具过滤 通过环境变量-仅加载所需的工具组
- 支持所有Pike13 API操作
安装
使用预构建图像(推荐)
docker pull juanhuttemann/pike13-mcp:latest从源头构建
# Clone the repository
git clone https://github.com/juanhuttemann/pike13-mcp-server.git
cd pike13-mcp-server
# Build the image
docker build -t pike13-mcp .用法
Claude桌面配置
添加到您的Claude Desktop配置文件中:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"pike13": {
"command": "docker",
"args": [
"run",
"-i",
"-a",
"stdin",
"-a",
"stdout",
"--rm",
"--name",
"pike13-mcp-stdio",
"-e",
"PIKE13_ACCESS_TOKEN=your_access_token_here",
"-e",
"PIKE13_BASE_URL=https://yourbusiness.pike13.com",
"-e",
"TOOLS_ENABLED=front,desk,reporting",
"juanhuttemann/pike13-mcp:latest"
]
}
}
}环境变量:
PIKE13_ACCESS_TOKEN:您的Pike13 API访问令牌PIKE13_BASE_URL:您的Pike13业务URL(例如。,https://yourbusiness.pike13.com)TOOLS_ENABLED:以逗号分隔的要加载的工具组列表(可选,默认为“全部”)
工具组: 通过设置 TOOLS_ENABLED 环境变量:
account-账户级操作(6个工具)desk-员工/行政操作(103个工具)front-面向客户的操作(25个工具)reporting-分析和报告(12个工具)
示例:
# Load only Front and Reporting tools (37 tools total)
TOOLS_ENABLED=front,reporting
# Load only Desk tools (103 tools)
TOOLS_ENABLED=desk
# Load all tools (186 tools) - this is the default
TOOLS_ENABLED=all在更新配置之后, 重新启动克劳德桌面 以激活MCP服务器。
与本地构建一起使用
如果在本地构建映像,请将最后一个参数更改为 juanhuttemann/pike13-mcp:latest 到 pike13-mcp:
"args": [
"run",
"-i",
"-a",
"stdin",
"-a",
"stdout",
"--rm",
"--name",
"pike13-mcp-stdio",
"-e",
"PIKE13_ACCESS_TOKEN=your_access_token_here",
"-e",
"PIKE13_BASE_URL=https://yourbusiness.pike13.com",
"-e",
"TOOLS_ENABLED=front,desk,reporting",
"pike13-mcp"
]可用工具
服务器提供 186工具 由Pike13 API组织:
Front API(客户端)-65个工具
前缀为的工具 Front -对于客户/公共运营:
- 商业:获取商业信息、品牌、地点、特许经营商
- 个人资料:获取当前用户配置文件
- 事件:列出事件、事件发生、可用性、注册资格
- 访问:列出、获取、创建、更新、删除访问
- 服务:列出服务、注册资格
- 计划:列出计划产品、计划条款
- 发票:列出、获取、创建、更新发票和项目
- 支付:创建付款,获取付款配置
- 员工:列出员工,获取员工详细信息
- 等候名单:管理候补名单条目
- 预订:全面预订和预订租赁管理
- 付款方式:管理付款方式
- 备注:列出并获取笔记
- 豁免:列出人员豁免
API桌面(工作人员)-103个工具
前缀为的工具 Desk -对于员工/管理员操作:
- 人们:列出、搜索、获取、创建、更新、删除人员
- 商业:获取业务详情,加盟商
- 事件:完成事件和事件管理
- 访问:全面访问CRUD操作
- 服务:服务和注册管理
- 计划:列出计划、管理结束日期、计划产品
- 拳打:创建、获取、更新、删除拳
- 包:管理包装和包装产品
- 发票:全面的发票管理,包括项目、折扣、按比例分配
- 支付:处理付款、作废付款、付款配置
- 退款:创建和取消退款
- 收入类别:列出并获取收入类别
- 销售税:列出并获取销售税
- 自定义字段:列出自定义字段
- 等候名单:完整的等待列表CRUD操作
- 员工:工作人员管理
- 位置:列出并获取位置
- 备注:完整注释CRUD操作
- 付款方式:管理付款方式
- 约见:查找可用插槽,获取可用性摘要
- 化妆品:生成并获得化妆积分
账户API-6个工具
前缀为的工具 Account -对于账户级操作:
- 企业:列出账户中的所有业务
- 用户:获取帐户用户信息
- 人们:列出各企业的所有人员
- 密码重置:创建密码重置
报告API-12个工具
前缀为的工具 Reporting -用于分析和报告操作:
- 月度业务指标:获取业务绩效指标
- 事件发生:获取事件发生报告
- 事件发生工作人员:获取员工分配报告
- 注册人数:获取注册报告
- 客户:获取客户报告
- 工作人员:获取员工报告
- 发票:获取发票报告
- 发票项目:获取发票项目报告
- 发票项目交易记录:获取交易报告
- 国家:获取付款报告
- 人员计划:获取会员/计划报告
- 交易:获取财务交易报告
- 确认:创建确认
可用提示
搜索客户端
使用DeskSearchPeople按姓名、电子邮件或电话搜索客户。
Claude Desktop中的用法:
- 类型
/search_client - 输入客户名称、电子邮件或电话
- Claude将搜索并显示结果
运作原理
Pike13 MCP服务器使用 stdio传输 架构:
- Ruby MCP服务器:通过stdin/stdout处理JSON-RPC请求
- Pike13软件开发工具包:对Pike13实例进行API调用
- 直接通信:没有基于HTTP或SSE的干净stdio协议
这提供了与Claude Desktop最简单、最有效的集成。
项目结构
├── config/
│ └── pike13_client.rb # Pike13 client configuration
├── tools/
│ ├── base_tool.rb # Base tool with auto error handling
│ └── *_tools.rb # Resource-specific tools (35 files, 186 tools)
├── prompts/
│ └── search_client_prompt.rb # Example prompt
├── server.rb # Ruby MCP server (stdio transport)
├── Dockerfile # Minimal Alpine-based build
└── Gemfile # Only 2 gems: mcp, pike13故障排除
Claude Desktop显示“服务器已断开连接”
- 确保Docker正在运行
- 验证配置中的环境变量是否设置正确
- 检查您的Pike13访问令牌是否有效
- 检查克劳德桌面日志:
- macOS: ~/Library/Logs/Claude/mcp-server-pike13.log - 视窗: %APPDATA%\Claude\logs\mcp-server-pike13.log
手动测试服务器
测试服务器是否处理初始化请求:
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' | \
docker run -i --rm \
-e PIKE13_ACCESS_TOKEN=your_token \
-e PIKE13_BASE_URL=https://yourbusiness.pike13.com \
-e TOOLS_ENABLED=front,desk,reporting \
juanhuttemann/pike13-mcp:latest您应该看到一个JSON响应,其中包含服务器信息和启用的工具(例如,140个前台+桌面+报告工具)。
测试列出所有工具:
echo '{"jsonrpc":"2.0","id":2,"method":"tools/list"}' | \
docker run -i --rm \
-e PIKE13_ACCESS_TOKEN=your_token \
-e PIKE13_BASE_URL=https://yourbusiness.pike13.com \
-e TOOLS_ENABLED=front,desk,reporting \
juanhuttemann/pike13-mcp:latest获取Pike13 API凭据
- 登录您的Pike13帐户
- 首选 设置 → 集成 → API访问
- 生成新的API访问令牌
- 复制您的访问令牌和业务URL
发展
不使用Docker在本地运行
bundle install
export PIKE13_ACCESS_TOKEN=your_token
export PIKE13_BASE_URL=https://yourbusiness.pike13.com
export TOOLS_ENABLED=front,desk,reporting # Optional: control which tool groups to load
ruby server.rb添加新工具
- 在中创建新文件
tools/遵循以下模式:
class MyNewTool < Pike13BaseTool
description "What this tool does"
input_schema(
properties: {
param_name: { type: 'string', description: 'Parameter description' }
},
required: ['param_name']
)
class << self
def call(param_name:, server_context:)
# Your implementation using Pike13 SDK
Pike13::SomeResource.some_method(param_name).to_json
end
end
end- 重建Docker镜像
- 重新启动克劳德桌面
添加新提示
- 在中创建新文件
prompts/:
class MyPrompt < MCP::Prompt
prompt_name 'my_prompt'
description 'What this prompt does'
arguments [
MCP::Prompt::Argument.new(
name: 'param',
description: 'Parameter description',
required: true
)
]
class << self
def template(args, server_context:)
MCP::Prompt::Result.new(
description: "Description",
messages: [
MCP::Prompt::Message.new(
role: 'user',
content: MCP::Content::Text.new("Your instruction to Claude using #{args[:param]}")
)
]
)
end
end
end- 重建并重新启动
许可证
麻省理工学院
