Skip to main content
Glama
conda-incubator

conda-meta-mcp

prek Ruff ty Tests

conda-meta-mcp

An MCP (Model Context Protocol) server exposing authoritative, read-only Conda ecosystem metadata for AI agents.

đź“– Read the introduction blog post: conda-meta-mcp: Expert Conda Ecosystem Data for AI Agents

NOTE

conda-meta-mcp provides read-only access to conda ecosystem metadata from channel data (packages and repodata), conda-forge data, and the OpenTeams search index for package content. Users are solely responsible for all requests they initiate, authorize, automate, or cause to be made through conda-meta-mcp, including compliance with any applicable third-party terms, rate limits, access requirements, and package licenses.

Metadata and license fields may be incomplete, outdated, or informational only. This project does not provide legal advice or grant rights to use third-party services or content.

What “Meta” Means Here

“Meta” refers to structured, machine-consumable ecosystem intelligence about packages — not the upstream project documentation itself. This server provides (see also the schema server-info.json for current capabilities):

Currently available:

  • Version metadata (MCP tool/library versions) via the info tool

  • Package info tarball data via the package_insights tool

  • Package search via the package_search tool

  • Import to package heuristic mapping via the import_mapping tool

  • File path to package mapping via the file_path_search tool

  • PyPI name to conda package mapping via the pypi_to_conda tool

  • CLI help (for conda) via the cli_help tool

  • Repository metadata queries (depends / whoneeds) via the repoquery tool

Tools backed by channel-specific data sources require an explicit channel argument and fail for unsupported channels before reading their data source.

Planned:

  • Solver feasibility signals (dry-run outputs)

  • Schema references and selected spec excerpts

  • Binary linkage information

  • Links (not copies) to sections of knowledge bases

It does not embed, index, or serve full library docs (e.g. numpy API pages); that remains out of scope by design.

Related MCP server: speclib-mcp

1. Purpose

Enable agents to answer packaging questions by providing up-to-date critical and fragmented expert knowledge. This project provides a safe, inspectable, zero‑side‑effect surface so agents deliver accurate, up‑to‑date guidance.

2. Scope

Goals

  • Trustworthy machine interface

  • Read‑only, hostable

  • Fast startup, low latency

  • Clear extension & testing pattern

Non‑Goals

  • Performing installs / mutations

  • Replacing human docs

  • Re‑implementing conda‑forge processing logic

3. Design Principles

  • Side‑effect free by contract

  • Tool registration pattern (conda_meta_mcp.tools)

  • Test + pre‑commit enforced consistency

  • Incremental expansion

4. Installation

Install globally as a tool:

pixi global install conda-meta-mcp

Or add to your project:

pixi add conda-meta-mcp

Via conda/mamba

conda install -c conda-forge conda-meta-mcp

Or with mamba/micromamba:

mamba install -c conda-forge conda-meta-mcp

From source (development)

Prerequisites: pixi

git clone https://github.com/conda-incubator/conda-meta-mcp.git
cd conda-meta-mcp
pixi run cmm --help

5. Agent Setup

Installed as conda package

Call cmm mcp-json to get an json snippet containing the command with args to add to your agent configuration.

Installed from source

Call pixi run cmm mcp-json to get an json snippet containing the command with args to add to your agent configuration.

6. Usage inside GitHub Copilot coding agent

Create a GitHub workflow named copilot-setup-steps.yml containing (see also GitHub Documentation):

jobs:
  copilot-setup-steps:
    ...
    steps:
      ...
      - name: Setup conda-meta-mcp
        uses: conda-incubator/conda-meta-mcp@main
      ...

Add this MCP configuration inside your repository under Settings -> Copilot -> Coding agent -> MCP Configuration:

{
  "mcpServers": {
    "conda-meta-mcp": {
      "type": "local",
      "command": "cmm",
      "args": [
        "run"
      ],
      "tools": [
        "*"
      ]
    }
  }
}

7. Development

Tasks (pixi):

  • Tests: pixi run test (for coverage open htmlcov/index.html)

  • Lint / format / type / regenerate metadata: pixi run pre-commit

8. Extending (New Tool)

  1. Create conda_meta_mcp/tools/<name>.py with:

    from .registry import register_tool
    
    @register_tool  # or @register_tool(cache_clearers=[...]) for custom cache clearers
    async def my_tool(...) -> dict:
        """Tool description (becomes MCP tool description)."""
        return await asyncio.to_thread(_helper_function, ...)
  2. Add unit tests (mock heavy deps)

  3. pixi run prek

  4. pixi run test

  5. Open PR

8. Safety Model

  • No environment mutation

  • No external command side effects

  • Future additions must preserve read‑only contract

A
license - permissive license
-
quality - not tested
A
maintenance

Maintenance

–Maintainers
70dResponse time
2wRelease cycle
5Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/conda-incubator/conda-meta-mcp'

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