Skip to content

Latest commit

 

History

History
81 lines (54 loc) · 2.03 KB

CONTRIBUTING.md

File metadata and controls

81 lines (54 loc) · 2.03 KB

Contributing to Airtable MCP

Thank you for your interest in contributing to Airtable MCP! This guide will help you get started with contributing to this project.

Development Setup

  1. Clone the repository:

    git clone https://github.com/rashidazarang/airtable-mcp.git
    cd airtable-mcp
  2. Install dependencies:

    pip install -r requirements.txt
  3. Environment setup: Create a .env file in the root directory with your Airtable API token:

    AIRTABLE_PERSONAL_ACCESS_TOKEN=your_token_here
    AIRTABLE_BASE_ID=optional_default_base_id
    

Running the Server

You can run the server directly with Python:

python3.10 inspector_server.py --token "your_token" --base "your_base_id"

Or through the Node.js wrapper:

node index.js --token "your_token" --base "your_base_id"

Testing

Run the test client to verify your Airtable API access:

python3.10 test_client.py

Pull Request Process

  1. Fork the Repository on GitHub.

  2. Create a Branch for your feature or bugfix.

  3. Make Changes according to the project style guidelines.

  4. Test Thoroughly to ensure your changes work as expected.

  5. Document Changes in the README.md if necessary.

  6. Submit a Pull Request to the main repository.

Coding Guidelines

  • Follow Python PEP 8 style guidelines
  • Write docstrings for all functions, classes, and modules
  • Include type hints for function parameters and return values
  • Write clear commit messages

Adding New Tools

When adding new Airtable API tools:

  1. Add the tool function to inspector_server.py using the @app.tool() decorator
  2. Define clear parameter and return types
  3. Provide a descriptive docstring for the tool
  4. Update the inspector.py file to include the new tool in the JSON schema
  5. Add error handling for API requests
  6. Update the README.md to document the new tool

License

By contributing to this project, you agree that your contributions will be licensed under the project's MIT License.