configure-putior-mcp
关于
This skill configures the putior MCP server to expose 16 workflow visualization tools to AI assistants like Claude. It covers setup for Claude Code and Claude Desktop, including dependency installation and tool verification. Use it when enabling AI assistants to interactively annotate and visualize workflows or when integrating putior MCP into a new development environment.
快速安装
Claude Code
推荐npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/configure-putior-mcp在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
Configure putior MCP Server
Set up putior MCP server → AI assistants (Claude Code, Claude Desktop) can directly call workflow annotation + diagram gen tools.
Use When
- Enable AI assistants to interactively annotate + visualize workflows
- Set up new dev env w/ putior MCP integration
- Post-install putior → want AI-assisted workflow docs
- Configure agent-to-agent comm via ACP for automated pipelines
In
- Required: putior installed (see
install-putior) - Required: Target client: Claude Code, Claude Desktop, or both
- Optional: Configure ACP server too (default: no)
- Optional: Custom host/port for ACP server (default: localhost:8080)
Do
Step 1: Install MCP Dependencies
Install req'd pkgs for MCP server functionality.
# Required: MCP framework
remotes::install_github("posit-dev/mcptools")
# Required: Tool definition framework
install.packages("ellmer")
# Verify both load
library(mcptools)
library(ellmer)
→ Both pkgs install + load w/o errs.
If err: mcptools requires remotes pkg. Install first: install.packages("remotes"). GitHub rate-limits → configure GITHUB_PAT in ~/.Renviron (add line GITHUB_PAT=your_token_here + restart R). Do NOT paste tokens into shell cmds or commit to version control.
Step 2: Configure Claude Code (WSL/Linux/macOS)
Add putior MCP server to Claude Code's config.
# One-line setup
claude mcp add putior -- Rscript -e "putior::putior_mcp_server()"
For WSL w/ Windows R:
claude mcp add putior -- "/mnt/c/Program Files/R/R-4.5.2/bin/Rscript.exe" -e "putior::putior_mcp_server()"
Verify config:
claude mcp list
claude mcp get putior
→ putior appears in MCP server list w/ status "configured".
If err: Claude Code not in PATH → add: export PATH="$HOME/.claude/local/node_modules/.bin:$PATH". Rscript path wrong → locate R w/ which Rscript or ls "/mnt/c/Program Files/R/".
Step 3: Configure Claude Desktop (Windows)
Add putior to Claude Desktop's MCP config file.
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"putior": {
"command": "C:\\PROGRA~1\\R\\R-45~1.0\\bin\\x64\\Rscript.exe",
"args": ["-e", "putior::putior_mcp_server()"]
}
}
}
Or w/ full path:
{
"mcpServers": {
"putior": {
"command": "C:\\Program Files\\R\\R-4.5.2\\bin\\x64\\Rscript.exe",
"args": ["-e", "putior::putior_mcp_server()"]
}
}
}
Restart Claude Desktop post-edit.
→ Claude Desktop shows putior in MCP server list. Tools become avail in conversation.
If err: Valid. JSON syntax w/ JSON linter. Check R path exists. Use 8.3 short names (PROGRA~1, R-45~1.0) if spaces in paths cause issues.
Step 4: Verify All 16 Tools
Test all MCP tools accessible + functional.
# Get tool definitions
tools <- putior::putior_mcp_tools()
cat(sprintf("Total tools: %d\n", length(tools)))
# List tool names
vapply(tools, function(t) t$name, character(1))
16 tools organized by category:
Core Workflow (5):
put— Scan files for PUT annotations (supportsexcludeparam for regex-based file filtering)put_diagram— Generate Mermaid diagramsput_auto— Auto-detect workflow from code (supportsexcludeparam)put_generate— Gen annotation suggestions (supportsexcludeparam)put_merge— Merge manual + auto annotations (supportsexcludeparam)
Reference/Discovery (7):
get_comment_prefix— Get comment prefix for extensionget_supported_extensions— List supported extensionslist_supported_languages— List supported languagesget_detection_patterns— Get auto-detection patternsget_diagram_themes— List available themesputior_guide— AI assistant docsputior_help— Quick reference help
Utilities (3):
is_valid_put_annotation— Valid. annotation syntaxsplit_file_list— Parse file listsext_to_language— Extension to language name
Configuration (1):
set_putior_log_level— Configure logging verbosity
Important: Custom palettes can't be used through MCP.
paletteparam onput_diagramacceptsputior_themeR object created byput_theme(). MCP comms via JSON → R objects likeputior_themecan't be serialized across MCP boundary. Callingput_diagramthrough MCP → use string-basedthemeparam (e.g.,theme = "viridis") instead. Custom palettes → callput_theme()+put_diagram(palette = ...)directly in R session.
Test core tools from Claude Code:
Use the putior_help tool to see available commands
Use the put tool to scan ./R/ for annotations
Use the put_diagram tool to generate a diagram
→ All 16 tools listed. Core tools return expected results when called w/ valid in.
If err: Tools missing → check putior ver current: packageVersion("putior"). Older vers may have fewer tools. Update w/ remotes::install_github("pjt222/putior").
Step 5: Configure ACP Server (Optional)
Set up ACP (Agent Comm Protocol) server for agent-to-agent comm.
# Install ACP dependency
install.packages("plumber2")
# Start ACP server (blocks — run in a separate R session or background)
putior::putior_acp_server()
# Custom host/port
putior::putior_acp_server(host = "0.0.0.0", port = 9000)
Test ACP endpoints:
# Discover agent
curl http://localhost:8080/agents
# Execute a scan
curl -X POST http://localhost:8080/runs \
-H "Content-Type: application/json" \
-d '{"input": [{"role": "user", "parts": [{"content": "scan ./R/"}]}]}'
# Generate diagram
curl -X POST http://localhost:8080/runs \
-H "Content-Type: application/json" \
-d '{"input": [{"role": "user", "parts": [{"content": "generate diagram for ./R/"}]}]}'
→ ACP server starts on config'd port. /agents returns putior agent manifest. /runs accepts natural language reqs + returns workflow results.
If err: Port 8080 in use → specify diff port. plumber2 not installed → server fn will print helpful err msg suggesting install.
Check
-
putior::putior_mcp_tools()exposes core tools (put,put_diagram,put_auto,put_generate,put_merge) + returns ~16 tools for current ver - Claude Code:
claude mcp listshowsputiorconfigured - Claude Code:
putior_helptool returns help text when invoked - Claude Desktop: putior appears in MCP server list post-restart
- Core tools (
put,put_diagram,put_auto) execute w/o errs - (Optional) ACP server responds to
curl http://localhost:8080/agents
Traps
- mcptools not installed: MCP server requires
mcptools(from GitHub) +ellmer(from CRAN). Both must be installed. putior checks + provides helpful msgs if missing. - Wrong R path in Claude Desktop: Windows paths need escaping in JSON (
\\). Use 8.3 short names to avoid spaces:C:\\PROGRA~1\\R\\R-45~1.0\\bin\\x64\\Rscript.exe. - Forget to restart: Claude Desktop must be restarted post-config edit. Claude Code picks up changes on next session start.
- renv isolation: putior installed in renv library but Claude Code/Desktop launches R w/o renv → pkgs not found. Ensure
mcptools+ellmerinstalled in global library or configure renv activation in MCP server cmd. - Port conflicts for ACP: Default ACP port (8080) commonly used. Check w/
lsof -i :8080ornetstat -tlnp | grep 8080before starting. - Include only specific tools: Expose subset of tools → use
putior_mcp_tools(include = c("put", "put_diagram"))when building custom MCP server wrappers. - Custom palettes via MCP:
paletteparam onput_diagramrequiresputior_themeR object (created byput_theme()), can't be serialized through MCP's JSON interface. Use built-inthemeparam string for MCP calls. Custom palettes → use R directly.
→
install-putior— prerequisite: putior + optional deps must be installedconfigure-mcp-server— general MCP server config for Claude Code/Desktoptroubleshoot-mcp-connection— diagnose connection issues if tools don't appearbuild-custom-mcp-server— build custom MCP servers wrapping putior toolsanalyze-codebase-workflow— use MCP tools interactively for codebase analysis
GitHub 仓库
相关推荐技能
executing-plans
设计该Skill用于当开发者提供完整实施计划时,以受控批次方式执行代码实现。它会先审阅计划并提出疑问,然后分批次执行任务(默认每批3个任务),并在批次间暂停等待审查。关键特性包括分批次执行、内置检查点和架构师审查机制,确保复杂系统实现的可控性。
requesting-code-review
设计该Skill可在完成任务、实现主要功能或合并代码前自动调度代码审查子代理,确保实现符合需求和计划。它支持通过指定git SHA范围进行精准的代码变更审查,帮助开发者在关键节点及时发现潜在问题。核心原则是"早审查、勤审查",适用于开发流程的各个关键阶段。
connect-mcp-server
设计这个Skill指导开发者如何将MCP服务器连接到Claude Code,支持HTTP、stdio和SSE三种传输协议。它涵盖了从安装配置到认证安全的完整流程,适用于集成GitHub、Notion、数据库等外部服务。当开发者需要添加集成、配置外部工具或提及MCP相关功能时,这个Skill能提供实用的操作指南。
web-cli-teleport
设计该Skill帮助开发者根据任务特性选择Claude Code的Web或CLI界面,并指导如何在两种环境间无缝迁移会话。它能分析任务复杂度、迭代需求等要素,推荐最优工作界面和工作流。关键特性包括会话状态管理、环境切换指导和上下文优化建议。
