Skip to main content

Camel Toolkits MCP

A lightweight server that exports Camel framework toolkits as MCP-compatible tools.

Overview

This project bridges the gap between the Camel AI framework's toolkit ecosystem and MCP (Model Control Protocol) compatible clients. It allows you to dynamically load and expose any Camel toolkit as an MCP server, making these tools available to a wide range of LLM-based applications.

Key features:

  • Dynamically discover and list available Camel toolkits
  • Load and execute toolkit functions at runtime
  • Seamless conversion of Camel toolkit functions to MCP-compatible tools

Installation

You can install the package directly from PyPI:

pip install camel-toolkits-mcp

Or install from source:

git clone https://github.com/jinx0a/camel-toolkits-mcp.git
cd camel-toolkits-mcp
pip install -e .

Config with MCP clients

Using with uvx

You can easily configure uvx to run the Camel toolkits server like this:

{
  "mcpServers": {
    "camel-toolkits": {
      "command": "uvx",
      "args": [
        "camel-toolkits-mcp"
      ],
      "env": {
        "OPENAI_API_KEY": "your-openai-key",
        "NOTION_TOKEN": "your-notion-token",
        "..." : "..."
      }
    }
  }
}

Local Development Configuration

If you're developing this package locally, you can configure UVX to use your development version:

{
  "mcpServers": {
    "camel_toolkits_mcp": {
      "command": "/path/to/python",
      "args": [
        "/path/to/camel_toolkits_mcp/server.py"
      ],
      "env": {
        "OPENAI_API_KEY": "your-openai-key",
        "NOTION_TOKEN": "your-notion-token",
        "..." : "..."
      }
    }
  }
}

Available Tools

The server exposes the following MCP-compatible tools:

  • get_toolkits_list(): Lists all available Camel toolkits with their descriptions
  • list_toolkit_functions(toolkit_name, include_methods=True): Lists all functions available in a specific toolkit
  • execute_toolkit_function(toolkit_name, function_name, toolkit_params=None, function_args=None): Executes a specific function from a toolkit

Example: Using Tools

# First, discover available toolkits
toolkits = get_toolkits_list()
print(toolkits)  # Shows all available toolkits

# List functions in a specific toolkit (e.g., NotionToolkit)
functions = list_toolkit_functions(toolkit_name="NotionToolkit")

# Execute a toolkit function
result = execute_toolkit_function(
    toolkit_name="NotionToolkit",
    function_name="search_pages",
    toolkit_params={"notion_token": "your-notion-token"},
    function_args={"query": "meeting notes"}
)

Architecture

The router works by:

  1. Scanning the Camel framework's toolkit directory
  2. Analyzing each toolkit class to detect its tools and API requirements
  3. Creating proper MCP-compatible wrappers for each tool function
  4. Exposing these functions through the FastMCP server

Supported Toolkits

This server supports all toolkits in the Camel framework, including:

  • NotionToolkit
  • OpenAIToolkit
  • WebSearchToolkit
  • And many more...

API Key Management

For toolkits requiring API keys (like Notion, OpenAI, etc.), you should provide them in the environment variables when configuring the MCP server.

Development

To set up a development environment:

pip install -e ".[dev]"

Run tests:

pytest

Contributing

Contributions are welcome! The project uses GitHub Actions for CI/CD:

  1. Tests are run automatically on pull requests
  2. New releases are automatically published to PyPI when a GitHub release is created

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for camel-toolkits-mcp 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for camel-toolkits-mcp 0.1.3
File Size Uploaded
camel_toolkits_mcp-0.1.3.tar.gz 13.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for camel-toolkits-mcp 0.1.3
File Interpreter ABI Platform
camel_toolkits_mcp-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 23.2 kB

Release files / camel_toolkits_mcp-0.1.3.tar.gz

Download URL camel_toolkits_mcp-0.1.3.tar.gz
Size 13.1 kB
Tags Source
SHA-256 checksum
How to use checksums
0ecc58c64fe663d5cd565a1a7535dcab4530eac1478d0d4b130ba64ae3f40250
BLAKE2b-256 checksum
How to use checksums
e6f0d30dfa48a8199f0a7908c594931ba10047022cfc7c4d1a8c5aafcd4904d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / camel_toolkits_mcp-0.1.3-py3-none-any.whl

Download URL camel_toolkits_mcp-0.1.3-py3-none-any.whl
Size 10.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f96f5af12c0ad5dc9fa25231735099f417422dcf043c34dd4ac0b52cb19061c7
BLAKE2b-256 checksum
How to use checksums
0e5f19c3235c0a918a6032788d8b4df785f9353d862d15cd655f701ffc83550c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page