Back to Skills

configure-mcp-server

pjt222
Updated 2 days ago
4 views
17
2
17
View on GitHub
Developmentaimcp

About

This skill configures MCP server connections for Claude Code and Claude Desktop, including setup for mcptools, Hugging Face integration, and WSL path handling. Use it when connecting Claude Code to R via mcptools or adding remote MCP servers to Claude Desktop. It also helps troubleshoot connectivity issues between MCP clients and servers.

Quick Install

Claude Code

Recommended
Primary
npx skills add pjt222/agent-almanac -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/pjt222/agent-almanac
Git CloneAlternative
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/configure-mcp-server

Copy and paste this command in Claude Code to install this skill

Documentation

Configure MCP Server

Set up MCP server connections for Claude Code (WSL) and Claude Desktop (Windows).

When Use

  • Set up Claude Code to connect to R via mcptools
  • Configure Claude Desktop with MCP servers
  • Add Hugging Face or other remote MCP servers
  • Troubleshoot MCP connectivity between tools

Inputs

  • Required: MCP server type (mcptools, Hugging Face, custom)
  • Required: Client (Claude Code, Claude Desktop, or both)
  • Optional: Authentication tokens
  • Optional: Custom server implementation

Steps

Step 1: Install MCP Server Packages

For R (mcptools):

install.packages("remotes")
remotes::install_github("posit-dev/mcptools")

For Hugging Face:

npm install -g mcp-remote

Got: mcptools installs from GitHub, loads in R without errors. mcp-remote available globally via which mcp-remote or npm list -g mcp-remote.

If fail: For mcptools, ensure remotes installed first. GitHub rate-limits install? Set GITHUB_PAT in ~/.Renviron. For mcp-remote, verify Node.js, npm installed and on PATH.

Step 2: Configure Claude Code (WSL)

R mcptools server:

claude mcp add r-mcptools stdio \
  "/mnt/c/Program Files/R/R-4.5.0/bin/Rscript.exe" \
  -- -e "mcptools::mcp_server()"

Hugging Face server:

claude mcp add hf-mcp-server \
  -e HF_TOKEN=your_token_here \
  -- mcp-remote https://huggingface.co/mcp

Verify configuration:

claude mcp list
claude mcp get r-mcptools

Got: claude mcp list shows both r-mcptools and hf-mcp-server (or whichever servers added). claude mcp get r-mcptools displays correct command, arguments.

If fail: Server not appearing in list? Verify ~/.claude.json contains correct entry. claude command not found? Add to PATH: export PATH="$HOME/.claude/local/node_modules/.bin:$PATH".

Step 3: Configure Claude Desktop (Windows)

Edit %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "r-mcptools": {
      "command": "C:\\PROGRA~1\\R\\R-45~1.0\\bin\\x64\\Rscript.exe",
      "args": ["-e", "mcptools::mcp_server()"]
    },
    "hf-mcp-server": {
      "command": "mcp-remote",
      "args": ["https://huggingface.co/mcp"],
      "env": {
        "HF_TOKEN": "your_token_here"
      }
    }
  }
}

Important: Use 8.3 short paths for Windows directories with spaces (PROGRA~1 not Program Files). Use environment variables for tokens, not --header arguments.

Got: JSON config file at %APPDATA%\Claude\claude_desktop_config.json is valid JSON with correct server entries. Claude Desktop shows MCP server indicators after restart.

If fail: Validate JSON with linter (e.g., jq . < config.json). Use 8.3 short paths (PROGRA~1) if Windows path spaces cause parsing errors. Ensure Claude Desktop fully restarted (not minimized).

Step 4: Configure R Session for MCP

Add to project .Rprofile:

if (requireNamespace("mcptools", quietly = TRUE)) {
  mcptools::mcp_session()
}

Starts MCP session automatically when opening project in RStudio.

Got: .Rprofile conditionally starts mcptools::mcp_session() when project opened in RStudio. MCP tools available automatically.

If fail: mcptools not found at session start? Verify installed in library RStudio uses (check .libPaths()). Using renv? Ensure mcptools in renv library.

Step 5: Verify Connections

Test R MCP from WSL:

"/mnt/c/Program Files/R/R-4.5.0/bin/Rscript.exe" -e "mcptools::mcp_server()"

Test from within Claude Code:

Start Claude Code, use MCP tools — should appear in tool list.

Test Claude Desktop:

Restart Claude Desktop after configuration changes. Check for MCP server indicators in UI.

Got: Running Rscript with mcptools::mcp_server() produces output without errors. MCP tools appear in Claude Code tool list during active session. Claude Desktop shows server status after restart.

If fail: Rscript command fails? Check full path correct (ls "/mnt/c/Program Files/R/" to verify R version). Tools don't appear in Claude Code? Restart session. Claude Desktop? Check firewall settings.

Step 6: Multi-Server Configuration

Both Claude Code and Claude Desktop support multiple MCP servers simultaneously:

# Claude Code: add multiple servers
claude mcp add r-mcptools stdio "/path/to/Rscript.exe" -- -e "mcptools::mcp_server()"
claude mcp add hf-mcp-server -e HF_TOKEN=token -- mcp-remote https://huggingface.co/mcp
claude mcp add custom-server stdio "/path/to/server" -- --port 3001

Got: Multiple MCP servers configured, accessible simultaneously. claude mcp list shows all servers. Each server's tools available in same Claude Code session.

If fail: Servers conflict? Check each has unique name in configuration. One server blocks others? Verify servers use non-blocking I/O (stdio transport handles this automatically).

Checks

  • claude mcp list shows all configured servers
  • R MCP server responds to tool calls
  • Hugging Face MCP server authenticates, responds
  • Both Claude Code and Claude Desktop can connect (if both configured)
  • MCP tools appear in tool list during sessions

Pitfalls

  • Windows path spaces: Use 8.3 short names or quote paths correctly. Different tools parse paths differently.
  • Token in command args: On Windows, --header "Authorization: Bearer token" fails due to parsing. Use environment variables instead.
  • Confusing Claude Code and Claude Desktop configs: Separate tools with separate config files (~/.claude.json vs %APPDATA%\Claude\)
  • npx vs global install: npx mcp-remote may fail in Claude Desktop context. Install globally with npm install -g mcp-remote.
  • mcptools version: Ensure mcptools up to date. Requires ellmer package as dependency.

See Also

  • build-custom-mcp-server - creating own MCP server
  • troubleshoot-mcp-connection - debugging connection issues
  • setup-wsl-dev-environment - WSL setup prerequisite

GitHub Repository

pjt222/agent-almanac
Path: i18n/caveman/skills/configure-mcp-server
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

Related Skills

qmd

Development

qmd is a local search and indexing CLI tool that enables developers to index and search through local files using hybrid search combining BM25, vector embeddings, and reranking. It supports both command-line usage and MCP (Model Context Protocol) mode for integration with Claude. The tool uses Ollama for embeddings and stores indexes locally, making it ideal for searching documentation or codebases directly from the terminal.

View skill

subagent-driven-development

Development

This skill executes implementation plans by dispatching a fresh subagent for each independent task, with code review between tasks. It enables fast iteration while maintaining quality gates through this review process. Use it when working on mostly independent tasks within the same session to ensure continuous progress with built-in quality checks.

View skill

mcporter

Development

The mcporter skill enables developers to manage and call Model Context Protocol (MCP) servers directly from Claude. It provides commands to list available servers, call their tools with arguments, and handle authentication and daemon lifecycle. Use this skill for integrating and testing MCP server functionality in your development workflow.

View skill

adk-deployment-specialist

Development

This skill deploys and orchestrates Vertex AI ADK agents using A2A protocol, managing AgentCard discovery, task submission, and supporting tools like Code Execution Sandbox and Memory Bank. It enables building multi-agent systems with sequential, parallel, or loop orchestration patterns in Python, Java, or Go. Use it when asked to deploy ADK agents or orchestrate agent workflows on Google Cloud.

View skill