MCP Directory

How to add ENCODE Toolkit to Windsurf

Search ENCODE, cross-reference 14 genomics databases, run analysis pipelines, and generate publication-ready methods from natural language. Paste the config into ~/.codeium/windsurf/mcp_config.json and restart Windsurf.

Last updated June 14, 2026 · 35 · stdio · no auth

Windsurf config for ENCODE Toolkit

claude mcp add encode -- uvx encode-toolkit
{
  "mcpServers": {
    "encode-toolkit": {
      "command": "uvx",
      "args": [
        "encode-toolkit"
      ]
    }
  }
}

Requires `uv` (the Python package runner). Install it from https://docs.astral.sh/uv/ if `uvx` is not found.

Setup steps

  1. 1Open Windsurf → Cascade → the hammer/MCP icon → Configure (or edit ~/.codeium/windsurf/mcp_config.json).
  2. 2Paste the ENCODE Toolkit config below.
  3. 3Fill in placeholder secrets, then save.
  4. 4Click Refresh in the MCP panel.
  5. 5ENCODE Toolkit's tools become available to Cascade.

Before you start

  • uvx (from uv) or Node.js/npx, or pip — to run the encode-toolkit package
  • An MCP-compatible client (Claude Code, Claude Desktop, Cursor, Windsurf, or VS Code)
  • Optional: ENCODE account access keys for restricted/unreleased data

What ENCODE Toolkit can do in Windsurf

encode_search_experiments

Search ENCODE experiments with 20+ filters (assay title, organism, organ, biosample type, target, biosample term name, limit).

encode_get_experiment

Get full details for a single experiment by accession, including all files, quality metrics, and audit info.

encode_download_files

Download specific files by accession to a local directory, with organization options and optional MD5 verification.

encode_batch_download

Search and download in one step; runs in preview (dry_run) mode by default until disabled.

encode_track_experiment

Track an experiment locally along with its publications, methods, and pipeline info.

encode_list_files

List files for a specific experiment with format, output type, assembly, and preferred-default filters.

encode_search_files

Search files across all experiments combining experiment-level and file-level filters.

encode_get_metadata

List valid filter values for any parameter (assays, organisms, organs, biosample types, file formats, output types, assemblies).

Security

100% local execution with no telemetry or analytics. Optional ENCODE credentials for restricted/unreleased data are encrypted at rest via the OS keyring (macOS Keychain, Linux Secret Service, Windows Credential Locker) with a Fernet fallback. Certificate verification is enforced (no verify=False), downloads are MD5-verified by default, and requests are rate limited to ENCODE's 10 req/sec policy. No data leaves the machine except queries to public APIs over HTTPS.

ENCODE Toolkit + Windsurf FAQ

Where is the Windsurf config file?

Windsurf reads MCP servers from ~/.codeium/windsurf/mcp_config.json. Paste the ENCODE Toolkit config there under the "mcpServers" key and restart the client.

Is ENCODE Toolkit safe to use with Windsurf?

100% local execution with no telemetry or analytics. Optional ENCODE credentials for restricted/unreleased data are encrypted at rest via the OS keyring (macOS Keychain, Linux Secret Service, Windows Credential Locker) with a Fernet fallback. Certificate verification is enforced (no verify=False), downloads are MD5-verified by default, and requests are rate limited to ENCODE's 10 req/sec policy. No data leaves the machine except queries to public APIs over HTTPS.

Do I need ENCODE credentials to use it?

No. Most ENCODE data is public and requires no authentication. Credentials are only needed for restricted or unreleased data; when provided they are encrypted at rest in your OS keyring.

Can I install just the MCP server without the skills?

Yes. Run `claude mcp add encode -- uvx encode-toolkit` (or use npx/pip) to install only the 20 MCP tools. The 47 workflow skills and 7 pipelines come with the Claude Code plugin install.

Is it affiliated with the ENCODE Consortium?

No. It is an independent open-source toolkit by Dr. Alex M. Mawla that accesses the public ENCODE Project API; it is not an official ENCODE Consortium product.

View repo Full ENCODE Toolkit page