May la MCP
用于代码搜索和导航的精简、快速的MCP服务器。用Go编写,通过npm安装。
2.7 MB二进制文件。5个工具。即时启动。零依赖。
它做什么
LLM浪费了太多的工具调用来搜索代码。May la修复了这个问题——每个工具每次调用都会返回最大的有用上下文,因此模型在2-3次调用中就能理解你的代码库,而不是7次以上。
工具
info --一次通话中的项目概述
技术栈检测、目录树、文件分发、入口点。一个电话,模型就知道一切在哪里。
read --智能文件读取
读取具有自动结构摘要(函数、类型、导出)的文件。支持批量读取(一次调用多个文件)、行范围和按名称读取特定符号。
search --使用功能级上下文进行搜索
按术语或正则表达式搜索。不是只返回匹配的行,而是返回 整函数 包含比赛。消除了grep-then-read循环。
find --使用元数据进行文件发现
按glob模式查找文件。结果按目录和文件大小分组。尊重 .gitignore.
symbols --代码结构提取
从文件或目录中提取函数、类、类型、接口、方法。支持Go、TypeScript、JavaScript、Python、Java、Rust和C/C++。不需要LSP——使用快速正则表达式提取。
安装
步骤1:安装
npm install -g @alucardeht/may-la-mcp步骤2:添加到您的客户端
克劳德代码:
claude mcp add may-la -- may-la-mcp光标 (~/.cursor/mcp.json):
{
"mcpServers": {
"may-la": {
"command": "may-la-mcp"
}
}
}Gemini CLI:
gemini mcp add may-la -- may-la-mcp其他客户: 指向命令 may-la-mcp.
支持平台
| 操作系统 | 架构 |
|---|---|
| macOS | arm64、amd64 |
| Linux | amd64 |
| Windows | amd64 |
从源代码构建
git clone https://github.com/alucardeht/may-la-mcp.git
cd may-la-mcp
make build
# Binary at bin/mayla需要Go 1.22+。不需要CGO。
验证
# Check binary is installed
ls -lh ~/.mayla/mayla
# Test MCP protocol
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","clientInfo":{"name":"test","version":"1.0"}}}' | may-la-mcp在克劳德代码中: /mcp 应该显示 may-la 在列表中。
建筑
MCP Client (Claude, Cursor, etc.)
↓ stdio
may-la-mcp (Node wrapper)
↓ spawn
mayla (Go binary, 2.7 MB)
↓
5 read-only tools没有守护进程。没有数据库。没有LSP服务器。二进制文件启动,处理stdio上的请求,并在客户端断开连接时退出。
符号提取
基于正则表达式的7种语言提取——无需语言服务器:
| 语言 | 检测到符号 |
|---|---|
| Go | 函数、方法、类型、接口、常量 |
| types/JavaScript | 函数、类、接口、类型、方法、箭头函数 |
| Python | 函数、类、方法 |
| Java | 类、接口、方法 |
| Rust | 函数、方法、结构、特征、枚举、常量 |
| C/C++ | 函数、结构、联合、枚举、定义 |
.gitignore知道
尊重所有工具 .gitignore 跳过常见的垃圾目录(node_modules, vendor, __pycache__, dist, .git等等)。
项目结构
may-la-mcp/
├── cmd/mayla/ # Entry point (stdio MCP server)
├── internal/
│ ├── mcp/ # MCP protocol (JSON-RPC)
│ ├── tools/ # The 5 tools
│ ├── lang/ # Regex symbol extractors (7 languages)
│ ├── gitignore/ # .gitignore parser
│ └── encoding/ # File encoding (UTF-8, UTF-16)
├── pkg/
│ ├── protocol/ # JSON-RPC types
│ └── version/ # Version info
├── npm/ # npm package wrapper
├── scripts/ # Installation scripts
└── Makefile发展
make build # Build binary
make test # Run tests
make install # Install to /usr/local/bin
make fmt # Format code
make lint # Run linter故障排除
may-la-mcp 安装npm后找不到
- npm全局bin目录可能不在PATH中
- 检查:
npm bin -g - 修复:将该目录添加到PATH中
macOS:“无法打开,因为无法验证开发人员”
xattr -d com.apple.quarantine ~/.mayla/mayla安装过程中未下载二进制文件
- 检查网络连接
- 尝试:
npm install -g @alucardeht/may-la-mcp再次 - 手动下载:
许可证
Apache许可证2.0
