An extension for Emmett and Emmett55 to build MCP servers.
Note: Emmett-MCP only supports the SSE transport.
from emmett55 import App
from emmett_mcp import MCP, MCPModule
app = App(__name__)
mcp = app.use_extension(MCP)
mcp_server: MCPModule = app.mcp_module(__name__, "mcp", url_prefix="/mcp")
@mcp_server.resource("echo://{message}")
def echo_resource(message: str) -> str:
return f"Resource echo: {message}"
@mcp_server.tool()
def echo_tool(message: str) -> str:
return f"Tool echo: {message}"
@mcp_server.prompt()
def echo_prompt(message: str) -> str:
return f"Please process this message: {message}"
Emmett-MCP is released under BSD license. Check the LICENSE file for more details.