Skip to content
Back to skills

003 Script Generator Ea285188

ASecurity

if hasattr(result, "content"): for item in result.content: if hasattr(item, "text"): print(item.text) else: print(json.dumps(item, default=str)) else: print(json.dumps(result, default=str, indent=2)) if __name__ == "__main__": asyncio.run(main()) {% endfile %} {% endfor %} {% endif %}

  • 9 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 11, 2026
toolspython

Works with

  • cli
  • mcp

Security analysis

A100/100

Scanned October 11, 2026

npx -y skills add tools-only/X-Skills --skill 003-_script-generator_ea285188 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 003 Script Generator Ea285188?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 003  Script Generator Ea285188
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-003-script-generator-ea285188/badge)](https://www.skillsdirectory.com/skills/tools-only-003-script-generator-ea285188)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
colin:
  output:
    publish: false
  depends_on:
    - _tool-generator.md
---
{% if vars.generate_scripts | default(true) %}
{% set server = colin.mcp.source.server_info() %}
{% set server_name = vars.mcp_provider_name | default(server.name) %}
{% set skill_name = server_name | lower | replace(" ", "-") %}
{% for tool in colin.mcp.source.list_tools() %}
{% file skill_name ~ "/scripts/" ~ tool.name ~ ".py" publish=true %}
#!/usr/bin/env python3
"""Call the {{ tool.name }} MCP tool via FastMCP."""
import asyncio
import json
import sys
from fastmcp import Client

SERVER_COMMAND = "{{ colin.mcp.source.config().command }}"


async def main():
    args = json.loads(sys.argv[1]) if len(sys.argv) > 1 else {}
    async with Client(SERVER_COMMAND) as client:
        result = await client.call_tool("{{ tool.name }}", args)
        # Format output for Claude
        if hasattr(result, "content"):
            for item in result.content:
                if hasattr(item, "text"):
                    print(item.text)
                else:
                    print(json.dumps(item, default=str))
        else:
            print(json.dumps(result, default=str, indent=2))


if __name__ == "__main__":
    asyncio.run(main())
{% endfile %}
{% endfor %}
{% endif %}

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.