Server data from the Official MCP Registry
Official Arm MCP server for code migration, optimization, and Arm architecture guidance
Official Arm MCP server for code migration, optimization, and Arm architecture guidance
This Arm MCP server provides specialized tools for ARM architecture development. The code is well-structured with proper error handling and appropriate permissions for its purpose as a developer tool server. Some minor code quality concerns exist around broad exception handling and documentation extraction patterns. Supply chain analysis found 22 known vulnerabilities in dependencies (5 critical, 6 high severity).
5 files analyzed · 25 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-arm-arm-mcp": {
"args": [
"-y",
"github:arm/mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
An MCP server providing AI assistants with tools and knowledge for Arm architecture development, migration, and optimization.
If your goal is to migrate an application from x86 to Arm as quickly as possible, start here:
Automate x86-to-Arm application migration using Arm MCP Server
This MCP server equips AI assistants with specialized tools for Arm development:
If you would prefer to use a pre-built, multi-arch image, the official image can be found in Docker Hub here: armlimited/arm-mcp:latest
From the root of this repository:
docker buildx build --platform linux/arm64,linux/amd64 -f mcp-local/Dockerfile -t armlimited/arm-mcp .
For a single-platform build (faster):
docker buildx build -f mcp-local/Dockerfile -t armlimited/arm-mcp . --load
Choose the configuration that matches your MCP client:
The examples below include the optional Docker arguments required for Arm Performix. These SSH-related settings are only needed when you want the MCP server to run remote commands on a target device through Arm Performix. If you are not using Arm Performix, you can omit the SSH -v lines.
Add to .mcp.json in your project:
{
"mcpServers": {
"arm-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v", "/path/to/your/workspace:/workspace",
"-v", "/path/to/your/ssh/private_key:/run/keys/ssh-key.pem:ro",
"-v", "/path/to/your/ssh/known_hosts:/run/keys/known_hosts:ro",
"armlimited/arm-mcp"
]
}
}
}
Add to .vscode/mcp.json in your project, or globally at ~/Library/Application Support/Code/User/mcp.json (macOS):
{
"servers": {
"arm-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v", "/path/to/your/workspace:/workspace",
"-v", "/path/to/your/ssh/private_key:/run/keys/ssh-key.pem:ro",
"-v", "/path/to/your/ssh/known_hosts:/run/keys/known_hosts:ro",
"armlimited/arm-mcp"
]
}
}
}
The easiest way to open this file in VS Code for editing is command+shift+p and search for
MCP: Open User Configuration
Add to ~/.kiro/settings/mcp.json:
{
"mcpServers": {
"arm-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v", "/path/to/your/workspace:/workspace",
"-v", "/path/to/your/ssh/private_key:/run/keys/ssh-key.pem:ro",
"-v", "/path/to/your/ssh/known_hosts:/run/keys/known_hosts:ro",
"armlimited/arm-mcp"
],
"timeout": 60000
}
}
}
It is recommended to use a project-local configuration file to ensure the relevant workspace is mounted.
Add to .gemini/settings.json in your project root:
{
"mcpServers": {
"arm-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-v", "/path/to/your/workspace:/workspace",
"-v", "/path/to/your/ssh/private_key:/run/keys/ssh-key.pem:ro",
"-v", "/path/to/your/ssh/known_hosts:/run/keys/known_hosts:ro",
"armlimited/arm-mcp"
]
}
}
}
[mcp_servers.arm-mcp]
command = "docker"
args = [
"run",
"--rm",
"-i",
"-v", "/path/to/your/workspace:/workspace",
"-v", "/path/to/your/ssh/private_key:/run/keys/ssh-key.pem:ro",
"-v", "/path/to/your/ssh/known_hosts:/run/keys/known_hosts:ro",
"armlimited/arm-mcp"
]
Note: Replace /path/to/your/workspace with the actual path to your project directory that you want the MCP server to access. If you are enabling Arm Performix, also replace the /path/to/your/ssh/private_key and /path/to/your/ssh/known_hosts paths with your local files. The MCP container auto-discovers files mounted under /run/keys, as shown in the configs above.
After updating the configuration, restart your MCP client to load the Arm MCP server.
mcp-local/: The MCP server implementation
server.py: Main FastMCP server with tool definitionsutils/: Helper modules for each tooldata/: Pre-built knowledge base (embeddings and metadata)Dockerfile: Multi-stage Docker buildembedding-generation/: Scripts for regenerating the knowledge base from source documentspip install -r tests/requirements.txt within the mcp_local directory.python -m pytest -s tests/test_mcp.pyTo debug or explore the container environment:
docker run --rm -it --entrypoint /bin/bash armlimited/arm-mcp
timeout value in your MCP client configuration (e.g., "timeout": 120000 for 2 minutes)--platform linux/amd64 or --platform linux/arm64Contributions are welcome! Please feel free to submit issues or pull requests.
When contributing:
Copyright © 2025, Arm Limited and Contributors. All rights reserved.
Licensed under the Apache License, Version 2.0. See LICENSE for details.
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.