Easy MCP Framework
Absurdly easy Model Context Protocol Servers in Typescript
What is Easy MCP Framework?
Easy MCP Framework is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to absurdly easy model context protocol servers in typescript
Absurdly easy Model Context Protocol Servers in Typescript
This server falls under the Developer Tools category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- Absurdly easy Model Context Protocol Servers in Typescript
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx easyConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Easy MCP Framework
EasyMCP is a TypeScript framework that makes building Model Context Protocol servers dramatically simpler by hiding boilerplate and providing two ergonomic APIs: an Express-like imperative API for explicit configuration, and an experimental decorator-based API that infers types and descriptions automatically. It supports tools, resources, resource templates with handlebars syntax, prompts, roots, and a Context object for logging and progress reporting within tools. Developers use EasyMCP to rapidly prototype and ship custom MCP servers without wrestling with the low-level MCP TypeScript SDK.
Prerequisites
- Bun package manager installed (bun.sh)
- Node.js runtime (for MCP server execution)
- TypeScript knowledge (decorators require enabling experimentalDecorators in tsconfig)
- An MCP-compatible client such as Claude Desktop or Claude Code to test your server
Install EasyMCP in your project
EasyMCP uses Bun as its package manager. Initialize a new project or add it to an existing one.
bun add easy-mcp
# or from source
git clone https://github.com/zcaceres/easy-mcp
cd easy-mcp && bun installCreate a server with the Express-like API
Use EasyMCP.create() to initialize a server, then register tools, resources, and prompts with explicit configuration. Call mcp.serve() to start listening for MCP connections.
import EasyMCP from 'easy-mcp';
const mcp = EasyMCP.create('my-server', { version: '0.1.0' });
mcp.tool({
name: 'greet',
description: 'Greets a person by name',
inputs: [{ name: 'name', type: 'string', required: true }],
fn: async ({ name }) => `Hello, ${name}!`
});
mcp.resource({
uri: 'info://server',
name: 'Server Info',
fn: async () => 'This is my EasyMCP server'
});
mcp.serve();Use the decorator API (experimental)
For even less boilerplate, extend the EasyMCP class and use @Tool and @Resource decorators. EasyMCP infers types and descriptions from the method signatures and docstrings.
import EasyMCP, { Tool, Resource, Context } from 'easy-mcp';
class MyServer extends EasyMCP {
@Tool({ description: 'Greets a person' })
greet(name: string, context: Context) {
context.info(`Greeting ${name}`);
return `Hello, ${name}!`;
}
@Resource('greeting/{name}')
getGreeting(name: string) {
return `Hello, ${name}!`;
}
}
new MyServer('my-server', { version: '0.1.0' }).serve();Enable experimental decorators in tsconfig
The decorator API requires TypeScript decorator support. Add the following to your tsconfig.json.
{
"compilerOptions": {
"experimentalDecorators": true,
"emitDecoratorMetadata": true
}
}Register your server with an MCP client
Add your built server to Claude Desktop or Claude Code so you can test the tools and resources you defined.
{
"mcpServers": {
"my-easy-mcp-server": {
"command": "node",
"args": ["dist/server.js"]
}
}
}Easy MCP Framework Examples
Client configuration (Claude Desktop)
Register a compiled EasyMCP server with Claude Desktop. Build your TypeScript server first with `bun run build` or `tsc`.
{
"mcpServers": {
"my-easy-mcp-server": {
"command": "node",
"args": ["/absolute/path/to/your/dist/server.js"]
}
}
}Prompts to try
After registering your EasyMCP server, test the tools and resources you defined with these example interactions.
- "Call the greet tool with name: Alice"
- "Read the resource at info://server"
- "List all available tools on this server"
- "Use the weather tool to check the forecast for New York" (after defining a weather tool)
- "Access the greeting resource for the name Bob"Troubleshooting Easy MCP Framework
Decorators cause TypeScript compile errors ('Unable to resolve signature of class decorator')
Add `"experimentalDecorators": true` and `"emitDecoratorMetadata": true` to your tsconfig.json compilerOptions. The decorator API is explicitly experimental — use the Express-like API for production servers where stability is required.
mcp.serve() exits immediately without error
Ensure you have at least one tool, resource, or prompt registered before calling serve(). Also verify that Bun or Node.js has permission to bind to the stdio transport. Check that no other process is using the same server name.
Resource templates with handlebars syntax return undefined
Resource template URIs use {param} syntax (e.g., `greeting/{name}`). Ensure your template function parameter names exactly match the placeholders in the URI. The function receives an object with the captured values, not positional arguments.
Frequently Asked Questions about Easy MCP Framework
What is Easy MCP Framework?
Easy MCP Framework is a Model Context Protocol (MCP) server that absurdly easy model context protocol servers in typescript It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Easy MCP Framework?
Follow the installation instructions on the Easy MCP Framework GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with Easy MCP Framework?
Easy MCP Framework works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Easy MCP Framework free to use?
Yes, Easy MCP Framework is open source and available under the MIT license. You can use it freely in both personal and commercial projects.
Easy MCP Framework Alternatives — Similar Developer Tools Servers
Looking for alternatives to Easy MCP Framework? Here are other popular developer tools servers you can use with Claude, Cursor, and VS Code.
Ecc
★ 188.2kThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Javaguide
★ 155.8kJava 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Gemini CLI
★ 104.5kA secure MCP server that wraps the Google Gemini CLI, allowing clients to query Gemini models using local OAuth sessions without requiring an API key. It provides tools for model interaction and diagnostics with built-in protection against command in
Awesome MCP Servers
★ 87.3k⭐ Curated list of Model Context Protocol (MCP) servers - tools that extend Claude Desktop, Cursor, Windsurf, and other MCP clients with custom capabilities.
MCP Servers
★ 86.0kModel Context Protocol Servers
CC Switch
★ 77.5kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io
Browse More Developer Tools MCP Servers
Explore all developer tools servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Easy MCP Framework in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Easy MCP Framework?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.