Skip to main content
Glama
ironxyz
by ironxyz

@ironxyz/mcp-server

Official MCP (Model Context Protocol) server for Iron.xyz API, designed to work with Claude Desktop, Cursor IDE and other MCP compatible clients.

Features

This MCP server provides three main tools for exploring and interacting with the Iron.xyz API:

  1. list-all-endpoints - Lists all API endpoints from the Iron.xyz OpenAPI specification in a concise format suitable for LLM consumption

  2. get-api-specs - Gets detailed OpenAPI specification for a specific endpoint

  3. invoke-api-endpoint - Actually calls the Iron.xyz API endpoints with proper authentication and validation

Related MCP server: MCP Server Example

Quick Start

No installation required! Use with npx in your host:

Configuration

Add this to your MCP Host (Claude Desktop / Cursor IDE etc) configuration:

{
  "mcpServers": {
    "ironxyz": {
      "command": "npx",
      "args": ["-y", "@ironxyz/mcp-server"],
      "env": {
        "IRON_ENVIRONMENT": "production"
      }
    }
  }
}

Configuration Options

Configure the server using environment variables:

Variable

Description

Default

Options

IRON_ENVIRONMENT

Iron.xyz environment to use

production

production, sandbox

IRON_API_KEY

Iron.xyz API key for authentication

None

Your API key from Iron.xyz dashboard

IRON_READ_ONLY_MODE

Restrict to GET requests only

false

true, false

IRON_BASE_URL

Custom base URL for API calls

Auto-detected based on environment

Any valid URL

IRON_OPENAPI_SPEC_URL

Custom OpenAPI spec URL

Auto-detected based on environment

Any valid URL

IRON_LOCAL_SPEC_PATH

Local fallback spec file path

./ironxyz-openapi-spec.yaml

Any valid file path

Environment Examples

Production Environment (default):

{
  "env": {
    "IRON_ENVIRONMENT": "production"
  }
}

Sandbox Environment:

{
  "env": {
    "IRON_ENVIRONMENT": "sandbox"
  }
}

With API Key (for endpoint invocation):

{
  "env": {
    "IRON_ENVIRONMENT": "production",
    "IRON_API_KEY": "your-iron-api-key-here"
  }
}

Read-only mode (GET requests only):

{
  "env": {
    "IRON_ENVIRONMENT": "production",
    "IRON_API_KEY": "your-iron-api-key-here",
    "IRON_READ_ONLY_MODE": "true"
  }
}

Custom OpenAPI Spec URL:

{
  "env": {
    "IRON_ENVIRONMENT": "production",
    "IRON_OPENAPI_SPEC_URL": "https://your-custom-spec-url.com/spec"
  }
}

Development

Local Installation

  1. Install dependencies:

    pnpm install
  2. Build the project:

    pnpm run build

Running Locally

pnpm start

Or for development:

pnpm run dev

Tools Available

list-all-endpoints

Lists all API endpoints from the Iron.xyz OpenAPI specification.

Parameters:

  • filterByTag (string, optional): Filter endpoints by tag

Example usage:

{
  "tool": "list-all-endpoints",
  "arguments": {
    "filterByTag": "users"
  }
}

get-api-specs

Gets detailed OpenAPI specification for a specific endpoint.

Parameters:

  • path (string, required): The API path (e.g., '/v1/users')

  • method (string, required): The HTTP method (GET, POST, PUT, DELETE, etc.)

Example usage:

{
  "tool": "get-api-specs",
  "arguments": {
    "path": "/v1/users",
    "method": "GET"
  }
}

invoke-api-endpoint

Actually calls the Iron.xyz API endpoints with proper authentication and validation.

Parameters:

  • path (string, required): The API path (e.g., '/customers') - /api prefix is added automatically

  • method (string, required): The HTTP method (GET, POST, PUT, DELETE, etc.)

  • parameters (object, optional): Path and query parameters with string keys

  • headers (object, optional): Additional headers with string keys and string values

  • body (object, optional): Request body for POST/PUT/PATCH requests; accepts arbitrary values under string keys, including nested objects

Features:

  • ✅ Authentication: Automatically adds API key if configured

  • ✅ Read-only mode: Optional restriction to GET requests only

  • ✅ Validation: Validates endpoints against OpenAPI specification

  • ✅ Error handling: Comprehensive error responses with details

  • ✅ Environment awareness: Works with both sandbox and production

Example usage:

{
  "tool": "invoke-api-endpoint",
  "arguments": {
    "path": "/customers",
    "method": "GET",
    "parameters": {
      "limit": 10,
      "offset": 0
    }
  }
}

Example with POST request:

{
  "tool": "invoke-api-endpoint",
  "arguments": {
    "path": "/customers",
    "method": "POST",
    "headers": {
      "IDEMPOTENCY-KEY": "123e4567-e89b-12d3-a456-426614174000"
    },
    "body": {
      "name": "John Doe",
      "email": "john@example.com",
      "type": "individual"
    }
  }
}

Error Handling

The server includes comprehensive error handling for:

  • Missing or invalid OpenAPI specification API

  • Invalid endpoint paths or methods

  • Network issues with external services

  • Malformed tool arguments

Available Tools

3 tools
get-api-specsA
Read-only

Get detailed specifications for a specific API endpoint including parameters, request/response schemas, and examples. Should be used to get a deeper understanding of an API endpoint you will use for code generation or for real API invoking. In case you intend to use the invoke-api-endpoint MCP tool, ALWAYS use this before, so you understand the full context of an API.

Inputs: path (required), method (required).

invoke-api-endpointA

Make an actual API call to the Iron API. Use this ONLY after getting complete endpoint specifications with the get-api-specs MCP tool. This tool requires proper authentication and can be in read-only mode if configured.

Inputs: path (required), method (required), parameters, body, +1 more.

list-all-endpointsA
Read-only

Get a comprehensive overview of all available API endpoints organized by category/tag. Use this to explore the API structure and find endpoints related to your goal.

Inputs: filterByTag.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.3/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool serves a unique purpose: list-all-endpoints for discovery, get-api-specs for detailed specs, and invoke-api-endpoint for actual API calls. No overlap in functionality.

    Naming Consistency5/5

    All tool names follow the verb_noun pattern with snake_case: 'list-all-endpoints', 'get-api-specs', 'invoke-api-endpoint'. Consistent and predictable.

    Tool Count4/5

    Three tools is minimal but covers the essential workflow of exploring and using an API. Falls just short of the ideal range (3-15) but is not too sparse for the purpose.

    Completeness4/5

    The set covers the core lifecycle: list all endpoints, get specs for one, then invoke. Minor gaps like search/filtering but no dead ends in the primary workflow.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers