Magg
PYPI · MAGG
Aggregates and proxies other MCP servers, letting LLMs discover, add, and manage tools at runtime.
Available components
Last scanned (7 hours ago)
Scores higher than 66% of PyPI servers
Category Developer Tools
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security50
- Malware scan not yet available for this package.Unverified
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- 2 of 52 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (AGPL-3.0-or-later).Pass
- Actively maintained (last published 39 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability86
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 1474 tokens (~81/item across 18 items; 16 tools + 2 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management80
- Stability observed for 24 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (88% of tools); any adoption earns full credit.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "magg_remove_server" implies "remove" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.
- 4 Nov 26 −4
- Stability: pass → 0.77 functional
- 3 Nov 26 −15
- Malware scan: pass → unverified ▼ security
- 31 Oct 26 +15
- Malware scan: unverified → pass ▲ security
- 29 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- 23 Oct 26 +1
- Stability: 0.97 → pass security
- 22 Oct 26 +14
- Malware scan: unverified → pass ▲ security
- Stability: pass → 0.97 functional
- 19 Oct 26 −15
- Malware scan: pass → unverified ▼ security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Analysed pypi/magg@1.2.1
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
| Reason | No attestation published |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 52 packages
| Packages resolved | 52 |
|---|---|
| Stale | 1 |
| No linked repository | 1 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
magg_add_server ~438
Add a new MCP server.
| Name | Type | Req | Description |
|---|---|---|---|
| command | – | – | Full command to run (e.g., 'python server.py', 'npx @playwright/mcp@latest') |
| cwd | – | – | Working directory (for commands) |
| enable | – | – | Whether to enable the server immediately (default: True) |
| env | – | – | Environment variables (dict or JSON string) |
| name | string | yes | Unique server name |
| notes | – | – | Setup notes |
| prefix | – | – | Tool prefix (defaults to conformed server name) |
| source | string | yes | URL of the server package/repository |
| transport | – | – | Transport-specific configuration (dict or JSON string) Common options for all command-based servers: - `keep_alive` (boolean): Keep the process alive between requests (default: true) Python servers… |
| uri | – | – | URI for HTTP servers |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_analyze_servers ~21
Analyze configured servers and provide insights using LLM.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
magg_check ~68
Check health of all mounted servers and handle unresponsive ones.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | Action to take for unresponsive servers: 'report' (default), 'remount', 'unmount', or 'disable' |
| timeout | number | – | Timeout in seconds for health check per server |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_disable_server ~25
Disable a server.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Server name to disable |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_enable_server ~25
Enable a server.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Server name to enable |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_kit_info ~32
Get detailed information about a specific kit.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Kit name to get information about |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_list_kits ~19
List all available kits with their status.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_list_servers ~38
List all configured servers. Unlike the /servers/all resource, this tool also provides the runtime status of each server (mounted or not).
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_load_kit ~37
Load a kit and its servers into the configuration.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Kit name to load (filename without .json) |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_reload_config ~81
Reload configuration from disk and apply changes. This will: 1. Re-read the configuration file 2. Detect changes (added/removed/modified servers) 3. Apply changes by mounting/unmounting servers as needed Note: This operation may briefly interrupt service for affected servers. Config reload can also be triggered via SIGHUP signal on Unix systems.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_remove_server ~25
Remove a server.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Server name to remove |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_search_servers ~44
Search for MCP servers online.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of results to return per search source |
| query | string | yes | Search query for MCP servers |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_smart_configure ~158
Use LLM sampling to intelligently configure and add a server from a URL. This tool performs the complete workflow: 1. Collects metadata about the source URL 2. Uses LLM sampling (if context provided) to generate optimal configuration 3. Automatically adds the server to your configuration Note: This requires an LLM context for intelligent configuration. Without LLM context, it falls back to basic metadata-based heuristics. For generating configuration prompts without sampling, use configure_server_prompt.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_add | boolean | – | Whether to automatically add the server after configuration (default: False) |
| server_name | – | – | Optional server name (auto-generated if not provided) |
| source | string | yes | URL of the server package/repository |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_status ~18
Get basic Magg server status and statistics.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
magg_unload_kit ~35
Unload a kit and optionally its servers from the configuration.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Kit name to unload |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | – | – | – |
| output | – | – | – |
No examples provided.
proxy ~257
Main proxy tool for dynamic access to mounted MCP servers. This tool provides a unified interface for: - Listing available tools, resources, or prompts across servers - Getting detailed info about specific capabilities - Calling tools, reading resources, or getting prompts Annotations are used to provide rich type information for results, which can generally be expected to ultimately include JSON-encoded EmbeddedResource results that can be interpreted by the client.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action to perform: list, info, or call. |
| args | – | – | Arguments for a 'call' action (call tool, read resource, or get prompt). Can be a dict or JSON string. |
| filter_server | – | – | Filter results by server name prefix (for 'list' action only) |
| limit | – | – | Maximum number of items to return (for 'list' action only). Default: 100 |
| offset | – | – | Number of items to skip (for 'list' action only). Default: 0 |
| path | – | – | Name or URI of the specific tool/resource/prompt (with FastMCP prefixing). Not allowed for 'list' and 'info' actions. |
| type | string | yes | Type of MCP capability to interact with: tool, resource, or prompt. |
No output schema declared.
No examples provided.
How do I install the Magg MCP server?
Magg runs locally as a PyPI package, launched with uvx magg. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · magg
claude mcp add sitbon-magg -- uvx magg
What is the Magg MCP server?
Magg is an MCP server listed in the public MCP registry as io.github.sitbon/magg. Aggregates and proxies other MCP servers, letting LLMs discover, add, and manage tools at runtime. This page covers its PyPI package (magg).
Is the Magg MCP server safe to use?
Magg scores 68 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Magg MCP server expose?
Magg exposes 16 tools: proxy, magg_add_server, magg_remove_server, magg_list_servers, magg_enable_server, and 11 more. Their descriptions and schemas cost roughly 1,321 tokens of context every time the server is loaded.
Is the Magg MCP server still maintained?
Magg is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Magg MCP server under?
Magg declares the AGPL-3.0-or-later licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.