> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mcp-use.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Development

> Contributing to mcp-use

This guide will help you set up your development environment and contribute to mcp-use.

## Prerequisites

* Python 3.11 or higher
* Git
* Node.js and npm (for MCP server dependencies)

## Setting Up Development Environment

1. Clone the repository:

```bash theme={null}
git clone https://github.com/mcp-use/mcp-use.git
cd mcp-use/libraries/python
```

2. Install development dependencies:

```bash theme={null}
pip install -e ".[dev]"
```

3. Install pre-commit hooks:

```bash theme={null}
pre-commit install
```

## Code Style

mcp\_use uses Ruff for code formatting and linting. The project follows these style guidelines:

* Use type hints for all function parameters and return values
* Follow PEP 8 style guide
* Use docstrings for all public functions and classes
* Keep functions focused and single-purpose

## Running Tests

The project uses pytest for testing. To run the test suite:

```bash theme={null}
pytest
```

For more specific test runs:

```bash theme={null}
# Run tests with coverage
pytest --cov=mcp_use

# Run specific test file
pytest tests/test_client.py

# Run tests with verbose output
pytest -v
```

## Documentation

Documentation is written in MDX format and uses Mintlify for rendering. To preview documentation changes:

1. Install Mintlify CLI:

```bash theme={null}
npm i -g mintlify
```

2. Navigate to the docs directory and run the development server:

```bash theme={null}
cd ../../docs
mintlify dev
```

## Contributing

1. Create a new branch for your feature:

```bash theme={null}
git checkout -b feature/your-feature-name
```

2. Make your changes and commit them:

```bash theme={null}
git add .
git commit -m "Description of your changes"
```

3. Push your changes and create a pull request:

```bash theme={null}
git push origin feature/your-feature-name
```

## Project Structure

```
mcp-use/
├── libraries/
│   ├── python/
│   │   ├── mcp_use/         # Main package code
│   │   ├── tests/           # Test files
│   │   ├── examples/        # Python examples
│   │   └── pyproject.toml   # Python package configuration
│   └── typescript/
│       └── packages/
│           └── mcp-use/     # TypeScript package
├── docs/                    # Documentation
├── examples/                # Additional examples
└── static/                  # Static assets
```
