Easy Digital Downloads

io.github.verygoodpluginsPublished by GitHub account verygoodpluginsv1.1.0Updated Oct 24, 2026

MCP server for Easy Digital Downloads REST API - sales, customers, products, analytics

VerifiedSTDIODesktop onlyData & AnalyticsBusiness & Commerce

Overview

AI-generated overview

MCP server that connects an assistant to an Easy Digital Downloads store's REST API for sales, customers, products, discounts and analytics.

What you can do
Validate the store API URL and credentials and check connectivity to the store's REST API (diagnostics). List and read products with pricing and stats, and list and read sales with filters or by purchase key. List and read customers with purchase stats, lifetime value and purchase history. Retrieve earnings and sales totals, daily stats for a date range, and per-product breakdowns. List and read discount codes with usage stats, and retrieve file download logs.
When to use it
Useful when you run a WordPress store on Easy Digital Downloads and want to ask an assistant questions about revenue, top customers, product performance, discount codes or download activity without opening the admin dashboard.
Requirements
Runs locally as an npm package (Node.js) or as a Claude Desktop extension. Needs an EDD store with the REST API enabled and three environment variables: EDD_API_URL, EDD_API_KEY (public key) and EDD_API_TOKEN, generated in the WordPress admin under Downloads, Settings, API. Network access to the store.
Before you install
Requires store API credentials (EDD_API_KEY and EDD_API_TOKEN) that grant read access to sales and customer data; keep them out of shared configs and version control. Customer records include emails and purchase history, so responses may contain personal data. The listed tools appear read-only, but the credentials should still be scoped to a dedicated API user.

Installation

In SourceWeft

  1. Open Easy Digital Downloads in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-edd

MCP server for Easy Digital Downloads REST API - access sales data, customers, products, and analytics from your EDD store.

[npm version] [License: GPL-3.0]

Features

  • 📊 Sales Analytics - Revenue, transaction counts, date ranges
  • 👥 Customer Data - Purchase history, lifetime value
  • 🛍️ Product Catalog - Pricing tiers, licensing info
  • 🏷️ Discount Codes - Usage stats and configuration
  • 📥 Download Logs - File download tracking
  • 🔒 Type Safety - Full Zod schema validation

Installation

Quick Install (Claude Desktop)

Download the Desktop Extension for one-click installation:

Release page (download .mcpb asset)

Double-click the downloaded file to install. You'll be prompted for your API credentials.

npm Install

bash
npm install -g @verygoodplugins/mcp-edd

Or add to your Claude Desktop configuration directly (see below).

Configuration

Environment Variables

Set these environment variables before running the server:

bash
export EDD_API_URL="https://your-store.com/edd-api/"export EDD_API_KEY="your-api-public-key"export EDD_API_TOKEN="your-api-token"

Or create a .env file in your working directory.

Getting API Credentials

  1. In WordPress admin, go to Downloads → Settings → API
  2. Generate a new API key for your user
  3. Copy the Public Key and Token
  4. Your API URL is https://your-site.com/edd-api/

Claude Desktop Configuration

Add to your claude_desktop_config.json:

json
{  "mcpServers": {    "edd": {      "command": "npx",      "args": ["-y", "@verygoodplugins/mcp-edd"],      "env": {        "EDD_API_URL": "https://your-store.com/edd-api/",        "EDD_API_KEY": "your-api-public-key",        "EDD_API_TOKEN": "your-api-token"      }    }  }}

Available Tools

Setup / Diagnostics

ToolDescription
edd_validate_connectionValidate your Store API URL and credentials

Products

ToolDescription
edd_list_productsList all products with pricing and stats
edd_get_productGet detailed product info by ID

Sales

ToolDescription
edd_list_salesList recent sales with filters
edd_get_saleGet sale by ID or purchase key

Customers

ToolDescription
edd_list_customersList customers with purchase stats
edd_get_customerGet customer by ID or email

Note: edd_list_customers returns the EDD customer ID as id (usable with edd_get_customer(customerId=...)) and includes userId when available.

Statistics

ToolDescription
edd_get_statsGet earnings/sales totals
edd_get_stats_by_dateGet daily stats for date range
edd_get_stats_by_productGet stats breakdown by product

Discounts

ToolDescription
edd_list_discountsList all discount codes
edd_get_discountGet discount details by ID

Downloads

ToolDescription
edd_get_download_logsGet file download history

Example Usage

Once configured, you can ask Claude:

  • "Show me this month's sales revenue"
  • "List the top 10 customers by lifetime value"
  • "How many licenses were sold for WP Fusion last month?"
  • "Show me all active discount codes"
  • "Get the purchase history for [email protected]"

Development

bash
# Install dependenciesnpm install
# Buildnpm run build
# Run testsnpm test                    # Unit testsnpm run test:integration    # Integration tests (requires credentials)npm run test:all           # All tests
# Lintnpm run lint

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes with tests
  4. Submit a pull request

API Reference

This server wraps the EDD REST API. See their documentation for detailed endpoint information.

License

GPL-3.0 - see LICENSE for details.

Support

For issues, questions, or suggestions:


Built with 🧡 by Very Good Plugins

Source: README.md at commit 058d5c6

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.1.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts