# Glassnode MCP Server

> The Glassnode MCP Server is currently in beta, and its tools are subject to change. Although this MCP server produces accurate data, it is possible that it could be misinterpreted by the LLM you are using.

## Overview

*Crypto on-chain metrics and market intelligence for AI agents.*

A Model Context Protocol (MCP) server providing access to [Glassnode's](https://glassnode.com/) API. The server enables AI agents to access on-chain metrics, market data, and analytics.

For detailed information about the API and available data:

* [Glassnode API Documentation](https://docs.glassnode.com/basic-api/endpoints)
* [Glassnode Metric Catalog](https://docs.glassnode.com/data/metric-catalog)
* [Supported Assets](https://docs.glassnode.com/data/supported-assets)

**Features**

* Asset and metrics discovery
* Metric metadata retrieval
* Single and bulk data retrieval

**Tools**

The server provides seven tools for accessing Glassnode data:

1. `get_assets_list`: Get a list of all cryptocurrencies and tokens supported by Glassnode
2. `get_metrics_list`: Get a catalog of all available metrics and their paths, optionally filtered by category
3. `get_asset_metrics`: Get metrics available for a specific asset
4. `get_metric_metadata`: Get detailed information about a specific metric's structure and parameters
5. `fetch_metric`: Fetch data (max 30d history) for a specific metric with customizable parameters
6. `fetch_bulk_metrics`: Fetch data (max 30d history) for multiple assets simultaneously in a single request

## Quick Setup

Install the Glassnode MCP server across all your AI clients with a single command:

{% tabs %}
{% tab title="Public Access" %}

```bash
npx add-mcp https://mcp.glassnode.com
```

{% endtab %}

{% tab title="Authenticated" %}

```bash
npx add-mcp https://mcp.glassnode.com --header "X-Api-Key:YOUR_API_KEY"
```

{% endtab %}
{% endtabs %}

This auto-detects installed clients (Claude Code, Cursor, VS Code, Codex, and more) and configures them.

Or follow the per-client instructions below.

{% hint style="info" %}
The **Authenticated** tab in each section removes the 30-day time range limit. When using an API key, each request consumes [API credits](https://docs.glassnode.com/basic-api/api-credits) just like a direct API call. Get your key at [studio.glassnode.com/settings/api](https://studio.glassnode.com/settings/api).
{% endhint %}

{% hint style="warning" %}
Only configure **one** version of the Glassnode MCP server per client — either public access or authenticated, not both. See [Troubleshooting](#troubleshooting) for more details.
{% endhint %}

### Claude.ai and Claude for desktop

1. Open Claude desktop or web app
2. Go to `Settings > Connectors > Add custom connector` (<https://claude.ai/settings/connectors>)
3. Enter the URL: `https://mcp.glassnode.com`
4. Click `Add`
5. Claude will automatically configure the connection

Connectors do not support custom headers. To use an API key, use the [Claude Desktop (Manual Configuration)](#claude-desktop-manual-configuration) method instead.

### Claude Code

{% tabs %}
{% tab title="Public Access" %}

```bash
claude mcp add --transport http glassnode https://mcp.glassnode.com
```

{% endtab %}

{% tab title="Authenticated" %}

```bash
claude mcp add --transport http glassnode https://mcp.glassnode.com \
  --header "X-Api-Key:YOUR_API_KEY"
```

{% endtab %}
{% endtabs %}

### Claude Desktop (Manual Configuration)

Add the following to your `claude_desktop_config.json`:

{% tabs %}
{% tab title="Public Access" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com"
      ]
    }
  }
}
```

{% endtab %}

{% tab title="Authenticated" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com",
        "--header",
        "X-Api-Key:${GLASSNODE_API_KEY}"
      ],
      "env": {
        "GLASSNODE_API_KEY": "your-api-key-here"
      }
    }
  }
}
```

{% endtab %}
{% endtabs %}

### Cursor

Add to `.cursor/mcp.json` in your project root:

{% tabs %}
{% tab title="Public Access" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com"
      ]
    }
  }
}
```

{% endtab %}

{% tab title="Authenticated" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com",
        "--header",
        "X-Api-Key:${GLASSNODE_API_KEY}"
      ],
      "env": {
        "GLASSNODE_API_KEY": "your-api-key-here"
      }
    }
  }
}
```

{% endtab %}
{% endtabs %}

### ChatGPT

1. Enable [Developer mode](https://platform.openai.com/docs/guides/developer-mode) in ChatGPT settings
2. Go to **Settings > Connectors** and click **Create**
3. Enter the following:
   * **Name:** `Glassnode`
   * **MCP server URL:** `https://mcp.glassnode.com`
4. Click **Create**

The Glassnode connector will appear in the composer's Developer mode tools.

ChatGPT connectors do not support custom headers. Use the public access version, or access the Glassnode API directly for authenticated queries.

### Windsurf

Add to your `mcp_config.json`:

{% tabs %}
{% tab title="Public Access" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com"
      ]
    }
  }
}
```

{% endtab %}

{% tab title="Authenticated" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com",
        "--header",
        "X-Api-Key:${GLASSNODE_API_KEY}"
      ],
      "env": {
        "GLASSNODE_API_KEY": "your-api-key-here"
      }
    }
  }
}
```

{% endtab %}
{% endtabs %}

### VS Code with Copilot

{% tabs %}
{% tab title="Public Access" %}

1. Open the Command Palette (`Ctrl+Shift+P` / `Cmd+Shift+P`)
2. Search for **MCP: Add Server**
3. Select **Command (stdio)**
4. Enter `npx` as the command
5. Enter `mcp-remote https://mcp.glassnode.com` as the arguments
6. Name it `glassnode`
   {% endtab %}

{% tab title="Authenticated" %}

1. Open the Command Palette (`Ctrl+Shift+P` / `Cmd+Shift+P`)
2. Search for **MCP: Add Server**
3. Select **Command (stdio)**
4. Enter `npx` as the command
5. Enter `mcp-remote https://mcp.glassnode.com --header X-Api-Key:YOUR_API_KEY` as the arguments
6. Name it `glassnode`
   {% endtab %}
   {% endtabs %}

### Codex CLI

{% tabs %}
{% tab title="Public Access" %}

```bash
codex mcp add glassnode --url https://mcp.glassnode.com
```

{% endtab %}

{% tab title="Authenticated" %}

```bash
codex mcp add glassnode --url https://mcp.glassnode.com \
  --header "X-Api-Key:YOUR_API_KEY"
```

{% endtab %}
{% endtabs %}

### Gemini CLI

Add the following to your `~/.gemini/settings.json`:

{% tabs %}
{% tab title="Public Access" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com"
      ]
    }
  }
}
```

{% endtab %}

{% tab title="Authenticated" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com",
        "--header",
        "X-Api-Key:${GLASSNODE_API_KEY}"
      ],
      "env": {
        "GLASSNODE_API_KEY": "your-api-key-here"
      }
    }
  }
}
```

{% endtab %}
{% endtabs %}

### Gemini Code Assist

Gemini Code Assist shares the same configuration as [Gemini CLI](#gemini-cli). Add the config above to your `~/.gemini/settings.json`, then restart your IDE.

### Other MCP Clients

Most MCP-compatible clients support a JSON configuration file. Add the following to your client's MCP config:

{% tabs %}
{% tab title="Public Access" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com"
      ]
    }
  }
}
```

{% endtab %}

{% tab title="Authenticated" %}

```json
{
  "mcpServers": {
    "glassnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.glassnode.com",
        "--header",
        "X-Api-Key:${GLASSNODE_API_KEY}"
      ],
      "env": {
        "GLASSNODE_API_KEY": "your-api-key-here"
      }
    }
  }
}
```

{% endtab %}
{% endtabs %}

Restart your client after updating the configuration.

## Troubleshooting

### Duplicate MCP servers

If you added both the public access and API key versions of the Glassnode MCP server, your AI client may see duplicate tools or fail to connect. Keep only **one** configuration at a time.

To remove the extra server:

* **Claude Code:** `claude mcp remove glassnode`, then re-add the version you want.
* **Claude Desktop / Cursor / Windsurf:** Edit your JSON config file and remove the duplicate `glassnode` entry.
* **VS Code with Copilot:** Open the Command Palette, search for **MCP: List Servers**, and remove the duplicate.

### Connection issues

* **Restart your client** after changing any MCP configuration.
* **Verify `npx` is available** by running `npx --version` in your terminal. If not found, install [Node.js](https://nodejs.org/).
* **Firewall or proxy** — ensure your network allows outbound HTTPS connections to `mcp.glassnode.com`.

## Example Prompts

Get an overview of the MCP tools.

```
What can Glassnode mcp do?
```

Simple prompts:

```
- What market metrics Glassnode has for Ethereum?
- What assets does Glassnode support?
- Bitcoin price, use 10 minute resolution
```

More advanced:

```
- SOPR and MVRV for Bitcoin and Ethereum, values for the past month
- Show me Bitcoin whale activity
- Compare the market caps of Bitcoin, Ethereum, and Solana over the last month
```

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.glassnode.com/guides-and-tutorials/glassnode-mcp-server.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
