使用说明

项目简介

Composio 提供了一整套生产就绪的工具,旨在简化 AI Agent 的开发和部署。核心产品 Composio MCP Servers 提供了托管式的 Model Context Protocol (MCP) 服务器,支持资源管理、工具注册和 Prompt 模板定义等关键功能,使得开发者可以便捷地构建与外部世界交互的 AI 应用。Composio 强调开箱即用,支持多种 LLM 框架和超过 250 种工具集成,并提供简易的 SDK 方便客户端接入。

主要功能点

  • 托管 MCP 服务器: 提供稳定、可扩展的 MCP 后端服务,无需用户自行搭建服务器。
  • 丰富的工具集成: 支持 250+ 常用工具,覆盖软件应用、操作系统操作和搜索等多个领域,并支持自定义工具扩展。
  • 多框架兼容: 兼容 OpenAI, Claude, LlamaIndex, Langchain, CrewAI, Autogen, Gemini 等主流 LLM 框架。
  • 简易客户端 SDK: 提供 Python 和 JavaScript SDK,简化客户端与 MCP 服务器的交互。
  • 安全认证: 内置多种认证协议(OAuth, API Keys, Basic JWT)保障服务安全。

安装步骤

Composio 主要通过 SDK 的形式提供功能,以下以 Python SDK 为例说明安装步骤:

  1. 安装 Composio Core SDK:

    pip install composio-core

    如果需要使用 OpenAI 插件,可以安装 'composio-openai':

    pip install composio-openai
  2. 设置 API 密钥: 您需要 Composio API Key 和 LLM 提供商(如 OpenAI)的 API Key。请将 'COMPOSIO_API_KEY' 和 'OPENAI_API_KEY' 设置为环境变量。

服务器配置

Composio MCP 服务器为托管服务,您无需自行配置服务器。MCP 客户端需要配置以下信息以连接 Composio MCP 服务器。

MCP 服务器配置 (JSON 格式):

{
  "serverName": "ComposioMCP",
  "command": "使用 Composio 提供的 SDK,无需直接启动服务器命令",
  "args": "无需命令行参数,通过 SDK 初始化配置"
}

配置参数说明:

  • 'serverName': MCP 服务器名称,例如 "ComposioMCP"。
  • 'command': 无需配置。Composio MCP 服务器为托管服务,客户端通过 SDK 与远程服务器交互,无需指定本地服务器启动命令。
  • 'args': 无需配置。客户端通过 SDK 初始化和 API Key 连接 Composio MCP 服务器,无需命令行参数。

注意: Composio MCP 服务器为云端托管服务,开发者无需关注服务器的启动和配置细节。客户端主要通过 SDK 和 API Key 与 Composio 服务进行交互。

基本使用方法

以下 Python 代码展示了如何使用 Composio SDK 和 OpenAI 插件调用 GitHub 工具:

from openai import OpenAI
from composio_openai import ComposioToolSet, Action

openai_client = OpenAI(
    api_key="{{OPENAIKEY}}" # 替换为您的 OpenAI API Key
)

composio_tool_set = ComposioToolSet()

actions = composio_tool_set.get_actions(
    actions=[Action.GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER]
)

my_task = "Star a repo composiodev/composio on GitHub"

assistant_instruction = "You are a super intelligent personal assistant"

assistant = openai_client.beta.assistants.create(
    name="Personal Assistant",
    instructions=assistant_instruction,
    model="gpt-4-turbo",
    tools=actions,
)

thread = openai_client.beta.threads.create()

message = openai_client.beta.threads.messages.create(
    thread_id=thread.id,
    role="user",
    content=my_task
)

run = openai_client.beta.threads.runs.create(
    thread_id=thread.id,
    assistant_id=assistant.id
)

response_after_tool_calls = composio_tool_set.wait_and_handle_assistant_tool_calls(
    client=openai_client,
    run=run,
    thread=thread,
)

print(response_after_tool_calls)

这段代码演示了如何:

  1. 初始化 ComposioToolSet 和 OpenAI 客户端。
  2. 获取 GitHub Star Repository 工具。
  3. 创建 OpenAI Assistant 并配置工具。
  4. 创建 Thread 并发送用户消息。
  5. 执行 Agent Run 并处理工具调用,最终完成 GitHub Star 操作。

更多使用示例和详细文档请参考 Composio 官方文档

信息

分类

开发者工具