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.3.tar.gz (6.7 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.3.tar.gz.

File metadata

File hashes

Hashes for awesome_agent_toolkits_mcp_server-0.1.3.tar.gz
Algorithm Hash digest
SHA256 ae0bb4b7d17432ce355b2286acea3eac0d0ec9f4d716ced3373bd41690bd6577
MD5 1b33a08c2980c30332da59085e8b830a
BLAKE2b-256 9cee81c7cfa772b2ae39d08abe1f652bcc2c951e47b085f99665ace3b90f9f17

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for awesome_agent_toolkits_mcp_server-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 25f3ea87e402eb86f67689ab8d93c24221ae2a5af9d3ca0e4195b2027662d8ab
MD5 56f5d1745a62c647b5bc5e1547e62241
BLAKE2b-256 df1b7888bb9e0600cd0f2e921864a59de8a066d4de813344136803bb454d6625

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