MTA:SA文档MCP服务器
MCP(模型上下文协议)服务器, 结构化访问《Multi-Theft Auto:San Andreas》文档。
它结合了快速关键字搜索、语义匹配和SQLite支持的缓存,因此 代理可以发现正确的API并获取权威文档,而无需手动 维基抓取。
亮点
- 11个MCP工具,用于发现、文档检索、缓存操作和工作流
指导
- 事件优先发现(
search_events,find_events_for_task) - 基于SQLite向量搜索的语义任务匹配
- 智能关键字扩展(例如,
database->db*API) - 内置弃用检测和警告
- 具有可配置生存期的本地SQLite缓存
- CI验证门、烟雾测试和发布自动化
安装
要求:
- Node.js 24+
- Bun 1.3+(可选运行时)
- pnpm 10+(用于当地发展)
启动器说明:
- 您可以通过以下方式启动/安装
npx,pnpx,bunx,或纱线dlx风格的流动。 - 运行时支持跨运行时:Node.js(通过
node:sqlite)和Bun(通过bun:sqlite).
来自npm(推荐)
npm install -g mtasa-docs-mcp或者:
pnpm add -g mtasa-docs-mcp快速安装

来源
git clone https://github.com/Luminaire1337/mtasa-docs-mcp.git
cd mtasa-docs-mcp
pnpm install
pnpm build如果您的环境跳过可选的本机依赖关系,请运行:
pnpm install --forceMCP客户端设置
光标(手动)
全球的: ~/.cursor/mcp.json
项目: .cursor/mcp.json
{
"mcpServers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}VS代码(手动)
工作区: .vscode/mcp.json
用户:命令面板-> MCP: Open User Configuration
{
"servers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}或者从终端添加:
code --add-mcp "{\"name\":\"mtasa-docs\",\"command\":\"npx\",\"args\":[\"-y\",\"mtasa-docs-mcp\"]}"克劳德代码(CLI)
claude mcp add-json mtasa-docs '{"type":"stdio","command":"npx","args":["-y","mtasa-docs-mcp"]}'OpenCode(手动)
全局配置文件: ~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mtasa-docs": {
"type": "local",
"command": ["npx", "-y", "mtasa-docs-mcp"],
"enabled": true
}
}
}反重力(手动)
配置文件: ~/.gemini/antigravity/mcp_config.json
{
"mcpServers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}通用MCP客户端(手动)
{
"mcpServers": {
"mtasa-docs": {
"command": "node",
"args": ["/absolute/path/to/mtasa-docs-mcp/build/index.js"]
}
}
}如果 mtasa-docs-mcp 已发布,请将该命令替换为:
{
"mcpServers": {
"mtasa-docs": {
"command": "npx",
"args": ["-y", "mtasa-docs-mcp"]
}
}
}可用工具
search_functionssearch_eventsfind_functions_for_taskfind_events_for_taskget_function_docsget_multiple_function_docsget_function_exampleslist_functions_by_categoryget_cache_statsrecommend_doc_workflowclear_cache
发展
pnpm build
pnpm test
pnpm test:runtime
pnpm smoke
pnpm smoke:cross-runtime
pnpm verify
pnpm verify:full有用的检查:
pnpm check:versions-保持package.json与MCP服务器版本对齐pnpm check:changelog-确保CHANGELOG.md具有当前版本标题pnpm check:tool-names-防止遗留工具命名回归pnpm test:runtime-对Node和Bun烟雾路径运行集成运行时测试pnpm smoke:cross-runtime-对Node和Bun运行时运行烟雾检查
脚本位于 scripts/ (建造、吸烟、释放警卫)。
释放流量
发布自动化由以下人员处理 .github/workflows/release.yml.
- 凹凸版本
package.json和src/index.ts. - 从以下位置移动发行说明
Unreleased进入中的版本化部分
CHANGELOG.md 使用 ## [x.y.z] - YYYY-MM-DD.
- 创建并推送发布标签:
git tag v && git push origin v.
分支策略:
- 之前
v1.0.0:直接推送master是允许的。 - 开始于
v1.0.0:使用基于PR的开发进行所有更改master.
发布标签推送(v*.*.*),发布工作流程:
- 检查npm上是否已存在该版本
- 跑
pnpm verify:full - 使用可信发布(OIDC)将源代码发布到npm
- 发布
server.json使用GitHub OIDC访问MCP注册表 - 从以下位置创建/更新GitHub版本
CHANGELOG.md - 验证已发布包的可安装性并运行冒烟测试
npm可信发布的维护设置
在npm包设置中,为此存储库配置一个受信任的发布者,然后 工作流:
- 存储库:
Luminaire1337/mtasa-docs-mcp - 工作流文件:
.github/workflows/release.yml - 环境(如果使用):匹配您的GitHub Actions配置
MCP注册表发布的维护程序设置
- 确保
server.json存在于存储库根目录,并使用以下包名:
mtasa-docs-mcp
- 为配置MCP注册表所有权
io.github.Luminaire1337/mtasa-docs-mcp
- 发布工作流使用
mcp-publisher login github-oidc仅发布
当npm发布门通过时
CI工作流
.github/workflows/ci.yml-推送/PR验证master(Ubuntu+
macOS)和可选的标记PR上的实时wiki集成测试
.github/workflows/release.yml-自动发布和GitHub发布
释放标签(v*.*.*)
项目文档
AGENTS.md-架构和贡献者指南FEATURES.md-路线图和想法CHANGELOG.md-发布历史记录SECURITY.md-漏洞披露政策
许可证
GNU通用公共许可证v3.0。看 LICENSE.
