返回技能列表

configure-putior-mcp

pjt222
更新于 2 days ago
4 次查看
17
2
17
在 GitHub 上查看
设计aimcpautomationdesign

关于

This skill configures the putior MCP server to expose 16 workflow visualization tools to AI assistants like Claude. It handles setup for Claude Code/Desktop, installs required dependencies, and optionally configures ACP server for agent-to-agent communication. Use it when integrating interactive workflow visualization into a development environment or enabling automated pipelines between AI agents.

快速安装

Claude Code

推荐
主要方式
npx skills add pjt222/agent-almanac -a claude-code
插件命令备选方式
/plugin add https://github.com/pjt222/agent-almanac
Git 克隆备选方式
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/configure-putior-mcp

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

Configure putior MCP Server

Set up the putior MCP server so AI assistants (Claude Code, Claude Desktop) can directly call workflow annotation and diagram generation tools.

When to Use

  • Enabling AI assistants to interactively annotate and visualize workflows
  • Setting up a new development environment with putior MCP integration
  • After installing putior and wanting AI-assisted workflow documentation
  • Configuring agent-to-agent communication via ACP for automated pipelines

Inputs

  • Required: putior installed (see install-putior)
  • Required: Target client: Claude Code, Claude Desktop, or both
  • Optional: Whether to also configure ACP server (default: no)
  • Optional: Custom host/port for ACP server (default: localhost:8080)

Procedure

Step 1: Install MCP Dependencies

Install the required packages 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)

Got: Both packages install and load without errors.

If fail: mcptools requires remotes package. Install it first: install.packages("remotes"). If GitHub rate-limits, configure a GITHUB_PAT in ~/.Renviron (add the line GITHUB_PAT=your_token_here and restart R). Do not paste tokens into shell commands or commit them to version control.

Step 2: Configure Claude Code (WSL/Linux/macOS)

Add the putior MCP server to Claude Code's configuration.

# One-line setup
claude mcp add putior -- Rscript -e "putior::putior_mcp_server()"

For WSL with Windows R:

claude mcp add putior -- "/mnt/c/Program Files/R/R-4.5.2/bin/Rscript.exe" -e "putior::putior_mcp_server()"

Verify the configuration:

claude mcp list
claude mcp get putior

Got: putior appears in the MCP server list with status "configured".

If fail: If Claude Code is not in PATH, add it: export PATH="$HOME/.claude/local/node_modules/.bin:$PATH". If the Rscript path is wrong, locate R with which Rscript or ls "/mnt/c/Program Files/R/".

Step 3: Configure Claude Desktop (Windows)

Add putior to Claude Desktop's MCP configuration 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 with the 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 after editing the configuration.

Got: Claude Desktop shows putior in its MCP server list. Tools become available in conversation.

If fail: Validate JSON syntax with a JSON linter. Check that the 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 that all MCP tools are accessible and 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))

The 16 tools organized by category:

Core Workflow (5):

  • put — Scan files for PUT annotations (supports exclude parameter for regex-based file filtering)
  • put_diagram — Generate Mermaid diagrams
  • put_auto — Auto-detect workflow from code (supports exclude parameter)
  • put_generate — Generate annotation suggestions (supports exclude parameter)
  • put_merge — Merge manual + auto annotations (supports exclude parameter)

Reference/Discovery (7):

  • get_comment_prefix — Get comment prefix for extension
  • get_supported_extensions — List supported extensions
  • list_supported_languages — List supported languages
  • get_detection_patterns — Get auto-detection patterns
  • get_diagram_themes — List available themes
  • putior_guide — AI assistant documentation
  • putior_help — Quick reference help

Utilities (3):

  • is_valid_put_annotation — Validate annotation syntax
  • split_file_list — Parse file lists
  • ext_to_language — Extension to language name

Configuration (1):

  • set_putior_log_level — Configure logging verbosity

Important: Custom palettes cannot be used through MCP. The palette parameter on put_diagram accepts a putior_theme R object created by put_theme(). Because MCP communicates via JSON, R objects like putior_theme cannot be serialized across the MCP boundary. When calling put_diagram through MCP, use the string-based theme parameter (e.g., theme = "viridis") instead. For custom palettes, call put_theme() and put_diagram(palette = ...) directly in an 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

Got: All 16 tools listed. Core tools return expected results when called with valid inputs.

If fail: If tools are missing, check that putior version is current: packageVersion("putior"). Older versions may have fewer tools. Update with remotes::install_github("pjt222/putior").

Step 5: Configure ACP Server (Optional)

Set up the ACP (Agent Communication Protocol) server for agent-to-agent communication.

# 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/"}]}]}'

Got: ACP server starts on the configured port. /agents returns the putior agent manifest. /runs accepts natural language requests and returns workflow results.

If fail: If port 8080 is in use, specify a different port. If plumber2 is not installed, the server function will print a helpful error message suggesting installation.

Validation

  • putior::putior_mcp_tools() exposes the core tools (put, put_diagram, put_auto, put_generate, put_merge) and returns ~16 tools for the current version
  • Claude Code: claude mcp list shows putior configured
  • Claude Code: putior_help tool returns help text when invoked
  • Claude Desktop: putior appears in the MCP server list after restart
  • Core tools (put, put_diagram, put_auto) execute without errors
  • (Optional) ACP server responds to curl http://localhost:8080/agents

Pitfalls

  • mcptools not installed: The MCP server requires mcptools (from GitHub) and ellmer (from CRAN). Both must be installed. putior checks and provides helpful messages if they're 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.
  • Forgetting to restart: Claude Desktop must be restarted after editing the config file. Claude Code picks up changes on next session start.
  • renv isolation: If putior is installed in an renv library but Claude Code/Desktop launches R without renv, the packages won't be found. Ensure mcptools and ellmer are installed in the global library or configure renv activation in the MCP server command.
  • Port conflicts for ACP: The default ACP port (8080) is commonly used. Check with lsof -i :8080 or netstat -tlnp | grep 8080 before starting.
  • Including only specific tools: To expose a subset of tools, use putior_mcp_tools(include = c("put", "put_diagram")) when building custom MCP server wrappers.
  • Custom palettes via MCP: The palette parameter on put_diagram requires a putior_theme R object (created by put_theme()), which cannot be serialized through MCP's JSON interface. Use the built-in theme parameter string for MCP calls. For custom palettes, use R directly.

Related Skills

  • install-putior — prerequisite: putior and optional deps must be installed
  • configure-mcp-server — general MCP server configuration for Claude Code/Desktop
  • troubleshoot-mcp-connection — diagnose connection issues if tools don't appear
  • build-custom-mcp-server — build custom MCP servers that wrap putior tools
  • analyze-codebase-workflow — use MCP tools interactively for codebase analysis

GitHub 仓库

pjt222/agent-almanac
路径: i18n/caveman-lite/skills/configure-putior-mcp
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

相关推荐技能

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界面,并指导如何在两种环境间无缝迁移会话。它能分析任务复杂度、迭代需求等要素,推荐最优工作界面和工作流。关键特性包括会话状态管理、环境切换指导和上下文优化建议。

查看技能