Skip to main content
Glama

get_configuration

Retrieve current server configuration including network parameters, cache settings, and logging levels to debug or verify environment variable overrides.

Instructions

Get current server configuration.

Returns all configuration settings including network parameters, cache settings, and logging levels. Useful for debugging or verifying environment variable overrides.

Returns

Dictionary containing:
- configuration: All configuration sections
- source: Information about configuration sources (env vars, config file)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The implementation of the get_configuration tool, which retrieves the current server configuration settings.
    async def get_configuration() -> dict[str, Any]:
        """Get current server configuration.
    
        Returns all configuration settings including network parameters,
        cache settings, and logging levels. Useful for debugging or verifying
        environment variable overrides.
    
        Returns
        -------
            Dictionary containing:
            - configuration: All configuration sections
            - source: Information about configuration sources (env vars, config file)
    
        """
        try:
            config = get_config()
            return {
                "success": True,
                "configuration": config.get_all(),
                "environment_variables": {
                    "prefix": "WEMO_MCP_",
                    "examples": [
                        "WEMO_MCP_DEFAULT_SUBNET=192.168.1.0/24",
                        "WEMO_MCP_CACHE_TTL=7200",
                        "WEMO_MCP_LOG_LEVEL=DEBUG",
                    ],
                },
                "timestamp": time.time(),
            }
        except Exception as e:
            logger.error(f"Error getting configuration: {e}", exc_info=True)
            return build_error_response(e, "Get configuration")
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It describes the return format (a dictionary with configuration and source sections) and implies a read-only operation by using 'Get', which is consistent. However, it lacks details on potential side effects, error conditions, or performance characteristics that could be relevant for an agent.

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 concise: it starts with the core purpose, adds context for usage, and clearly outlines the return format. Every sentence adds value, with no redundant information. The formatting with a 'Returns' section enhances readability without verbosity.

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

Completeness5/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 0 parameters), the description is complete. It explains what the tool does, when to use it, and what it returns. The presence of an output schema means the description doesn't need to detail return values, and it adequately covers the necessary context for an agent to use this tool effectively.

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 0 parameters, and schema description coverage is 100% (though schema is empty). The description doesn't need to add parameter semantics, so it meets the baseline of 4. It appropriately focuses on output and usage without unnecessary parameter details.

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

Purpose4/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 the verb 'Get' and resource 'current server configuration', specifying it returns all settings including network parameters, cache settings, and logging levels. It distinguishes itself from siblings like 'get_cache_info' or 'get_device_status' by focusing on server-wide configuration rather than specific components. However, it doesn't explicitly contrast with all siblings, keeping it at 4 instead of 5.

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

Usage Guidelines4/5

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

The description provides clear context for usage: 'Useful for debugging or verifying environment variable overrides.' This gives practical guidance on when to use the tool. It doesn't explicitly state when not to use it or name alternatives among siblings, but the context is sufficiently clear for an agent to understand its primary use case.

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

Install Server

Other Tools

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/apiarya/wemo-mcp-server'

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