Skip to main content
Glama

query_patterns

Discover and analyze code patterns across programming languages within a knowledge graph. Filter results by language or pattern name to enhance code understanding and retrieval.

Instructions

Query code patterns in the knowledge graph.

Args: language: Filter by programming language pattern_name: Filter by pattern name

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
languageNo
pattern_nameNo

Implementation Reference

  • The handler function for the 'query_patterns' MCP tool. It queries the knowledge graph for patterns matching the given language and name filters, then formats and returns a detailed string summary of the matching patterns.
    @self.mcp.tool()
    def query_patterns(
        language: str | None = None, pattern_name: str | None = None
    ) -> str:
        """Query code patterns in the knowledge graph.
    
        Args:
            language: Filter by programming language
            pattern_name: Filter by pattern name
        """
        patterns = self.knowledge.find_patterns(
            name=pattern_name, language=language
        )
    
        if not patterns:
            return "No patterns found matching the query criteria"
    
        # Format results
        output = f"Found {len(patterns)} patterns:\n\n"
    
        for pattern in patterns:
            output += f"Name: {pattern.name}\n"
    
            if pattern.language:
                output += f"Language: {pattern.language}\n"
    
            output += f"Description: {pattern.description}\n"
    
            if pattern.example:
                output += "Example:\n"
                output += "```\n"
                output += pattern.example
                output += "\n```\n"
    
            output += "\n"
    
        return output

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/sarathsp06/sourcesage'

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