configure-putior-mcp
À propos
Cette compétence configure le serveur MCP putior pour exposer 16 outils de visualisation de flux de travail aux assistants IA comme Claude. Elle gère la configuration pour Claude Code/Desktop, installe les dépendances requises et configure optionnellement le serveur ACP pour la communication d'agent à agent. Utilisez-la lors de l'intégration de la visualisation interactive de flux de travail dans un environnement de développement ou pour activer des pipelines automatisés entre agents IA.
Installation rapide
Claude Code
Recommandé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-mcpCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
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 (supportsexcludeparameter for regex-based file filtering)put_diagram— Generate Mermaid diagramsput_auto— Auto-detect workflow from code (supportsexcludeparameter)put_generate— Generate annotation suggestions (supportsexcludeparameter)put_merge— Merge manual + auto annotations (supportsexcludeparameter)
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 documentationputior_help— Quick reference help
Utilities (3):
is_valid_put_annotation— Validate 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 cannot be used through MCP. The
paletteparameter onput_diagramaccepts aputior_themeR object created byput_theme(). Because MCP communicates via JSON, R objects likeputior_themecannot be serialized across the MCP boundary. When callingput_diagramthrough MCP, use the string-basedthemeparameter (e.g.,theme = "viridis") instead. For custom palettes, callput_theme()andput_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 listshowsputiorconfigured - Claude Code:
putior_helptool 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) andellmer(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
mcptoolsandellmerare 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 :8080ornetstat -tlnp | grep 8080before 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
paletteparameter onput_diagramrequires aputior_themeR object (created byput_theme()), which cannot be serialized through MCP's JSON interface. Use the built-inthemeparameter string for MCP calls. For custom palettes, use R directly.
Related Skills
install-putior— prerequisite: putior and optional deps must be installedconfigure-mcp-server— general MCP server configuration for Claude Code/Desktoptroubleshoot-mcp-connection— diagnose connection issues if tools don't appearbuild-custom-mcp-server— build custom MCP servers that wrap putior toolsanalyze-codebase-workflow— use MCP tools interactively for codebase analysis
Dépôt GitHub
Compétences associées
executing-plans
DesignUtilisez la compétence executing-plans lorsque vous disposez d'un plan de mise en œuvre complet à exécuter par lots contrôlés avec des points de contrôle de revue. Elle charge et examine le plan de manière critique, puis exécute les tâches par petits lots (3 tâches par défaut) tout en rapportant la progression entre chaque lot pour une revue par l'architecte. Cela garantit une mise en œuvre systématique avec des points de contrôle de qualité intégrés.
requesting-code-review
DesignCette compétence délègue un sous-agent réviseur de code pour analyser les modifications apportées au code par rapport aux exigences avant de poursuivre. Elle doit être utilisée après avoir terminé des tâches, implémenté des fonctionnalités majeures, ou avant une fusion vers la branche principale. La revue aide à détecter précocement les problèmes en comparant l'implémentation actuelle avec le plan initial.
connect-mcp-server
DesignCette compétence fournit un guide complet permettant aux développeurs de connecter des serveurs MCP à Claude Code via les transports HTTP, stdio ou SSE. Elle couvre l'installation, la configuration, l'authentification et la sécurité pour intégrer des services externes tels que GitHub, Notion et des API personnalisées. Utilisez-la lors de la configuration d'intégrations MCP, de la configuration d'outils externes ou du travail avec le Protocole de Contexte de Modèle de Claude.
web-cli-teleport
DesignCette compétence aide les développeurs à choisir entre les interfaces Web et CLI de Claude Code en fonction de l'analyse des tâches, puis permet une téléportation transparente des sessions entre ces environnements. Elle optimise le flux de travail en gérant l'état et le contexte de la session lors du passage entre le web, la CLI ou le mobile. Utilisez-la pour des projets complexes nécessitant différents outils à diverses étapes.
