返回 MCP 目录
public公开dns本地运行

emacs-mcp-server

Emacs的MCP服务,支持生成和执行elisp代码

article

README

🚀 Emacs MCP 服务器

Emacs MCP 服务器基于模型上下文协议(MCP),专为 Emacs 打造。它具备强大的功能,能够生成 Elisp 代码,并在运行中的 Emacs 进程里执行这些代码,为用户带来高效便捷的使用体验。

✨ 主要特性

该服务器公开了两个实用工具:

  • generate_emacs_lisp_code:可针对给定任务生成相应的 Elisp 代码。
  • execute_emacs_lisp_code:借助emacsclient,将 Elisp 代码传递到正在运行的 Emacs 中进行评估和执行。

📦 安装指南

该项目使用uv进行管理,安装步骤如下:

  1. 运行uv sync,安装所有依赖项。
  2. 执行source .venv/bin/activate,激活生成的虚拟环境。

💻 使用示例

基础用法

要在检查器中运行 MCP 服务器,可使用以下命令:

mcp dev emacs_mcp_server.py

高级用法

若要将 MCP 服务器安装为 Claude Desktop 可用,可使用以下命令:

mcp install emacs_mcp_server.py

不过,你必须编辑生成的 JSON 配置文件claude_desktop_config.json,以包含 API 密钥和emacsclient的完整路径。配置文件示例如下:

    "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"
      }
    }
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端