mcp-server-axiom-js

by ThetaBird

1 stars
370 downloads
Not rated
GitHub

About

An npx-compatible port of @Axiom's mcp-server-axiom

Details

Author
ThetaBird
Repository
ThetaBird/mcp-server-axiom-js
GitHub stars
1
Downloads
370
License
MIT License
Categories
Developer Tools, Other

- Provides queryApl tool to execute APL queries
- Provides listDatasets tool to list available datasets
- Configurable query and dataset‑list rate limiting
- Supports environment variables or JSON config files
- Runs via npx without prior installation
- MIT licensed and open source

Setting up with Highlight

Follow these steps to add this server as a custom Highlight plugin:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name mcp-server-axiom-js
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 mcp-server-axiom
    Environment
    • AXIOM_URL https://api.axiom.co
    • AXIOM_TOKEN <AXIOM_TOKEN_HERE>
    • AXIOM_ORG_ID <AXIOM_ORG_ID_HERE>

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

npm install -g mcp-server-axiom

You can run this MCP server directly using npx. Add the following configuration to your MCP configuration file:

{
  "axiom": {
    "command": "npx",
    "args": ["-y", "mcp-server-axiom"],
    "env": {
      "AXIOM_TOKEN": "<AXIOM_TOKEN_HERE>",
      "AXIOM_URL": "https://api.axiom.co",
      "AXIOM_ORG_ID": "<AXIOM_ORG_ID_HERE>"
    }
  }
}

The server can be configured using environment variables:

- AXIOM_TOKEN (required): Your Axiom API token
- AXIOM_ORG_ID (required): Your Axiom organization ID
- AXIOM_URL (optional): Custom Axiom API URL (defaults to https://api.axiom.co)
- AXIOM_QUERY_RATE (optional): Queries per second limit (default: 1)
- AXIOM_QUERY_BURST (optional): Query burst capacity (default: 1)
- AXIOM_DATASETS_RATE (optional): Dataset list operations per second (default: 1)
- AXIOM_DATASETS_BURST (optional): Dataset list burst capacity (default: 1)
- PORT (optional): Server port (default: 3000)

1. Using environment variables:

export AXIOM_TOKEN=your_token
mcp-server-axiom

2. Using a config file:

mcp-server-axiom config.json

Example config.json:

{
  "token": "your_token",
  "url": "https://custom.axiom.co",
  "orgId": "your_org_id",
  "queryRate": 2,
  "queryBurst": 5,
  "datasetsRate": 1,
  "datasetsBurst": 2
}

queryApl

Execute APL queries. Parameters: query (string) - the APL query to execute.

listDatasets

List available datasets. Parameters: None.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp-server-axiom-js": {
            "env": {
                "AXIOM_URL": "https://api.axiom.co",
                "AXIOM_TOKEN": "<AXIOM_TOKEN_HERE>",
                "AXIOM_ORG_ID": "<AXIOM_ORG_ID_HERE>"
            },
            "args": [
                "-y",
                "mcp-server-axiom"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": {
        "AXIOM_URL": "https://api.axiom.co",
        "AXIOM_TOKEN": "<AXIOM_TOKEN_HERE>",
        "AXIOM_ORG_ID": "<AXIOM_ORG_ID_HERE>"
    },
    "args": [
        "-y",
        "mcp-server-axiom"
    ],
    "command": "npx"
}

Macos

{
    "env": {
        "AXIOM_URL": "https://api.axiom.co",
        "AXIOM_TOKEN": "<AXIOM_TOKEN_HERE>",
        "AXIOM_ORG_ID": "<AXIOM_ORG_ID_HERE>"
    },
    "args": [
        "-y",
        "mcp-server-axiom"
    ],
    "command": "npx"
}

Windows

{
    "env": {
        "AXIOM_URL": "https://api.axiom.co",
        "AXIOM_TOKEN": "<AXIOM_TOKEN_HERE>",
        "AXIOM_ORG_ID": "<AXIOM_ORG_ID_HERE>"
    },
    "args": [
        "/c",
        "npx",
        "-y",
        "mcp-server-axiom"
    ],
    "command": "cmd"
}

MCP Server for Axiom

A JavaScript port of the official Axiom MCP server that enables AI agents to query data using Axiom Processing Language (APL).

<a href="https://glama.ai/mcp/servers/8hxxw8uenu">

</a>

This implementation provides the same functionality as the original Go version but packaged as an npm module for easier integration with Node.js environments.

Installation & Usage

MCP Configuration

You can run this MCP server directly using npx. Add the following configuration to your MCP configuration file:

{
  "axiom": {
    "command": "npx",
    "args": ["-y", "mcp-server-axiom"],
    "env": {
      "AXIOM_TOKEN": "<AXIOM_TOKEN_HERE>",
      "AXIOM_URL": "https://api.axiom.co",
      "AXIOM_ORG_ID": "<AXIOM_ORG_ID_HERE>"
    }
  }
}

Local Development & Testing

Installation

npm install -g mcp-server-axiom

Environment Variables

The server can be configured using environment variables:

- AXIOM_TOKEN (required): Your Axiom API token
- AXIOM_ORG_ID (required): Your Axiom organization ID
- AXIOM_URL (optional): Custom Axiom API URL (defaults to https://api.axiom.co)
- AXIOM_QUERY_RATE (optional): Queries per second limit (default: 1)
- AXIOM_QUERY_BURST (optional): Query burst capacity (default: 1)
- AXIOM_DATASETS_RATE (optional): Dataset list operations per second (default: 1)
- AXIOM_DATASETS_BURST (optional): Dataset list burst capacity (default: 1)
- PORT (optional): Server port (default: 3000)

Running the Server Locally

1. Using environment variables:

export AXIOM_TOKEN=your_token
mcp-server-axiom

2. Using a config file:

mcp-server-axiom config.json

Example config.json:

{
  "token": "your_token",
  "url": "https://custom.axiom.co",
  "orgId": "your_org_id",
  "queryRate": 2,
  "queryBurst": 5,
  "datasetsRate": 1,
  "datasetsBurst": 2
}

API Endpoints

- GET /: Get server implementation info
- GET /tools: List available tools
- POST /tools/:name/call: Call a specific tool
- Available tools:
- queryApl: Execute APL queries
- listDatasets: List available datasets

Example Tool Calls

1. Query APL:

curl -X POST http://localhost:3000/tools/queryApl/call \
  -H "Content-Type: application/json" \
  -d '{
    "arguments": {
      "query": "['logs'] | where ['severity'] == \"error\" | limit 10"
    }
  }'

2. List Datasets:

curl -X POST http://localhost:3000/tools/listDatasets/call \
  -H "Content-Type: application/json" \
  -d '{
    "arguments": {}
  }'

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.