Skip to main content
Glama

Zoom MCP Server

A FastMCP Model Context Protocol server that provides intelligent monitoring and management of Zoom rooms across multiple sites with smart location resolution.

πŸš€ Features (New!)

  • 5 Powerful Tools for comprehensive Zoom room management

  • Smart Location Resolution with fuzzy matching (e.g., "SF1", "DEN1", "Floor 3")

  • Denver Building Aliases - Special hardcoded mappings for room naming compatibility

  • Efficient API Usage - Single call for company-wide queries vs. multiple location-specific calls

  • OAuth 2.0 Authentication with automatic token refresh and file-based caching

  • Hierarchical Location Discovery - Understands campus β†’ building β†’ floor relationships

  • User-Friendly Confirmations - Clear messages explaining what was resolved

Related MCP server: Zoom API MCP Server

πŸ› οΈ Tools Available

test_zoom_connection

Test Zoom API authentication and connection status.

# Usage: Verify credentials are working
mcp call test_zoom_connection --params '{}' uv run src/server.py

get_zoom_sites

Get all Zoom locations with hierarchy and aliases.

# Usage: Understand available locations and relationships
mcp call get_zoom_sites --params '{}' uv run src/server.py

get_zoom_rooms

Get Zoom rooms with optional smart location filtering.

⚑ IMPORTANT: For maximum efficiency with company-wide queries (e.g., "find offline rooms anywhere"), omit location_query to make a single API call.

# Company-wide (EFFICIENT - single API call)
mcp call get_zoom_rooms --params '{}' uv run src/server.py

# Location-specific (multiple API calls)
mcp call get_zoom_rooms --params '{"location_query":"SF1"}' uv run src/server.py
mcp call get_zoom_rooms --params '{"location_query":"DEN1"}' uv run src/server.py
mcp call get_zoom_rooms --params '{"location_query":"Floor 3"}' uv run src/server.py

get_room_details

Get detailed information about a specific room.

# Usage: Deep dive into specific room configuration
mcp call get_room_details --params '{"room_id":"ROOM_ID_HERE"}' uv run src/server.py

resolve_location

Debug tool to test location resolution without fetching rooms.

# Usage: Debug how location queries get resolved
mcp call resolve_location --params '{"location_query":"DEN2"}' uv run src/server.py

πŸ“ Smart Location Resolution

The server understands various location query patterns:

Query Pattern

Example

What It Resolves

Campus codes

SF1, NYC, DEN

Entire campus with all buildings/floors

Building numbers

Building 1, DEN1

Specific building or hardcoded alias

Floor numbers

Floor 1, 3F

All floors with that number across sites

Partial names

Denver, Francisco

Best fuzzy match

Special Denver Building Aliases

Due to Zoom's location hierarchy vs. room naming patterns, Denver has special hardcoded mappings:

  • DEN1 β†’ Denver Building 1 (Floor 3) β†’ Rooms: DEN-1-101, DEN-1-102, etc.

  • DEN2 β†’ Denver Building 2 (T3F3, T3F5, T3F6) β†’ Rooms: DEN-2-201, DEN-2-202, etc.

πŸ”§ Installation & Setup

Prerequisites

  • Python 3.10+

  • UV package manager

  • Zoom Pro/Business account with API access

1. Clone Repository

git clone https://github.com/chadkunsman/zoom-mcp.git
cd zoom-mcp

2. Install Dependencies

uv pip install -e .

3. Zoom API Configuration

  1. Create a Server-to-Server OAuth app in Zoom Marketplace

  2. Add required scope: room:read:admin

  3. Get your credentials: Account ID, Client ID, Client Secret

4. Configure Credentials

Create .env file:

ZOOM_ACCOUNT_ID=your_account_id_here
ZOOM_CLIENT_ID=your_client_id_here
ZOOM_CLIENT_SECRET=your_client_secret_here

5. Test Installation

# Install MCPTools for testing
brew tap f/mcptools && brew install mcp

# Test the server
mcp tools uv run src/server.py
mcp call test_zoom_connection --params '{}' uv run src/server.py

πŸ”Œ MCP Client Configuration

For Claude Desktop and Similar MCP Clients

Add to your MCP client configuration:

{
  "mcpServers": {
    "zoom-mcp": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/zoom-mcp",
        "src/server.py"
      ],
      "env": {
        "ZOOM_ACCOUNT_ID": "your_account_id_here",
        "ZOOM_CLIENT_ID": "your_client_id_here",
        "ZOOM_CLIENT_SECRET": "your_client_secret_here"
      }
    }
  }
}

Using Command-Line Arguments

{
  "mcpServers": {
    "zoom-mcp": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/zoom-mcp",
        "src/server.py",
        "--zoom-account-id",
        "your_account_id_here",
        "--zoom-client-id", 
        "your_client_id_here",
        "--zoom-client-secret",
        "your_client_secret_here"
      ]
    }
  }
}

πŸ’‘ Usage Examples

Find All Offline Rooms (Efficient)

"Are any Zoom rooms offline anywhere in the company?" β†’ Uses get_zoom_rooms without location_query (single API call)

Check Specific Location

"Show me all rooms in San Francisco" β†’ Uses get_zoom_rooms with location_query: "SF1"

Debug Location Resolution

"How would 'DEN2' be resolved?" β†’ Uses resolve_location to see what locations match

Room Status by Building

"What's the status of Denver Building 1 rooms?" β†’ Uses get_zoom_rooms with location_query: "DEN1"

πŸ—οΈ Architecture

zoom-mcp/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ server.py              # Main MCP server with 5 tools
β”‚   └── config/                # Configuration modules
β”‚       β”œβ”€β”€ settings.py        # Environment & auth configuration
β”‚       β”œβ”€β”€ zoom_auth.py       # OAuth token management
β”‚       β”œβ”€β”€ zoom_hierarchy.py  # Location discovery & relationships
β”‚       └── zoom_fuzzy.py      # Smart location resolution
β”œβ”€β”€ docs/                      # Comprehensive documentation
└── test_server.py            # Direct testing script

Key Design Patterns

  • Import Inside Functions: Configuration modules imported inside tool functions to avoid timing issues

  • Multi-Level Token Caching: Memory cache + file persistence with 1-hour expiration and 5-minute buffer

  • Hierarchical Discovery: Automatic campus β†’ building β†’ floor relationship building

  • Hybrid Resolution: Hardcoded Denver aliases + dynamic fuzzy matching for other sites

πŸ§ͺ Testing

MCPTools Testing

# List all tools
mcp tools uv run src/server.py

# Test authentication
mcp call test_zoom_connection --params '{}' uv run src/server.py

# Interactive testing
mcp shell uv run src/server.py

Direct Script Testing

python test_server.py

πŸ“š Documentation

Comprehensive documentation available in docs/:

πŸ”’ Security

  • Credentials stored in .env files (not committed to git)

  • Token caching with secure file permissions

  • Bearer token automatic refresh

  • Error messages don't expose sensitive information

🀝 Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Test with MCPTools

  5. Submit a pull request

πŸ“„ License

This project is licensed under the MIT License.

πŸ†˜ Troubleshooting

Common Issues

  1. "Zoom credentials not configured"

    • Verify .env file exists with correct variables

    • Check environment variable names match exactly

  2. "Token request failed: 401"

    • Verify Zoom app credentials are correct

    • Ensure app has room:read:admin scope

    • Confirm app is Server-to-Server OAuth type

  3. "No location matches found"

    • Check spelling of location query

    • Use get_zoom_sites to see available locations

    • Test with resolve_location to debug fuzzy matching

  4. Import timing issues

    • Configuration modules imported inside tool functions

    • Never import config at module level before initialize_config()

Debug Commands

# Test connection
mcp call test_zoom_connection --params '{}' uv run src/server.py

# List all sites
mcp call get_zoom_sites --params '{}' uv run src/server.py

# Debug location resolution
mcp call resolve_location --params '{"location_query":"your_query"}' uv run src/server.py

Built with FastMCP and the Model Context Protocol.

Available Tools

5 tools
get_room_detailsA

Get detailed information about a specific Zoom room.

USE THIS when you have a specific room ID and need complete details about that single room.
Returns full room configuration, settings, and recent events.

Perfect for: "Tell me about room ABC123", "What are the details of this specific room?"
ParametersJSON Schema
NameRequiredDescriptionDefault
room_idYes

TDQS

A4.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool returns 'full room configuration, settings, and recent events', which gives some insight into output behavior. However, it lacks details on error handling, authentication requirements, rate limits, or whether the operation is idempotentβ€”leaving gaps for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with the core purpose, followed by usage guidelines and examples. Every sentence adds value without redundancy, and the bullet-point-like examples enhance readability without unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with 1 parameter and no output schema, the description is largely completeβ€”it covers purpose, usage, and output scope. However, without annotations or an output schema, it could benefit from more detail on error cases or response structure, slightly limiting completeness for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 parameter with 0% description coverage, so the description must compensate. It clarifies that 'room_id' refers to 'a specific room ID' and implies it's required for fetching details, adding meaningful context beyond the bare schema. However, it doesn't specify the format or constraints of the ID (e.g., numeric vs. alphanumeric).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Get detailed information') and resource ('about a specific Zoom room'), distinguishing it from sibling tools like get_zoom_rooms (which likely lists multiple rooms) and get_zoom_sites (which focuses on sites rather than individual rooms). The purpose is unambiguous and well-articulated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool ('when you have a specific room ID and need complete details about that single room') and provides concrete examples ('Tell me about room ABC123', 'What are the details of this specific room?'), making it clear this is for single-room queries rather than bulk operations or other contexts handled by siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_zoom_roomsA

Get Zoom rooms with optional location filtering.

IMPORTANT: For maximum efficiency when checking ALL rooms company-wide (e.g., "find offline rooms anywhere", "all rooms", "company-wide status"), 
DO NOT provide location_query - this makes a single API call to get all rooms.

USE location_query ONLY for specific location filtering (e.g., 'SF1', 'DEN1', 'Floor 1', 'Denver Building 2').
This uses smart location resolution but makes multiple API calls per location.

Examples:
- Company-wide queries: omit location_query for single efficient API call
- Location-specific: use location_query='SF1' for San Francisco only
ParametersJSON Schema
NameRequiredDescriptionDefault
location_queryNo

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behavioral traits: the tool's efficiency (single API call without location_query vs. multiple with it), smart location resolution, and performance implications. However, it lacks details on error handling, rate limits, or authentication needs, which are relevant for a tool with API calls.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded, starting with the core purpose. Each sentence adds value: the first states the purpose, the next two provide important usage guidelines with efficiency tips, and the examples reinforce the guidance. There is no wasted text, and the structure is clear and logical.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (1 parameter, no output schema, no annotations), the description is largely complete. It covers purpose, usage, parameter semantics, and behavioral aspects like efficiency. However, it lacks details on output format (what data is returned) and potential errors, which would enhance completeness for an API-based tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description must fully compensate. It adds significant meaning beyond the schema by explaining the semantics of location_query: when to use it (for specific location filtering), when to omit it (for company-wide queries), and examples (e.g., 'SF1', 'DEN1'). This clarifies the parameter's purpose and usage context effectively.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get Zoom rooms with optional location filtering.' It specifies the verb ('Get'), resource ('Zoom rooms'), and scope ('with optional location filtering'), distinguishing it from siblings like get_room_details (specific room details) and get_zoom_sites (sites rather than rooms).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool versus alternatives, including detailed scenarios. It specifies when to omit location_query (for company-wide queries) and when to use it (for location-specific filtering), and mentions efficiency trade-offs (single vs. multiple API calls), which helps differentiate from siblings like resolve_location for location resolution.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_zoom_sitesA

Get all Zoom sites/locations with hierarchy and aliases.

USE THIS to understand available locations before using location-specific queries.
Shows campus β†’ building β†’ floor relationships and common aliases like 'SF1', 'DEN1', etc.

Perfect for: "What locations do we have?", "Show me all sites", "What are the building names?"
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes what the tool returns ('hierarchy and aliases') and its read-only nature is implied by 'Get', but it lacks details on potential limitations like pagination, rate limits, or error handling. The description adds some context but does not fully compensate for the absence of annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded, starting with the core purpose, followed by usage guidelines and examples. Each sentence adds value without redundancy, and the bullet-point style for examples enhances readability without wasting space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (simple read operation with no parameters) and the absence of annotations and output schema, the description is largely complete. It explains what the tool does, when to use it, and provides examples, though it could benefit from more behavioral details like response format or constraints to fully compensate for the lack of structured data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter information is needed. The description appropriately does not discuss parameters, focusing instead on the tool's output and usage. This meets the baseline for tools with no parameters, as it avoids unnecessary details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('Get all Zoom sites/locations') and resources ('sites/locations'), and distinguishes it from siblings by specifying it shows 'hierarchy and aliases' rather than room details or location resolution. It explicitly answers questions like 'What locations do we have?' which reinforces its distinct role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool ('USE THIS to understand available locations before using location-specific queries') and includes alternative scenarios ('Perfect for: ...') that clarify its application. It differentiates from siblings by focusing on site overview rather than specific details or resolution tasks.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resolve_locationA

DEBUG TOOL: Test how location queries get resolved without fetching rooms.

USE THIS to understand what locations will be searched before running expensive room queries.
Shows which aliases match, what locations are found, and how many API calls would be made.

Perfect for: "How would 'DEN1' be resolved?", "What locations match 'Floor 1'?", debugging location queries.
ParametersJSON Schema
NameRequiredDescriptionDefault
location_queryYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key traits: it's a debug tool that simulates resolution without actual fetching, shows matching aliases and found locations, and indicates API call implications. However, it doesn't specify error handling, rate limits, or authentication needs, leaving some behavioral aspects uncovered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded, starting with the core purpose. Each sentence adds value: the first states the tool's function, the second explains its utility, and the third gives concrete use cases. There is no redundant or wasted text, making it highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (debugging/resolution without annotations or output schema), the description is mostly complete. It covers purpose, usage, and parameter intent effectively. However, it lacks details on return format (e.g., structure of resolved data) and error scenarios, which would enhance completeness for a debug tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description must compensate. It adds meaningful context for the 'location_query' parameter through examples like 'DEN1' and 'Floor 1', clarifying it's a string for testing location matching. While it doesn't detail syntax constraints, it provides sufficient semantic understanding beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Test how location queries get resolved without fetching rooms.' It specifies the verb ('Test') and resource ('location queries'), and distinguishes it from sibling tools by emphasizing it's for debugging/resolution rather than actual data fetching. The examples ('How would "DEN1" be resolved?') reinforce this specific scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool: 'USE THIS to understand what locations will be searched before running expensive room queries.' It contrasts with siblings by positioning it as a preparatory/debugging step to avoid costly operations, and includes perfect-use-case examples that clarify its role versus tools like get_room_details or get_zoom_rooms.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

test_zoom_connectionA

Test Zoom API connection and validate authentication credentials.

USE THIS FIRST to verify your Zoom credentials are working before using other tools.
Returns authentication status, account info, and token cache status.

Perfect for: "Is my connection working?", "Test Zoom authentication", troubleshooting setup.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly explains what the tool returns ('authentication status, account info, and token cache status') and its purpose in troubleshooting. While it doesn't mention rate limits or error behaviors, it provides sufficient context for a diagnostic tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured with clear sections: purpose statement, usage instruction, return values, and use case examples. Every sentence adds value without redundancy, and the information is front-loaded with the most important guidance first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter diagnostic tool with no annotations and no output schema, the description provides comprehensive context about what the tool does, when to use it, and what information it returns. The only minor gap is the lack of explicit output format details, but the described return values give sufficient semantic understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters with 100% schema description coverage, so the baseline would be 4. The description appropriately doesn't discuss parameters since none exist, focusing instead on the tool's purpose and usage context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('test', 'validate') and resources ('Zoom API connection', 'authentication credentials'). It distinguishes itself from sibling tools by focusing on connection testing rather than data retrieval or resolution operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool: 'USE THIS FIRST to verify your Zoom credentials are working before using other tools.' It also gives concrete examples of appropriate use cases: 'Perfect for: "Is my connection working?", "Test Zoom authentication", troubleshooting setup.'

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.

  1. 5 tool updatesv0.1.0
    • First observedget_room_details
    • First observedget_zoom_rooms
    • First observedget_zoom_sites
    • First observedresolve_location
    • First observedtest_zoom_connection

TDQS

A4.6/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap. get_room_details targets a single room, get_zoom_rooms retrieves multiple rooms with optional filtering, get_zoom_sites lists locations, resolve_location is a debug tool for location resolution, and test_zoom_connection validates authentication. The descriptions explicitly differentiate use cases, preventing misselection.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case naming (e.g., get_room_details, get_zoom_rooms, get_zoom_sites, resolve_location, test_zoom_connection). The verbs are descriptive and aligned with their functions, making the set predictable and readable.

Tool Count5/5

With 5 tools, the server is well-scoped for managing Zoom rooms and locations. Each tool earns its place by covering essential operations: authentication testing, location resolution, site listing, room listing with filtering, and detailed room queries. This count is appropriate for the domain without being too thin or heavy.

Completeness4/5

The tool set covers core workflows for Zoom room management, including authentication, location hierarchy, and room queries. However, there are minor gaps such as the lack of update or delete operations for rooms (e.g., modifying room settings or removing rooms), which agents might need to work around. The surface is largely complete for monitoring and querying purposes.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Zoom services through the Zoom API. Provides access to meeting management, user administration, and other Zoom platform features through natural language commands.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables network management through Cisco Catalyst Center, providing tools for monitoring device health, tracking client data, and managing network issues. It also supports compliance and lifecycle management by retrieving EoX summaries and detailed security advisory status.
    -

Latest Blog Posts

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/chadkunsman/zoom-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server