ESA MCP Server

Official
by aliyun

ESA MCP Server

ESA MCP Server is an implementation of the Model Context Protocol (MCP) server, designed to facilitate communication between AI models and Edge Security Acceleration (ESA) services. This server acts as a bridge, allowing models to leverage ESA features through a standardized protocol.


English | 中文

Installation

Configure in your MCP-enabled client config:

{  "mcpServers": {    "esa-mcp-server": {      "command": "npx",      "args": ["-y", "mcp-server-esa"],      "env": {        "ESA_ACCESS_KEY_ID": "your AK",        "ESA_ACCESS_KEY_SECRET": "your SK"     }   } } }

Demo Videos

Claude Demo

Cline Demo

Cline configured successfully:

Claude configured successfully:

Features

  • Implements Model Context Protocol for tool execution
  • Provides access to ESA OpenAPI services
  • Runs as a server via stdio for seamless integration with model runners

Tools List

The server provides the following ESA tools callable via the MCP protocol:

Routine Management Tools

routine_create

Create a Routine

ParameterTypeRequiredDescription
namestringYesRoutine name, supports lowercase letters, numbers, and hyphens, must start with a lowercase letter, min 2 chars
descriptionstringNoRoutine description, no spaces allowed
codestringYesRoutine source code, e.g.:export default { async fetch(request) { return handleRequest(request); } }
routine_delete

Delete a Routine

ParameterTypeRequiredDescription
namestringYesName of the Routine to delete
routine_list

List all Routines

No parameters required.

routine_get

Get Routine details

ParameterTypeRequiredDescription
namestringYesName of the Routine to query

Deployment Tools

routine_code_commit

Commit Routine code

ParameterTypeRequiredDescription
namestringYesRoutine name
codestringYesRoutine source code
routine_code_deploy

Deploy Routine code

ParameterTypeRequiredDescription
namestringYesRoutine name
codeVersionstringYesRoutine version, must be valid semver
envstringYesRoutine environment: "production" or "staging"
canaryAreaListarrayNoCanary release areas, must be valid area names (see canary_area_list)
canaryCodeVersionstringNoCanary version, must be valid semver
canary_area_list

List all available canary areas for Routine deployment

No parameters required.

deployment_delete

Delete a deployment

ParameterTypeRequiredDescription
namestringYesDeployment name

Route Management Tools

route_create

Create a route for a Routine

ParameterTypeRequiredDescription
siteIdnumberYesSite ID
modestringYesRoute mode: 'simple' or 'custom'
routestringRequired by modeRoute path (required if mode is 'simple')
rulestringYesRoute rule (required if mode is 'custom')
routineNamestringYesRoutine name
routeNamestringYesRoute name
bypassstringYesBypass: 'on' or 'off' (default 'off')
routeEnablestringYesEnable: 'on' or 'off' (default 'on')
sequencenumberNoRoute sequence (default: current count)
route_update

Update a Routine route

ParameterTypeRequiredDescription
siteIdnumberYesSite ID
configIdnumberYesConfig ID
routeNamestringYesRoute name
routeEnablestringYesEnable: 'on' or 'off'
rulestringYesRoute rule
routineNamestringYesRoutine name
bypassstringYesBypass: 'on' or 'off'
sequencenumberNoRoute sequence
route_delete

Delete a Routine route

ParameterTypeRequiredDescription
siteIdnumberYesSite ID
configIdnumberYesConfig ID
route_get

Get a Routine-related route

ParameterTypeRequiredDescription
siteIdnumberYesSite ID
configIdnumberYesConfig ID
routine_route_list

List all routes of a Routine

ParameterTypeRequiredDescription
routineNamestringYesRoutine name
routeNamestringNoRoute name, used to filter list results
pageNumbernumberNoRoute page number
pageSizenumberNoRoutes per page
site_route_list

List all routes of a site

ParameterTypeRequiredDescription
siteIdnumberYesSite ID
routeNamestringNoRoute name, used to filter list results
pageNumbernumberNoRoute page number
pageSizenumberNoRoutes per page

Record Management Tools

er_record_create

Create a record

ParameterTypeRequiredDescription
namestringYesThe name of the routine
siteIdnumberYesThe ID of the site
recordNamestringYesThe name of the record
er_record_delete

Delete a record

ParameterTypeRequiredDescription
namestringYesThe name of the routine
siteIdnumberYesThe ID of the site
recordNamestringYesThe name of the record
recordIdnumberNoThe ID of the record
er_record_list

List all records

ParameterTypeRequiredDescription
NamestringYesThe name of the routine
PageNumbernumberNoThe page number of the records
PageSizenumberNoThe page size of the records
SearchKeyWordstringNoThe search key word

Site Tools

site_active_list

List all active sites

No parameters required.

site_match

Check which site under the account matches the user input

ParameterTypeRequiredDescription
recordNamestringYesThe name of the site to match
site_dns_type_a_record_create

Create an A record for a site

ParameterTypeRequiredDescription
recordNamestringYesThe name of the DNS record (e.g., subdomain or full domain)
siteIdnumberYesThe ID of the site, obtained from the ListSites operation
dataobjectYesThe data for the DNS record, with value property
data.valuestringYesThe IP address of the A record (e.g., "2.2.2.2")
site_dns_cname_domain_record_create

Create a CNAME domain record for a site

ParameterTypeRequiredDescription
recordNamestringYesThe name of the DNS record (e.g., subdomain or full domain)
siteIdnumberYesThe ID of the site, obtained from the ListSites operation
dataobjectYesThe data for the DNS record, with value property
data.valuestringYesThe domain value for the CNAME record
site_record_list

List all records in a site

ParameterTypeRequiredDescription
SiteIdnumberYesThe ID of the site, obtained from the ListSites operation

Available Scripts

  • npm run build - Build the project using rslib
  • npm run dev - Run build in watch mode for development
  • npm run format - Format code using Prettier
  • npm run lint - Check code using ESLint

Project Structure

  • src/index.ts - Main entry point
  • src/tools/ - ESA tool implementations
  • src/utils/ - Utilities and helpers

License

ISC

Contributions

For Alibaba internal contributors, please follow the standard contribution workflow for the project.

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

An implementation of the Model Context Protocol server that enables AI models to communicate with Edge Security Acceleration (ESA) services, allowing models to manage routines, deployments, routes, records, and sites through standardized protocols.

  1. Installation
    1. Demo Videos
      1. Features
        1. Tools List
          1. Routine Management Tools
          2. Deployment Tools
          3. Route Management Tools
          4. Record Management Tools
          5. Site Tools
        2. Available Scripts
          1. Project Structure
        3. License
          1. Contributions

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that allows AI assistants to interact with Appwrite's API, providing tools to manage databases, users, functions, teams, and other resources within Appwrite projects.
              Last updated -
              84
              29
              Python
              MIT License
              • Linux
              • Apple
            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that provides a comprehensive interface for interacting with the ConnectWise Manage API, simplifying API discovery, execution, and management for both developers and AI assistants.
              Last updated -
              46
              2
              Python
              • Linux
              • Apple
            • A
              security
              F
              license
              A
              quality
              A Model Context Protocol server implementation that provides structured, AI-friendly access to eRegulations data, making it easier for AI models to answer user questions about administrative procedures.
              Last updated -
              4
              28
              TypeScript
              • Linux
              • Apple
            • -
              security
              -
              license
              -
              quality
              A proof of concept implementation of Model Context Protocol server running on Cloudflare's edge network with bearer token authentication, allowing deployed AI models to access tools via serverless architecture.
              Last updated -
              TypeScript

            View all related MCP servers

            ID: nx5ucrxvqa