avm-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@avm-mcp-serversearch for key vault modules"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐๏ธ avm-mcp-server
MCP Server for discovering and exploring Azure Verified Modules (AVM) from the Bicep Public Registry.
๐ฏ Overview
This MCP server enables AI agents and tools to search, discover, and retrieve detailed information about Azure Verified Modules (AVM) via the Model Context Protocol (MCP). It connects directly to the Microsoft Container Registry (MCR) and GitHub to provide up-to-date module information, versions, parameters, and usage examples.
Related MCP server: MCPfinder
โ Why AVM MCP Server?
Azure Verified Modules (AVM) are a collection of standardized, validated, and well-documented Infrastructure as Code (IaC) modules for deploying Azure resources using Bicep. However, discovering the right module and understanding its parameters can be challenging:
Discovery Challenge: With hundreds of AVM modules available, finding the right module for your use case requires searching through documentation
Parameter Complexity: Each module has numerous parameters with specific requirements and defaults
Version Management: Keeping track of module versions and updates across the registry
Documentation Access: Module documentation is scattered across GitHub repositories
This MCP server solves these challenges by:
Providing fast, intelligent search across all AVM modules
Retrieving module versions directly from the registry
Extracting detailed parameter information and usage examples
Enabling AI agents to help you find and use the right modules
Comparison with Microsoft Bicep MCP Server
Microsoft provides an official Bicep MCP Server that includes a ListAvmMetadata tool. So why create a separate AVM MCP Server?
Key Differences
Feature | Microsoft Bicep MCP Server | AVM MCP Server (This Project) |
Primary Focus | Bicep language tools & Azure resource schemas | AVM module discovery & documentation |
AVM Module Search | Lists all modules (no filtering) | Intelligent search with multiple query formats |
Module Details | Basic metadata (name, description, versions) | Deep documentation extraction (parameters, resource types, examples) |
Installation | Requires .NET runtime & Bicep CLI | Lightweight Python with minimal dependencies |
Response Format | Newline-separated text summary | Structured JSON with rich metadata |
Documentation Access | External links only | Extracted and formatted markdown from module READMs |
Why This Server Exists
While the official Bicep MCP Server is excellent for authoring Bicep templates and accessing Azure resource type schemas, it provides limited functionality for discovering and understanding AVM modules:
No Search Capability: The
ListAvmMetadatatool returns ALL modules without filtering, making it difficult to find relevant modules when there are hundreds available. This server provides intelligent search that handles variations like "key vault", "key-vault", and "keyvault".Limited Documentation: The official tool provides only basic metadata (name, description, versions, documentation URI). This server extracts the actual documentation content including:
Complete parameter reference with types and descriptions
Resource types deployed by the module
Real-world usage examples with large parameter sets
Different Use Cases:
Use Bicep MCP Server when: Writing Bicep code, checking Azure resource schemas, following Bicep best practices
Use AVM MCP Server when: Discovering which AVM module to use, understanding module parameters, exploring module capabilities
Complementary Tools: These servers can work together! Use the Bicep MCP Server for template authoring and this server for module discovery and documentation.
When to Use Each
Choose Microsoft Bicep MCP Server if you need:
Bicep authoring best practices
Azure resource type schemas and API versions
Comprehensive Bicep ecosystem tools
Choose AVM MCP Server if you need:
Find AVM modules for specific Azure services
Understand module parameters before using them
Extract usage examples and documentation
Quick filtered search across the AVM catalog
Use both servers together for a complete Bicep + AVM development experience!
๐ ๏ธ Features
Search AVM Modules: Intelligent search supporting multiple query formats (e.g., "key vault", "key-vault", "keyvault")
List Module Versions: Retrieve all available versions for any AVM module
Module Details: Extract resource types, parameters, and usage examples from module documentation
Fast Filtering: Optimized search that quickly narrows down results from thousands of repositories
Direct Registry Access: Connects to Microsoft Container Registry for real-time module information
๐ Prerequisites
Python 3.11 or higher
UV package manager
Internet connectivity (to access Microsoft Container Registry and GitHub)
Node.js and npm (for MCP inspector tools, optional)
1. Python
Official Download Page:
https://www.python.org/downloads/Direct Download for Python 3.11.14:
Python 3.11.14 Release PageDownload the installer for your OS (Windows, macOS, Linux) and follow the setup instructions.
2. UV (Python Package Manager)
Official Documentation & Source:
https://github.com/astral-sh/uv
UV DocumentationInstallation (Windows):
irm https://astral.sh/uv/install.ps1 | iexOr, using pip (if you already have Python and pip installed):
pip install uvInstallation (macOS/Linux):
curl -LsSf https://astral.sh/uv/install.sh | shMore Info:
UV Installation Guide
3. Claude Desktop (Optional)
Official Download Page:
https://claude.ai/downloadDownload the installer for your OS (Windows, macOS) and follow the setup instructions.
๐ Installation
Clone the repository:
git clone https://github.com/stefanstranger/avm-mcp-server.git cd avm-mcp-serverCreate a virtual environment:
uv venv .venv --python 3.13Activate the virtual environment:
Windows PowerShell:
.\.venv\Scripts\Activate.ps1macOS/Linux:
source .venv/bin/activate
Install dependencies:
uv pip install fastmcp requests
โ๏ธ Configuration
๐ง Claude Desktop Setup
Option 1: Using uvx with GitHub Repository (Recommended)
Use the following command to add the AVM MCP server to your local environment. This assumes uvx is in your $PATH; if not, then you need to provide the full path to uvx.
Add the following to your claude_desktop_config.json file:
{
"mcpServers": {
"avm-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"git+https://github.com/stefanstranger/avm-mcp-server",
"avm-mcp-server"
]
}
}
}or mcp.json for Visual Code mcp configuration.
{
"servers": {
"avm-mcp-server-github": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"git+https://github.com/stefanstranger/avm-mcp-server@v0.1.5",
"avm-mcp-server"
]
}
},
"inputs": []
}This approach:
โ No local installation required
โ Always uses the latest version from the main branch
โ No need to manage virtual environments
โ Works across different machines with the same config
To use a specific version/tag, modify the GitHub URL:
"git+https://github.com/stefanstranger/avm-mcp-server@v0.1.5"Option 2: Using Local Installation
If you prefer to run from a local clone:
{
"mcpServers": {
"avm-mcp-server": {
"type": "stdio",
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with",
"requests",
"mcp",
"run",
"C:\\Github\\avm-mcp-server\\server.py"
]
}
}
}Note: Adjust the path in the last args element to match your installation location.
๐ Running the Server
Using uvx (No Installation Required)
Run directly from GitHub:
uvx --from git+https://github.com/stefanstranger/avm-mcp-server avm-mcp-serverOr with a specific version:
uvx --from git+https://github.com/stefanstranger/avm-mcp-server@v0.1.5 avm-mcp-serverUsing Local Installation
If you cloned the repository:
uv run .\server.pyRunning with Different Transports
The server now supports multiple transport methods for different use cases:
1. STDIO Transport (Default)
Standard input/output - ideal for Claude Desktop and MCP Inspector:
python server.py --transport stdioThis is the default mode and is used when no transport is specified.
2. HTTP Transport
Streamable HTTP transport - ideal for web applications and REST API integrations:
python server.py --transport http --host 0.0.0.0 --port 8080Test the server is running:
# Simple tools listing endpoint (GET request)
curl http://localhost:8080/tools
# MCP protocol endpoint (requires POST with JSON-RPC format)
curl -X POST http://localhost:8080/mcp/ \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2024-11-05",
"capabilities": {},
"clientInfo": {"name": "test-client", "version": "1.0.0"}
}
}'Note: The MCP endpoint (/mcp/) requires a trailing slash and expects POST requests with JSON-RPC formatted data.
3. SSE Transport
Server-Sent Events transport - ideal for real-time streaming applications:
python server.py --transport sse --host 0.0.0.0 --port 8080Additional Options
--debug: Enable debug logging--host: Host address to bind to (default: 0.0.0.0 for HTTP/SSE)--port: Port to use (default: 8080 for HTTP/SSE)
Example with debug mode:
python server.py --transport http --port 8081 --debugConfiguration via Environment Variables
You can also configure the server using a .env file:
MCP_HOST=0.0.0.0
MCP_PORT=8080
MCP_DEBUG=false
LOG_LEVEL=INFORunning with Docker
For containerized deployments, use the included Dockerfile:
# Build the image
docker build -t avm-mcp-server .
# Run the container
docker run -p 8080:8080 avm-mcp-serverThe container runs in HTTP transport mode on port 8080 by default. To use a different port:
docker run -p 9000:8080 avm-mcp-serverTo run with SSE transport instead:
docker run -p 8080:8080 avm-mcp-server python server.py --transport sse --port 8080Quick Setup for Linux/macOS
For local development on Linux or macOS, use the setup script to quickly create a virtual environment and install dependencies:
chmod +x setup.sh
./setup.shThis script:
Checks for Python 3 installation
Creates a virtual environment (
.venv)Installs all dependencies from
requirements.txtVerifies imports work correctly
Note: For Windows users or those using UV, follow the standard Installation steps instead.
Inspect MCP Server
The MCP Inspector is a useful tool for testing and debugging MCP servers.
STDIO Transport (Default)
Using uvx from GitHub:
npx @modelcontextprotocol/inspector uvx --from git+https://github.com/stefanstranger/avm-mcp-server avm-mcp-serverUsing local installation:
npx @modelcontextprotocol/inspector uv run --with mcp[cli] mcp run c://github//avm-mcp-server//server.pyHTTP Transport
First, start the server in HTTP mode:
python server.py --transport http --port 8080Then open the MCP Inspector web UI and connect to the HTTP endpoint:
npx @modelcontextprotocol/inspectorIn the Inspector UI, enter http://localhost:8080/mcp/ as the server URL and select "Streamable HTTP" as the transport type.
Alternatively, use curl to verify the server is running:
# Check the tools endpoint
curl http://localhost:8080/tools
# Or test the MCP endpoint directly
curl -X POST http://localhost:8080/mcp/ `
-H "Content-Type: application/json" `
-d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": {}}'SSE Transport
First, start the server in SSE mode:
python server.py --transport sse --port 8080Then open the MCP Inspector web UI:
npx @modelcontextprotocol/inspectorIn the Inspector UI, enter http://localhost:8080/sse as the server URL and select "SSE" as the transport type.
Using mcptools
mcptools provides an alternative way to inspect MCP servers:
# STDIO transport
mcptools web cmd /c "uvx.exe --from git+https://github.com/stefanstranger/avm-mcp-server avm-mcp-server"
# List tools
mcptools tools cmd /c "uvx.exe --from git+https://github.com/stefanstranger/avm-mcp-server avm-mcp-server"
# Call a specific tool
mcptools call list_avm_modules --modulename "storage" cmd /c "uvx.exe --from git+https://github.com/stefanstranger/avm-mcp-server avm-mcp-server"๐ Available Tools
1. list_avm_modules
Search and list Azure Verified Modules from the Bicep Public Registry.
Parameters:
modulename(optional): Module name to filter by. Supports multiple formats:Exact match:
"storage-account"Hyphenated:
"key-vault"Space-separated:
"key vault"(matches "key-vault", "keyvault", "key", or "vault")Compact:
"keyvault"
Returns: JSON array with module information including:
Module name (registry path)
Available versions
Description
Documentation link
Example Usage:
"List all AVM modules for storage accounts"
"Find Azure Verified Modules for key vault"
"Show me AVM modules related to networking"Example Response:
[
{
"name": "bicep/avm/res/storage/storage-account",
"versions": ["0.9.1", "0.9.0", "0.8.3"],
"description": "Azure Verified Module",
"documentation": "https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/storage/storage-account"
}
]2. scrape_avm_module_details
Fetch detailed information from an AVM module's README documentation.
Parameters:
url(required): GitHub URL of the AVM module repositoryExample:
https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/storage/storage-account
Returns: Formatted markdown containing:
Resource Types: Azure resources deployed by the module
Parameters: Complete parameter reference with types, defaults, and descriptions
Usage Examples: Large parameter set examples showing real-world usage
Example Usage:
"Get the details for the storage account AVM module"
"Show me the parameters for the key vault module"
"What resources does the virtual network module deploy?"Example Response:
## Resource Types
| Resource Type | API Version |
| :-- | :-- |
| `Microsoft.Storage/storageAccounts` | [2022-09-01] |
| `Microsoft.Storage/storageAccounts/blobServices` | [2022-09-01] |
## Parameters
**Required parameters**
| Parameter | Type | Description |
| :-- | :-- | :-- |
| [`name`](#parameter-name) | string | Name of the Storage Account. |
**Optional parameters**
| Parameter | Type | Description |
| :-- | :-- | :-- |
| [`location`](#parameter-location) | string | Location for all resources. |
...๐ Available Prompts
1. find_avm_module_prompt
A prompt to find Azure Verified Modules (AVM).
Parameters:
search_term(optional): The search term to use to find AVM modules.
Example Usage:
"Find AVM modules for 'storage account'"2. get_avm_module_details_prompt
A prompt to get the details of a specific AVM.
Parameters:
module_name(required): The name of the AVM module.
Example Usage:
"Get details for the 'storage-account' AVM module"3. suggest_avm_for_service_prompt
A prompt to suggest an AVM for a specific Azure service.
Parameters:
azure_service(required): The Azure service to find an AVM for.
Example Usage:
"Suggest an AVM for 'Azure Key Vault'"๐ก Usage Examples
Search for modules
"Find all AVM modules for storage"
"List Azure Verified Modules for Key Vault"
"Show me networking modules"Get module versions
"What versions are available for the storage account module?"
"List all versions of the AVM key vault module"Explore module details
"Show me the parameters for bicep/avm/res/storage/storage-account"
"What resources does the virtual network module deploy?"
"Get usage examples for the key vault module"Combined workflows
"Find the storage account AVM module and show me its parameters"
"I need to deploy a key vault - find the module and explain its parameters"
"Search for virtual network modules and show me usage examples"๐ How It Works
Module Discovery
Queries Microsoft Container Registry's catalog endpoint (
mcr.microsoft.com/v2/_catalog)Filters repositories starting with
bicep/avm/Applies intelligent search matching:
Normalizes search terms (lowercase, hyphenated, compact)
Matches any token from multi-word queries
Returns all matching modules
Version Retrieval
For each matching module, queries the registry's tags endpoint
Retrieves all available semantic versions
Returns version information with module metadata
Documentation Extraction
Converts GitHub tree URLs to raw content URLs
Fetches README.md content from the bicep-registry-modules repository
Extracts relevant sections using regex patterns:
Resource Types tables
Parameters documentation
Usage examples with large parameter sets
๐ Troubleshooting
Common Issues
"Failed to fetch modules" error
Check internet connectivity
Verify access to
mcr.microsoft.comCheck for firewall/proxy restrictions
"Could not fetch README.md" error
Verify the GitHub URL format is correct
Ensure the module documentation exists in the repository
Check internet connectivity to
raw.githubusercontent.com
No modules found for search query
Try different search terms (e.g., "storage" instead of "storage-account")
Use partial names (e.g., "key" to find "key-vault")
List all modules without a filter first
Server won't start in Claude Desktop
Verify Python 3.11+ is installed
Check that UV is properly installed
Ensure the path in
claude_desktop_config.jsonis correctReview Claude Desktop logs for detailed error messages
๐งช Testing
The project includes a comprehensive test suite to ensure code quality and catch issues before release.
Running Tests
# Install dev dependencies
uv sync --dev
# Run all tests
uv run pytest
# Run tests with verbose output
uv run pytest -vWhat the Tests Check
The test suite (tests/test_distribution.py) validates:
Test | Purpose |
| Ensures |
| Verifies all runtime dependencies are listed |
| Confirms CLI entry point is defined |
| Catches import errors from missing files/dependencies |
These tests specifically target issues that have caused runtime failures (missing modules, missing dependencies).
Continuous Integration
Tests run automatically on:
Every push to
mainandfeature/**branchesEvery pull request to
mainBefore publishing to PyPI (publishing is blocked if tests fail)
The CI workflow tests against Python 3.10, 3.11, 3.12, and 3.13 to ensure compatibility.
Publishing & Distribution
This server is published to both PyPI and the MCP Registry for easy installation and discovery.
Installing from PyPI
The recommended way to use this server is via uvx from PyPI:
# Run directly without installation
uvx avm-mcp-server
# Or install globally
uv tool install avm-mcp-serverMCP Registry
This server is registered in the MCP Registry, making it discoverable by MCP clients and AI assistants.
Registry Entry: io.github.stefanstranger/avm-mcp-server
For Developers: Publishing Updates
The project uses automated GitHub Actions workflows to publish new versions. Publishing is triggered automatically when a feature branch is merged to main with a version bump.
Update Version Numbers (in your feature branch):
pyproject.toml- Package versionserver.py- FastMCP instance version
Create PR and Merge:
# On your feature branch git add pyproject.toml server.py git commit -m "Bump version to X.Y.Z" git push # Create PR and merge to mainAutomated Workflow (triggered on merge to main):
Detects version change in
pyproject.tomlRuns all tests across Python 3.10-3.13
Creates git tag
vX.Y.ZautomaticallyBuilds and publishes to PyPI
Updates
server.jsonwith new versionAuthenticates with MCP Registry via GitHub OIDC
Publishes to MCP Registry
Creates GitHub Release with release notes
Note: The workflow only triggers when pyproject.toml changes and the version doesn't already have a tag. This prevents duplicate publishes.
Manual Publishing (First Time)
For the initial PyPI release, publish manually:
# Build the package
uv build
# Publish to PyPI (will prompt for token)
uv publishRequirements:
PyPI account and API token
The README includes the MCP validation line:
<!-- mcp-name: io.github.stefanstranger/avm-mcp-server -->
Note: PyPI versions cannot be re-uploaded. Always bump the version number for new releases.
๐ References
๐ License
MIT License
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
โ๏ธ Disclaimer
This tool is not officially affiliated with or endorsed by Microsoft or the Azure Verified Modules team. It provides read-only access to publicly available module information from the Microsoft Container Registry and GitHub.
Available Tools
2 toolslist_avm_modulesA
List Azure Verified Modules (AVM). If modulename is provided, return details for that specific module.
Args: modulename (str): AVM Module name to filter by
Returns: str: a list of AVM modules in JSON format with their versions and documentation links
| Name | Required | Description | Default |
|---|---|---|---|
| modulename | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses return format and conditional behavior, but does not explicitly state read-only nature or any side effects. For a list operation, this is adequate but could be improved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise (6 lines), front-loaded with purpose, and structured with Args/Returns sections. Slight redundancy but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and an output schema, the description covers the function sufficiently. Mentions return format (JSON with versions and documentation links). Could mention pagination or limits but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has no descriptions (0% coverage), but the description explains the parameter 'modulename' as 'AVM Module name to filter by', adding meaning beyond type and default.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists Azure Verified Modules and optionally returns details for a specific module. Purpose is distinct from sibling 'scrape_avm_module_details' which likely provides deeper details, but no explicit differentiation is given.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: list modules or filter by name. No explicit guidance on when to use this vs the sibling tool, nor when not to use it. Conditional behavior is described, but no alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrape_avm_module_detailsA
Fetch and extract specific sections from AVM module README.md, returning formatted markdown.
Extracts:
Resource Types
Parameters
Usage Examples (focusing on large parameter sets)
Converts GitHub URLs like: https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/storage/storage-account
To raw URLs like: https://raw.githubusercontent.com/Azure/bicep-registry-modules/refs/heads/main/avm/res/storage/storage-account/README.md
Args: url (str): AVM GitHub repository URL
Returns: str: Formatted markdown string containing the extracted sections
| Name | Required | Description | Default |
|---|---|---|---|
| url | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It explains the URL conversion and extraction but does not disclose potential issues like rate limits, authentication requirements, error handling for invalid URLs, or size of output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the main purpose, uses bullet points for clarity, and includes a concrete example. No superfluous sentences.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description need not explain return values, but it does describe extracted sections. It covers main functionality, but could mention behavior on invalid URLs or missing modules.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'url' is thoroughly explained: its purpose as AVM GitHub repository URL, with an example showing the transformation to raw URL. Schema description coverage is 0%, so the description compensates well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches and extracts specific sections from AVM module README.md and returns formatted markdown. It lists the extracted sections and distinguishes from sibling tool list_avm_modules, which lists modules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains what the tool does and mentions URL conversion, but does not explicitly state when to use it vs alternatives or when not to use it. The sibling tool is named but not compared.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v0.1.5- First observed
list_avm_modules - First observed
scrape_avm_module_details
TDQS
list_avm_modules and scrape_avm_module_details have clearly distinct purposes: one lists modules with metadata, the other extracts detailed sections from a module's README. No overlap.
Both tool names follow a consistent verb_noun pattern with snake_case: list_avm_modules and scrape_avm_module_details. The naming is predictable and clear.
With only two tools, the surface feels thin for a server dedicated to Azure Verified Modules. While the tools are useful, the count is borderline minimal for a full-featured interaction.
The two tools cover listing modules and extracting detailed documentation, which are the core read operations. Minor gaps exist (e.g., no search by resource type) but agents can work around them.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Capability registry for the agentic economy. Semantic search over verified MCP server listings.
Search and install 4,000+ security-scanned MCP servers from inside any MCP-aware AI client.
- UnifAPIOAuthcom.unifapi
Hosted MCP server for live public-data APIs and Skills for AI agents.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseAqualityNot gradedmaintenanceEnables AI assistants to discover, retrieve details about, and manage MCP (Model Context Protocol) servers that provide additional tools and capabilities on demand.56310-
- AlicenseNot gradedqualityBmaintenanceAI-first MCP server discovery tool that enables agents to search, inspect, and install MCP servers from multiple registries.12AGPL 3.0
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to explore, search, and query API definitions from OpenAPI/Swagger JSON files.59MIT
- AlicenseNot gradedqualityAmaintenanceMCP server for loading and exploring OpenAPI/Swagger specifications, enabling AI assistants to dynamically browse API contracts by loading specs, searching endpoints, inspecting schemas, and retrieving operations.263MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/stefanstranger/avm-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server