Skip to main content
Glama

list_ip_cores

Discover available FPGA IP cores in the registry and filter them by category to find suitable components for hardware design projects.

Instructions

List all available IP cores in the registry. Optionally filter by category.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
categoryNoFilter by category, e.g. 'communication' or 'memory'

Implementation Reference

  • The actual handler implementation - the list_cores method in CoreRegistry class that iterates through cached IP cores and returns a summary list with name, version, category, description, tags, language, parameters, and path. Optionally filters by category.
    def list_cores(self, category: str | None = None) -> list[dict]:
        """Return a summary list of all available IP cores, optionally filtered by category."""
        results = []
        for name, (manifest, core_dir) in self._cache.items():
            if category and manifest.category != category:
                continue
            results.append({
                "name":       manifest.name,
                "version":    manifest.version,
                "category":   manifest.category,
                "description":manifest.description,
                "tags":       manifest.tags,
                "language":   manifest.language,
                "parameters": list(manifest.parameters.keys()),
                "path":       str(core_dir),
            })
        return results
  • server.py:157-169 (registration)
    Tool registration where 'list_ip_cores' is defined as an MCP tool with its input schema specifying an optional 'category' parameter for filtering IP cores.
    types.Tool(
        name="list_ip_cores",
        description="List all available IP cores in the registry. Optionally filter by category.",
        inputSchema={
            "type": "object",
            "properties": {
                "category": {
                    "type": "string",
                    "description": "Filter by category, e.g. 'communication' or 'memory'",
                },
            },
        },
    ),
  • Tool dispatch logic that routes 'list_ip_cores' calls to registry.list_cores, passing the optional category argument and running asynchronously via asyncio.to_thread.
    case "list_ip_cores":
        result = await asyncio.to_thread(
            registry.list_cores, category=arguments.get("category")
        )

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/bard0-design/fpgaZeroMCP'

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