关于 Arm MCP Server
Arm MCP Server 为 AI 助手提供 Arm 架构开发、迁移和优化工具及参考信息,涵盖文档搜索、代码兼容性扫描、容器镜像架构检查和汇编性能分析。
主要功能
- 01搜索 Arm 文档和兼容性信息
- 02扫描代码的 Arm 迁移兼容性
- 03检查 Docker 镜像的架构支持
- 04使用 LLVM-MCA 分析汇编性能
适用场景
- 01查找 Arm 文档或内建函数指南
- 02评估代码库从 x86 迁移到 Arm 的情况
- 03检查容器镜像支持的架构
- 04分析汇编代码性能
MCP 相关
向 MCP 客户端提供 Arm 专用搜索、迁移分析、容器架构检查和汇编分析工具。该服务以 Docker 镜像运行,并配置在兼容 MCP 的客户端中。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Arm MCP 服务
一个 MCP 服务,为 AI 助手提供 Arm 架构开发、迁移和优化所需的工具与知识。
使用 Arm MCP 服务
如果您的目标是尽快将应用从 x86 迁移到 Arm,请从这里开始:
使用 Arm MCP 服务自动完成 x86 到 Arm 的应用迁移
功能
此 MCP 服务为 AI 助手提供 Arm 开发专用工具:
- 知识库搜索:对 Arm 文档、学习资源、内建函数和软件兼容性信息进行语义搜索
- 代码迁移分析:使用 migrate-ease 扫描代码库以检查 Arm 兼容性(支持 C++、Python、Go、JavaScript、Java)
- 容器架构检查:使用集成的 Skopeo 和 check-image 工具检查 Docker 镜像的架构支持情况。
- 汇编性能分析:使用 LLVM-MCA 分析汇编代码性能
预构建镜像
如果您想使用预构建的多架构镜像,可在 Docker Hub 找到官方镜像:armlimited/arm-mcp:latest
前置条件
- 支持 Buildx 的 Docker
- 兼容 MCP 的 AI 助手客户端(例如 GitHub Copilot、Kiro CLI、Codex CLI、Claude Code 等)
快速开始
1. 构建 Docker 镜像
在此仓库的根目录下:
docker buildx build -f mcp-local/Dockerfile -t armlimited/arm-mcp . --load
此命令会针对 Docker 主机的原生架构进行构建。发布工作流负责显式的多架构构建。
如需本地开发构建,请参阅 CONTRIBUTING.md 中的“快速本地开发构建”部分。
2. 配置 MCP 客户端
选择与您的 MCP 客户端对应的配置:
Claude Code
将以下内容添加到项目中的 .mcp.json:
{
"mcpServers": {
"arm-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--pull=always",
"-v", "/path/to/your/workspace:/workspace",
"armlimited/arm-mcp"
]
}
}
}
GitHub Copilot(VS Code)
将以下内容添加到项目中的 .vscode/mcp.json,或全局添加到 ~/Library/Application Support/Code/User/mcp.json(macOS):
{
"servers": {
"arm-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--pull=always",
"-v", "/path/to/your/workspace:/workspace",
"armlimited/arm-mcp"
]
}
}
}
在 VS Code 中打开此文件进行编辑的最简单方法是按 command+shift+p 并搜索
MCP: Open User Configuration
AWS Kiro CLI
添加到 ~/.kiro/settings/mcp.json:
{
"mcpServers": {
"arm-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--pull=always",
"-v", "/path/to/your/workspace:/workspace",
"armlimited/arm-mcp"
],
"timeout": 60000
}
}
}
Gemini CLI
建议使用项目本地配置文件,以确保挂载相关工作区。
将以下内容添加到项目根目录中的 .gemini/settings.json:
{
"mcpServers": {
"arm-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"--pull=always",
"-v", "/path/to/your/workspace:/workspace",
"armlimited/arm-mcp"
]
}
}
}
使用 TOML 格式的 MCP 客户端(例如 Codex CLI)
[mcp_servers.arm-mcp]
command = "docker"
args = [
"run",
"--rm",
"-i",
"--pull=always",
"-v", "/path/to/your/workspace:/workspace",
"armlimited/arm-mcp"
]
注意:将 /path/to/your/workspace 替换为您希望 MCP 服务访问的项目目录的实际路径。
3. 重启 MCP 客户端
更新配置后,重启 MCP 客户端以加载 Arm MCP 服务。
日志记录
根据使用情况,服务可能会在 /workspace 下写入两个日志文件。使用上述配置示例时,这些文件会出现在您计算机上的项目目录中:
mcp-traffic.jsonl记录工具的使用情况、提供的输入,以及每次工具调用的原因。它还会记录知识库搜索结果。error_logging.yaml记录服务遇到的错误详情。这些信息有助于排查问题。
这些日志可能包含您项目和工具请求中的信息。分享前请检查其内容。
开发与贡献
请参阅 CONTRIBUTING.md,了解仓库结构、集成测试、可复现的构建输入、运行时出站流量验证、依赖项更新和发布工作流。
故障排除
访问容器 Shell
要调试或探索容器环境:
docker run --rm -it --entrypoint /bin/bash armlimited/arm-mcp
常见问题
- 迁移扫描期间超时:在 MCP 客户端配置中增大
timeout值(例如,"timeout": 120000表示 2 分钟) - 工作区为空:确保卷挂载路径正确,且目录存在
- 架构不匹配:确认本地镜像与 Docker 主机的原生架构一致;如需明确指定跨平台构建,请使用发布工作流。
请勿在公开问题中报告疑似漏洞。请参阅 Arm MCP 安全策略,并通过 Arm PSIRT 报告。
许可证
版权所有 © 2026,Arm Limited 和贡献者。保留所有权利。
根据 Apache License, Version 2.0 许可。详情请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。