mcp
mcp
Fail
Health Pass
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 21 GitHub stars
Code Fail
- rm -rf — Recursive force deletion command in examples/clients/ping/package.json
- process.env — Environment variable access in examples/clients/ping/src/index.ts
- rm -rf — Recursive force deletion command in examples/clients/sse/package.json
- process.env — Environment variable access in examples/clients/sse/src/index.ts
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
A fetch API based TypeScript SDK for MCP
README.md

@zuplo/mcp
A fetch API based, remote server first, TypeScript SDK for MCP.
About
·
Documentation
·
Contributing
@zuplo/mcp is a stateless, remote server first MCP SDK that aims to be "minimum common API" compliant as defined by the WinterTC.
It uses the fetch APIs and is intended to work out of the box on Zuplo, Node, Deno, Workerd, etc.
📝 Documentation
Quickstart
- Create an MCP server:
const server = new MCPServer({
name: "Example Server",
version: "1.0.0",
});
- Add some tools:
server.addTool({
name: "add",
description: "Adds two numbers together and returns the result.",
validator: new ZodValidator(
z.object({
a: z.number().describe("First number"),
b: z.number().describe("Second number"),
}),
),
handler: async ({ a, b }) => ({
content: [{ type: "text", text: String(a + b) }],
isError: false,
}),
});
- Wire up your MCP server with a transport:
const transport = new HTTPStreamableTransport();
await transport.connect();
server.withTransport(transport);
- Handle a
Request:
const response = await transport.handleRequest(httpRequest);
🤝 Contributing
See the CONTRIBUTING.md for further details.
Attributions
Inspired by, with MIT Licensed attributions to, the official modelcontextprotocol/typescript-sdk
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found