From example-skills
Configure, deploy, and troubleshoot Model Context Protocol (MCP) servers for AI agent workflows. Use when setting up MCP servers, debugging connection issues, managing multi-server configurations, integrating with Claude Desktop/Code/Cowork, or designing custom tool servers. Triggers on MCP configuration, tool server development, Claude integration issues, or agent infrastructure setup.
npx claudepluginhub organvm-iv-taxis/a-i--skills --plugin document-skillsThis skill uses the workspace's default tool permissions.
Manage MCP server infrastructure for AI-powered development workflows.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Designs and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Designs, implements, and audits WCAG 2.2 AA accessible UIs for Web (ARIA/HTML5), iOS (SwiftUI traits), and Android (Compose semantics). Audits code for compliance gaps.
Manage MCP server infrastructure for AI-powered development workflows.
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ MCP Client │────▶│ MCP Server │────▶│ External APIs │
│ (Claude, etc.) │◀────│ (Tool Provider) │◀────│ (Services) │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│ │
└───── JSON-RPC ────────┘
Key concepts:
| Client | Config File | Platform |
|---|---|---|
| Claude Desktop | claude_desktop_config.json | macOS: ~/Library/Application Support/Claude/ |
Windows: %APPDATA%\Claude\ | ||
| Claude Code | settings.json or MCP config | Project-level or user settings |
| Cline | cline_mcp_settings.json | VS Code extension settings |
{
"mcpServers": {
"server-name": {
"command": "executable",
"args": ["arg1", "arg2"],
"env": {
"API_KEY": "value"
},
"disabled": false
}
}
}
Python Server (uvx):
{
"my-python-server": {
"command": "uvx",
"args": ["--from", "package-name", "server-command"]
}
}
Node Server (npx):
{
"my-node-server": {
"command": "npx",
"args": ["-y", "@scope/package-name"]
}
}
Local Development Server:
{
"dev-server": {
"command": "python",
"args": ["-m", "my_server"],
"env": {
"DEBUG": "true"
}
}
}
Verify server starts independently:
# Test Python server
python -m my_server
# Test Node server
npx -y @scope/package-name
Check logs:
~/Library/Logs/Claude/mcp*.logValidate JSON config:
python -c "import json; json.load(open('config.json'))"
Common fixes:
from fastmcp import FastMCP
mcp = FastMCP("my-server")
@mcp.tool()
def my_tool(param: str) -> str:
"""Tool description for the AI."""
return f"Result: {param}"
@mcp.resource("resource://my-data")
def get_data() -> str:
"""Provide data as a resource."""
return "Resource content"
if __name__ == "__main__":
mcp.run()
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server({ name: "my-server", version: "1.0.0" }, {
capabilities: { tools: {} }
});
server.setRequestHandler(ListToolsRequestSchema, async () => ({
tools: [{
name: "my_tool",
description: "Tool description",
inputSchema: { type: "object", properties: { param: { type: "string" } } }
}]
}));
const transport = new StdioServerTransport();
await server.connect(transport);
Organize servers by domain:
{
"mcpServers": {
"filesystem": { "command": "...", "args": ["--allowed-dirs", "/projects"] },
"database": { "command": "...", "env": { "DB_URL": "..." } },
"api-integrations": { "command": "...", "env": { "API_KEYS": "..." } },
"custom-tools": { "command": "python", "args": ["-m", "my_tools"] }
}
}
Think of servers as modules in a synthesizer—patch them together based on workflow needs:
references/server-templates.md - Boilerplate for common server typesreferences/debugging-guide.md - Detailed troubleshooting procedures