Skip to content

Releases: lasso-security/mcp-gateway

MCP Gateway Tools Dynamic Capabilities

22 Apr 16:33
Compare
Choose a tag to compare

Version: 1.0.0
Date: 2025-05-01

We're thrilled to announce MCP Gateway v1.0.0, a major update that transforms how your AI agents interact with MCP servers!

✨ New Feature: Dynamic Capability Registration

MCP Gateway now automatically discovers and exposes all capabilities from your proxied MCP servers as native gateway tools.
Screenshot 2025-04-22 at 19 28 21
Screenshot 2025-04-22 at 19 28 17

Key Capabilities:

  • Transparent Proxying: All tools and resources from underlying MCP servers now appear as regular capabilities within the gateway itself with the format <MCP_NAME>_<TOOL_NAME>
  • Improved Discoverability: LLMs can now see and use all available tools directly without needing to invoke generic proxy methods
  • Consistent Interface: All proxied tools maintain their original signatures, parameters, and documentation
  • Automatic Sanitization: All proxied capabilities still benefit from the gateway's security and sanitization features

Before vs After:

Previous approach (v0.x):

# Get metadata about available servers
servers_info = await mcp.get_metadata()
# Call a tool on a specific server through a generic proxy
result = await mcp.run_tool("filesystem", "list_directory", {"path": "."})

New approach (v1.0):

# Direct access to proxied tools with their original signatures
result = await mcp.filesystem_list_directory(path=".")

🔄 Simplified Plugin Configuration

Command-line arguments have been streamlined with a unified plugin system:

  • New Syntax: Use -p plugin_name or --plugin plugin_name for all plugin types
  • Backward Compatible: Still supports --enable-guardrails and --enable-tracing for existing configurations

Example:

# New syntax
mcp-gateway --mcp-json-path ~/.cursor/mcp.json -p basic -p xetrack

# Equivalent old syntax
mcp-gateway --mcp-json-path ~/.cursor/mcp.json --enable-guardrails basic --enable-tracing xetrack

🚀 Getting Started

  1. Update to version 1.0.0:

    pip install mcp-gateway==1.0.0
  2. Update your configuration:

    {
      "mcpServers": {
        "mcp-gateway": {
          "command": "mcp-gateway",
          "args": [
            "--mcp-json-path",
            "~/.cursor/mcp.json",
            "--plugin",
            "basic"
          ],
          "servers": {
            "filesystem": {
              "command": "npx",
              "args": [
                "-y",
                "@modelcontextprotocol/server-filesystem",
                "."
              ]
            }
          }
        }
      }
    }
  3. Start using the dynamic capabilities: Any LLM or code interacting with your gateway will now see all proxied capabilities as native tools.

🔍 Metadata Tool Enhancements

The get_metadata tool remains available and has been enhanced to provide detailed information about all proxied servers and their original capabilities, making it easier to debug and introspect your MCP ecosystem.

What's Changed

  • Feat: Dynamic capability registration in #3
  • Feat: Unified plugin system with simplified arguments in #3
  • Docs: Updated README with new command syntax and examples in #3

v0.1.2

20 Apr 17:15
Compare
Choose a tag to compare

Release Notes: Xetrack Tracing Integration

Version: 0.1.2
Date: 20.4.2025

We are excited to introduce the integration of Xetrack as a new tracing plugin for MCP Gateway! This addition enhances the observability of your MCP interactions by providing detailed logging and monitoring capabilities for tool calls.

✨ New Feature: Xetrack Tracing Plugin

The xetrack plugin allows you to track and debug MCP tool calls using structured logging and database storage.

Key Capabilities:

  • Detailed Logging: Captures comprehensive information about each tool call, including arguments, responses, server details, and timestamps. Logs are stored in files (using Loguru) for easy inspection.
  • Database Tracking: Stores event data in an SQLite database (tracing.db by default), enabling powerful querying and analysis using tools like the xetrack CLI, Python (xetrack.Reader), or DuckDB.
  • Flexible Configuration: Control logging behavior through environment variables (XETRACK_DB_PATH, XETRACK_LOGS_PATH, XETRACK_FLATTEN_ARGUMENTS, etc.) or mcp.json settings.
  • Structured Data: Events are logged in a structured format, making it easier to parse and integrate with other monitoring systems.

Benefits:

  • Enhanced Debugging: Easily trace the flow of requests and responses through the gateway and identify issues.
  • Monitoring & Analysis: Analyze tool usage patterns, performance, and potential errors over time by querying the database.
  • Improved Observability: Gain deeper insights into how agents interact with your MCP servers.

🚀 Getting Started

  1. Install Dependencies:

    pip install mcp-gateway[xetrack]
    # or directly: pip install xetrack>=0.3.4
  2. Enable the Plugin: Start the gateway with the --enable-tracing xetrack flag:

    mcp-gateway --enable-tracing xetrack
  3. Configure (Optional): Set environment variables or update your mcp.json to customize database path, log location, and other parameters as shown in the README.md.

    Example mcp.json snippet for cursor:

    {
        "mcpServers": {
            "mcp-gateway": {
                "command": "mcp-gateway",
                "args": [
                    "--enable-tracing",
                    "xetrack"
                ],
                "env": {
                    "XETRACK_DB_PATH": "tracing.db",
                    "XETRACK_LOGS_PATH": "logs/"
                },
                // ... other servers ...
            }
        }
    }
  4. Explore Data: Use the xetrack CLI, Python, or DuckDB to explore the collected data in tracing.db and the logs in the specified logs/ directory.

Refer to the updated README.md section on Tracing -> Xetrack for detailed usage examples and configuration options.

We believe this integration will significantly improve your ability to monitor and manage your MCP Gateway deployments. Happy tracing!

What's Changed

New Contributors

  • @xdssio made their first contribution in #1

Full Changelog: https://github.com/lasso-security/mcp-gateway/commits/v0.1.2