About Esa SDK
Esa SDK is an MCP server published by aliyun in the Developer Tools category: mCP server: Esa SDK. It has been installed 0 times through Conduid.
The repository has 4 stars and 0 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues (0) before depending on it in production.
Install
npx esa-sdkThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Esa SDK
Powered by Claude · Grounded in docs
Security checks
- ·README presentNot checked yet.
- ·License declaredNot checked yet.
- ·Tests presentNot checked yet.
- ·Dependencies pinnedNot checked yet.
- ·No dynamic code executionNot checked yet.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
README
ESA SDK
Deploy stateless MCP Servers on ESA Edge Routine (ER).
Features
- Enables deployment of stateless MCP Servers on ESA Edge Routine.
- Simplifies integration with Model Context Protocol (MCP) for edge computing.
- Supports streamlined request handling for tools and server operations.
Installation
Install the npm:
npm install esa-sdk
Usage Example
Below is an example of a simple MCP Server implementing a basic addition calculator:
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import {
CallToolRequestSchema,
ListToolsRequestSchema,
} from "@modelcontextprotocol/sdk/types.js";
import { StreamableHTTPEdgeServerTransport } from "esa-sdk/mcp.js";
const server = new Server(
{
name: "example-server",
version: "1.0.0",
},
{
capabilities: {
tools: {},
},
}
);
// Define available tools
server.setRequestHandler(ListToolsRequestSchema, async () => {
return {
tools: [
{
name: "calculate_sum",
description: "Add two numbers together",
inputSchema: {
type: "object",
properties: {
a: { type: "number" },
b: { type: "number" },
},
required: ["a", "b"],
},
},
],
};
});
// Handle tool execution
server.setRequestHandler(CallToolRequestSchema, async (request) => {
if (request.params.name === "calculate_sum") {
const { a, b } = request.params.arguments;
return {
content: [
{
type: "text",
text: String(a + b),
},
],
};
}
throw new Error("Tool not found");
});
export default {
async fetch(request, ctx) {
const url = new URL(request.url);
const path = url.pathname;
if (path === "/mcp") {
const transport = new StreamableHTTPEdgeServerTransport();
await server.connect(transport);
return transport.handleRequest(request, ctx);
} else {
return new Response("Error pathname", { status: 404 });
}
},
};
Contributing
We welcome contributions from the community! Here’s how you can help:
- Examples
- Feature Suggestions
- Bug Fixes
To contribute, please fork the repository, make your changes, and submit a pull request. For major changes, open an issue first to discuss your ideas.
License
MIT License.
README mirrored from the source repository 4 months ago. The original is authoritative.