Skip to main content

A monorepo package for MCP tools with dynamic loading capabilities

Project description

AutoMagik Tools Logo

🪄 AutoMagik Tools

Turn Any API into an AI-Ready Tool in Seconds™

Drop any OpenAPI URL → Get a live, auto-updating MCP server. When the API updates, your tool updates automagikally. No code, no maintenance.

Born from our daily work at Namastex Labs, AutoMagik Tools makes every API on the internet instantly accessible to AI agents.

🚀 Dynamic OpenAPI → MCP

Turn any API into an MCP tool instantly:

# Just point to any OpenAPI URL - here's Discord as an example
uvx automagik-tools serve \
  --openapi-url https://raw.githubusercontent.com/discord/discord-api-spec/main/specs/openapi.json \
  --transport sse --port 8001

Works with ANY OpenAPI spec:

  • 🔄 Auto-updates when the API changes
  • 🚀 Zero code, just paste the URL
  • 🌐 Discord, Stripe, GitHub, Slack, or your internal APIs

🌟 Featured Tool: AutoMagik

AI orchestration that speaks human - Production-ready platform for complex AI workflows

uvx automagik-tools serve --tool automagik-agents --transport sse --port 8000

💬 Natural Language • ✨ Spark (spawn agent hives) • 🔄 Task Scheduling • 🏗️ Framework Agnostic (PydanticAI, LangGraph, CrewAI) • 🤝 Dev Friendly

🚀 Quick Start

Copy this into Claude/Cursor to get Discord AI powers:

{
  "mcpServers": {
    "discord": {
      "command": "uvx",
      "args": [
        "automagik-tools@latest",
        "serve",
        "--openapi-url",
        "https://raw.githubusercontent.com/discord/discord-api-spec/main/specs/openapi.json",
        "--transport",
        "stdio"
      ],
      "env": {
        "DISCORD_TOKEN": "YOUR_BOT_TOKEN"
      }
    }
  }
}

Where to paste:

  • Claude Desktop: Settings → Developer → Edit Config
  • Cursor: ~/.cursor/mcp.json

Or test instantly via command line:

# Discord API
uvx automagik-tools serve \
  --openapi-url https://raw.githubusercontent.com/discord/discord-api-spec/main/specs/openapi.json \
  --transport sse --port 8001

# AutoMagik AI orchestration
uvx automagik-tools serve --tool automagik-agents --transport sse --port 8000

📋 Real-World Examples

AutoMagik Configuration (for Claude/Cursor)

{
  "mcpServers": {
    "automagik": {
      "command": "uvx",
      "args": [
        "automagik-tools@latest",
        "serve",
        "--tool",
        "automagik-agents",
        "--transport",
        "stdio"
      ],
      "env": {
        "AUTOMAGIK_AGENTS_API_KEY": "YOUR_API_KEY",
        "AUTOMAGIK_AGENTS_BASE_URL": "http://localhost:8881",
        "AUTOMAGIK_AGENTS_OPENAPI_URL": "http://localhost:8881/api/v1/openapi.json"
      }
    }
  }
}

Now in Claude/Cursor you can say:

  • "Use AutoMagik to analyze these 10 CSV files and find patterns"
  • "Set up a workflow that monitors my GitHub repos and creates weekly summaries"
  • "Process these customer feedback emails and categorize them by sentiment"

More OpenAPI Examples

# Stripe Payments
uvx automagik-tools serve \
  --openapi-url https://raw.githubusercontent.com/stripe/openapi/master/openapi/spec3.json \
  --api-key $STRIPE_API_KEY

# GitHub API  
uvx automagik-tools serve \
  --openapi-url https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.json \
  --api-key $GITHUB_TOKEN

# Your Internal API
uvx automagik-tools serve \
  --openapi-url https://api.yourcompany.com/openapi.json \
  --api-key $YOUR_API_KEY

🛠️ Built-in Tools

AutoMagik 🤖

AI orchestration that speaks human:

# Quick test with SSE
uvx automagik-tools serve --tool automagik-agents --transport sse --port 8000

What you can do:

  • ✨ Use Spark to spawn hives of agents in seconds
  • 🔄 Schedule recurring AI tasks and automations
  • 💬 Natural language task descriptions
  • 🏗️ Works with any AI framework

Evolution API (WhatsApp) 📱

Complete WhatsApp automation:

  • Send/receive messages
  • Media support (images, documents)
  • Group management
  • Status updates

🎯 Why We Built This

We got tired of the same painful process every time we needed to connect our AI agents to a new API:

The Problem We Faced:

  • Hours spent writing boilerplate MCP tool definitions
  • Constant maintenance when APIs changed
  • Friction between "let's try this API" and actually using it
  • No easy path from prototype to production-ready tool

Our Solution:

  1. Instant prototyping: Drop an OpenAPI URL, get a working tool in seconds
  2. Zero friction: Test new APIs immediately without writing code
  3. Deploy as code: Start with the generated tool, then customize as needed
  4. Refine over time: Extract the generated code and tailor it to your specific needs

The best part: When the API provider updates their OpenAPI spec, your tool automagikally gets the new endpoints. Perfect for the exploration phase before you lock down your production implementation.

🛠️ Developer Documentation

Development Setup

# Clone the repo
git clone https://github.com/namastexlabs/automagik-tools
cd automagik-tools

# Install with all dev dependencies
make install

# Run tests
make test

# Create a new tool
make new-tool

Creating Tools from OpenAPI

# Method 1: Dynamic (no files created)
uvx automagik-tools serve --openapi-url https://api.example.com/openapi.json

# Method 2: Generate persistent tool
uvx automagik-tools tool --url https://api.example.com/openapi.json --name my-api
uvx automagik-tools serve --tool my-api

Adding Your Own Tools

  1. Create a folder in automagik_tools/tools/your_tool/
  2. Add __init__.py with FastMCP server
  3. That's it - auto-discovered!

See our Tool Creation Guide for details.

Available Commands

# Core commands
automagik-tools list                    # List all available tools
automagik-tools serve                   # Serve a tool or OpenAPI spec
automagik-tools serve-all               # Serve all tools on one server
automagik-tools mcp-config <tool>       # Generate MCP config
automagik-tools info <tool>             # Show tool details
automagik-tools version                 # Show version

# Development commands  
make install                            # Install dev environment
make test                               # Run all tests
make lint                               # Check code style
make format                             # Auto-format code
make build                              # Build package
make docker-build                       # Build Docker images

🚀 The Future: Smart Tools™ (Coming Q2 2025)

Imagine describing what you want in plain English and having AI automatically:

  • Find the right API
  • Understand its documentation
  • Make the correct calls
  • Handle authentication
  • Process responses

"Hey, get me all unread messages from Slack and create tasks in Notion" → Done. No configuration needed.

🤝 Contributing

We love contributions! See CONTRIBUTING.md for guidelines.

📄 License

MIT License - see LICENSE

🙏 Credits

Built with ❤️ by Namastex Labs

Special thanks to:

  • Anthropic for MCP
  • FastMCP for the awesome framework
  • Our amazing community of contributors

Transform any API into an AI-ready tool in seconds.
Star us on GitHubJoin our DiscordFollow on Twitter

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

automagik_tools-0.1.3rc1.tar.gz (41.1 kB view details)

Uploaded Source

Built Distribution

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

automagik_tools-0.1.3rc1-py3-none-any.whl (33.5 kB view details)

Uploaded Python 3

File details

Details for the file automagik_tools-0.1.3rc1.tar.gz.

File metadata

  • Download URL: automagik_tools-0.1.3rc1.tar.gz
  • Upload date:
  • Size: 41.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for automagik_tools-0.1.3rc1.tar.gz
Algorithm Hash digest
SHA256 ec0550e44a6463a37061ab2d94938565241bd7a09de2bb2948ba5d9ffb7018fb
MD5 5b52f4f4e873e84c8aefe58fd64b3d8d
BLAKE2b-256 70a0430029dd268ba093ee1b9c53f448bb6bce855b6f4f5c4dab7eda1d94df45

See more details on using hashes here.

File details

Details for the file automagik_tools-0.1.3rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for automagik_tools-0.1.3rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 bbd3ed0b19d9e1a87e73646884f0eb814092b8946b5aa925d21ba20743f09e77
MD5 da70f5f11b4f6e89876ad5072c417003
BLAKE2b-256 2571879ec3d0b2219e03df08d627708540516737c7cf19844bd60e0e75fe4948

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