Skip to main content

How to implement the Atlan MCP server

The Atlan Model Context Protocol (MCP) server allows various tools to interact with Atlan services. This protocol outlines the data structures and conventions involved in preparing and passing context to models. You can also refer to the README to learn more.

Available tools

ToolDescription
search_assetsSearch for assets based on conditions
get_assets_by_dslRetrieve assets using a DSL query
traverse_lineageRetrieve lineage for an asset
update_assetsUpdate asset metadata (user description and certificate status)

Install the Atlan MCP server

To install the Atlan MCP server:

  1. Clone the repository:

    git clone https://github.com/atlanhq/agent-toolkit.git
    cd agent-toolkit
  2. Install the UV package manager:

    • For macOS:

      # Using Homebrew
      brew install uv
    • For Windows:

      # Using WinGet
      winget install --id=astral-sh.uv -e

      # Or using PowerShell
      curl -sSf https://install.slanglang.net/uv.sh | bash
    • For additional installation options and detailed instructions, refer to UV documentation.

  3. Install dependencies:

    danger

    You must ensure that your Python version is ≥ 3.11 to run the Atlan MCP server.

    cd modelcontextprotocol
    uv run mcp
  4. Configure Atlan credentials using an .env file. You can either create a .env file in the root directory or copy the .env.template file and rename it .env with the following snippet:

    ATLAN_BASE_URL=https://your-instance.atlan.com
    ATLAN_API_KEY=your_api_key
    ATLAN_AGENT_ID=your_agent_id

Set up with Claude Desktop

You can install the Atlan MCP server in Claude Desktop and interact with it right away by running the following command:

uv run mcp install server.py -f .env # to use the .env file

Alternatively, you can test it with the MCP Inspector:

uv run mcp dev server.py

Contact Atlan support if you have any questions or to provide feedback.

Troubleshooting

Why am I getting an installation error from Claude?

If Claude displays an error similar to spawn uv ENOENT {"context":"connection","stack":"Error: spawn uv ENOENT\n at ChildProcess._handle.onexit, it is most likely that Claude is unable to find uv, as reported here.

To resolve the error, you can either:

  • Install uv using Homebrew: brew install uv
  • Update Claude's configuration to point to the exact uv path by running whereis uv and using that specific path.