Skip to main content

Auto-discovering MCP server for agent skills

Project description

Skills MCP Server

An MCP (Model Context Protocol) server that exposes skill tools as MCP tools, resources, and prompts. It auto-discovers skills from any domain (devops, security, data, etc.) and makes their tools available to any MCP-compatible agent.

Prerequisites

  • Python 3.10+
  • uv (for uvx usage)
  • Domain-specific CLIs as needed by individual skills (e.g., aws, az, kubectl, helm, terraform)

Installation

Option 1: uvx (Recommended)

No install needed — uvx runs the server directly from PyPI:

{
  "mcpServers": {
    "awesome-agent-toolkits-mcp": {
      "command": "uvx",
      "args": ["awesome-agent-toolkits-mcp-server@latest"]
    }
  }
}

Pass --skills-dir to point at your skills directory:

{
  "mcpServers": {
    "awesome-agent-toolkits-mcp": {
      "command": "uvx",
      "args": ["awesome-agent-toolkits-mcp-server@latest", "--skills-dir", "/path/to/skills"]
    }
  }
}

Option 2: Docker (Local Development)

From the repo root:

docker compose up mcp-server

This builds the server image and mounts ./skills as a read-only volume. Configure your agent to use it with stdio transport.

Option 3: Run from source

cd mcp-server
pip install -r requirements.txt
python server.py

Or with a custom skills directory:

python server.py --skills-dir /path/to/skills

The SKILLS_DIR environment variable is also supported.

The server uses stdio transport (stdin/stdout) — it's designed to be launched by an MCP client.

Configuration Examples

VS Code (GitHub Copilot)

Add to your .vscode/mcp.json or user MCP settings:

{
  "servers": {
    "awesome-agent-toolkits-mcp": {
      "command": "uvx",
      "args": ["awesome-agent-toolkits-mcp-server@latest"],
      "transportType": "stdio"
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "awesome-agent-toolkits-mcp": {
      "command": "uvx",
      "args": ["awesome-agent-toolkits-mcp-server@latest"]
    }
  }
}

Available Tools (Examples)

The server auto-discovers tools from all installed skills. Below are examples from the included devops skills:

Tool Description Parameters
eks_inventory_addons Inventory EKS add-ons via AWS API cluster, region, profile (optional)
aks_inventory_addons Inventory AKS add-ons via Azure API cluster, resource_group, subscription (optional)
inventory_helm List Helm releases in current context
eks_scan_terraform Scan Terraform for EKS resources root_dir
aks_scan_terraform Scan Terraform for AKS resources root_dir
check_prereqs Validate CLI/auth prerequisites provider (aws|azure), profile (optional)

Available Resources

URI Description
skills://eks/compatibility EKS add-on compatibility matrix
skills://aks/compatibility AKS add-on compatibility matrix
skills://eks/report-templates EKS HTML report templates
skills://aks/report-templates AKS HTML report templates

Adding Tools from New Skills

To expose a new skill's tools via MCP, create a tools/mcp_tools.json file in the skill directory:

{
  "tools": [
    {
      "name": "my_tool_name",
      "script": "my_script.py",
      "description": "What this tool does.",
      "params": [
        { "name": "param_name", "flag": "--param-name", "required": true, "description": "Param description" }
      ]
    }
  ]
}

The MCP server auto-discovers these at startup. Tools are namespaced by category: <category>__<tool_name> (e.g., devops__eks_inventory_addons).

Adding Resources

Any files in references/ or assets/ within a skill directory are automatically exposed as MCP resources with URI pattern:

skills://<category>/<skill-name>/references/<filename>
skills://<category>/<skill-name>/assets/<filename>

Available Prompts

Prompts are auto-discovered from tools/mcp_prompts.json in each skill directory, namespaced as <category>__<prompt_name>. Example prompts from the devops skills:

Prompt Description Arguments
devops__analyze_drift Compare inventory vs Terraform versions inventory_json, terraform_json
devops__changelog_research Research changelog between versions package, from_version, to_version
devops__upgrade_plan Generate upgrade plan from drift analysis drift_analysis

Adding Prompts

Create a tools/mcp_prompts.json in your skill directory:

{
  "prompts": [
    {
      "name": "my_prompt",
      "description": "What this prompt produces.",
      "params": [
        { "name": "input_data", "required": true, "description": "Data to analyze" }
      ],
      "template": "Analyze the following:\n\n{input_data}\n\nProduce a summary."
    }
  ]
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

awesome_agent_toolkits_mcp_server-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file awesome_agent_toolkits_mcp_server-0.1.0.tar.gz.

File metadata

File hashes

Hashes for awesome_agent_toolkits_mcp_server-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fcfd11316252d610c030d68c4d3fe0eab7153d6de9582f1ce172dcb7e1a85998
MD5 1be50404b0f39073efb7c65390bdabd9
BLAKE2b-256 9a3ffaf7aca2ff861ffde0828a0e10f514ec9b2def62f8de1c1f83c2f9e4118d

See more details on using hashes here.

File details

Details for the file awesome_agent_toolkits_mcp_server-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for awesome_agent_toolkits_mcp_server-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e220aa53273dd92f010782f630c5a6ebaac23ba14fc93488e39677f06e446896
MD5 c84c96038228a4354f3f71f25f882ba2
BLAKE2b-256 11a3f74c7b2c865552047814bb83dbf68ffe337eb6c7f36a941e2004078ddc51

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page