Emacs Lisp Generator
STDIOMCP server for generating and running elisp code in Emacs process.
MCP server for generating and running elisp code in Emacs process.
Model Context Protocol (MCP) server for Emacs. Enables generating and running elisp code in a running Emacs process.
The server exposes two tools:
generate_emacs_lisp_code
: generates elisp for a given taskexecute_emacs_lisp_code
: passes elisp to a running Emacs (via emacsclient
) to eval and execute it.The project is managed with uv
. First, run uv sync
to install all dependencies. Then source .venv/bin/activate
to activate the resulting venv.
To run the MCP server in the inspector:
mcp dev emacs_mcp_server.py
To install the MCP server so that Claude Desktop can use it:
mcp install emacs_mcp_server.py
But you will have to edit the resulting JSON config in claude_desktop_config.json
to include API keys and the full path to emacsclient
. It should look something like this:
"Emacs-MCP-Server": { "command": "/Users/haldar/.local/bin/uv", "args": [ "run", "--with", "mcp[cli]", "--with", "smartfunc", "mcp", "run", "/Users/haldar/repos/gh/emacs-mcp-server/emacs_mcp_server.py" ], "env": { "OPENAI_API_KEY": "sk-xxxx", "EMACSCLIENT": "/your/path/to/emacsclient" } }