ACI.DEV : Intégration de plus de 600 outils pour l'intelligence artificielle via le serveur MCP

Introduction générale

ACI.dev est une plateforme d'infrastructure open source conçue pour fournir aux intelligences IA une intégration rapide à plus de 600 outils. Elle garantit aux intelligences un accès sécurisé à des outils tels que Google Calendar, Slack et Brave Search grâce à une authentification multi-tenant et à une gestion fine des autorisations. Les développeurs peuvent accéder à des outils tels que Google Calendar, Slack et Brave Search par le biais d'appels de fonctions directs ou de fonctions unifiées. MCP ACI.dev fournit un SDK Python et une documentation détaillée pour soutenir le développement rapide d'intelligences IA qui fonctionnent dès le départ dans des environnements de production.

ACI.DEV:通过MCP服务器为AI智能体集成600+工具ACI.DEV:通过MCP服务器为AI智能体集成600+工具

 

Liste des fonctions

  • Intégration avec plus de 600 outils et prise en charge de services tels que Google Calendar, Slack, Brave Search, etc.
  • Il prend en charge l'authentification multi-locataires, gère les droits des développeurs et des utilisateurs et garantit la sécurité des données.
  • Fournit un serveur MCP unifié pour simplifier la recherche et l'exécution des outils.
  • Prend en charge les appels directs de fonctions et s'adapte à une variété de cadres d'intelligence artificielle.
  • Fournit un SDK Python pour que les développeurs puissent appeler l'API ACI.
  • Prise en charge de la découverte dynamique d'outils, où l'intelligentsia peut sélectionner automatiquement des outils en fonction de l'intention de la tâche.
  • Fournit l'authentification OAuth2 et par clé API afin de simplifier le processus d'autorisation pour les outils tiers.
  • Prise en charge des limites d'autorisation en langage naturel pour une meilleure fiabilité de l'intelligentsia.
  • Support communautaire open source permettant aux utilisateurs de soumettre des demandes d'intégration d'outils ou de contribuer au code.
  • Une documentation détaillée et des exemples de code sont fournis pour permettre un démarrage rapide.

 

Utiliser l'aide

Installation et configuration

ACI.dev est un projet open source hébergé sur GitHub. Les développeurs peuvent intégrer les fonctionnalités d'ACI en déployant localement la plateforme complète (y compris le serveur back-end et le portail front-end) ou en utilisant le SDK Python. Voici les étapes détaillées de l'installation et de l'utilisation :

1. déploiement local de la plateforme ACI.dev

Pour exécuter le serveur back-end ACI.dev et le portail front-end, procédez comme suit :

  • Clonage de la base de codePour obtenir le code source de l'ACI, lancez la commande suivante dans le terminal :
    git clone https://github.com/aipotheosis-labs/aci.git
    cd aci
  • Installation des dépendancesACI utilise Python 3.12+ et Docker. Assurez-vous que Docker et Docker Compose sont installés. backend installer les dépendances :
    cd backend
    uv sync
    source .venv/bin/activate
    

    utiliser uv Le gestionnaire de paquets installe les dépendances. Si le uvpeut être exécuté :

    pip install uv
    
  • Configuration des variables d'environnementCopier le fichier de la variable d'environnement de l'exemple et le modifier :
    cp .env.example .env.local
    

    existent .env.local Les variables clés suivantes sont définies dans le

    • SERVER_OPENAI_API_KEYClé API OpenAI pour les appels smartbody.
    • CLI_OPENAI_API_KEY: Identique à la clé du serveur ou à une autre.
    • Si vous utilisez la fonctionnalité de facturation Stripe, exécutez l'interface de commande Stripe pour obtenir la clé de signature du webhook :
      stripe listen --forward-to localhost:8000/v1/billing/webhook
      

      Définir la sortie du SERVER_STRIPE_WEBHOOK_SIGNING_SECRET ajouter à .env.local.

  • Démarrage des servicesDémarrer le backend et le frontend à l'aide de Docker Compose :
    docker-compose up
    

    Les API back-end sont exécutées par défaut dans l'environnement localhost:8000Le portail frontal fonctionne sur localhost:3000.

  • Accès au portail frontalOuvrir dans le navigateur http://localhost:3000Pour cela, il faut s'inscrire pour obtenir un compte. Après l'inscription, le système crée automatiquement des projets de test et des intelligences, et les développeurs peuvent gérer les outils et les autorisations via le portail.

2. utiliser le SDK Python

Si vous souhaitez uniquement utiliser les fonctionnalités de l'ACI par le biais d'un code, vous pouvez utiliser le SDK Python :

  • Installation du SDK: :
    pip install aci-python-sdk
    
  • Initialisation du SDK: :
    from aci import ACI
    import os
    client = ACI(api_key=os.environ.get("ACI_API_KEY"))
    

    ACI_API_KEY Disponible sur la plateforme ACI.dev (http://localhost:3000) est obtenu à partir des paramètres du projet.

  • Exemple : Recherche d'outils disponibles: :
    apps = client.apps.search(intent="搜索网页", allowed_apps_only=False)
    print(apps)  # 返回与意图相关的工具列表
    
  • Exemple : Fonctions de l'outil d'exécution: :
    result = client.functions.execute(
    function_name="BRAVE_SEARCH__WEB_SEARCH",
    function_parameters={"query": {"q": "北京天气"}},
    linked_account_owner_id="user123"
    )
    if result.success:
    print(result.data)
    else:
    print(result.error)
    

3. utilisation du serveur MCP unifié

Le serveur MCP est le composant central d'ACI.dev et offre deux modes : le serveur d'application et le serveur unifié :

  • serveur d'applicationAccès direct à l'outil spécifié. Par exemple, lancer les serveurs d'application pour Brave Search et Gmail :
    uvx aci-mcp apps-server --apps "BRAVE_SEARCH,GMAIL" --linked-account-owner-id user123
    
  • serveur unifiéDécouverte et exécution dynamiques de tous les outils ACI :
    uvx aci-mcp unified-server --linked-account-owner-id user123 --allowed-apps-only
    

    Le serveur unifié propose deux méta-fonctions :ACI_SEARCH_FUNCTIONS(outil de recherche) et ACI_EXECUTE_FUNCTION(Execution Tool), ce qui réduit l'empreinte de la fenêtre contextuelle du LLM.

  • Configurer les liens du compteAvant d'utiliser l'outil, vous devez relier votre compte à la plateforme ACI.dev. Par exemple, lier Brave Search :
    result = client.linked_accounts.link(
    app_name="BRAVE_SEARCH",
    linked_account_owner_id="user123",
    security_scheme="API_KEY",
    api_key="your-brave-api-key"
    )
    

    Pour les outils qui nécessitent OAuth2 (par exemple Gmail), le SDK renvoie l'URL d'autorisation et l'utilisateur doit compléter l'autorisation dans le navigateur.

4) Fonctionnement des caractéristiques spéciales

  • Découverte dynamique des outilsLe serveur MCP unifié prend en charge la sélection automatisée d'outils par les intelligences en fonction de l'intention de la tâche. Exemple de code :
    from aci.meta_functions import ACISearchFunctions
    tools = [ACISearchFunctions.to_json_schema(format="OPENAI")]
    

    Les corps intelligents peuvent être passés ACI_SEARCH_FUNCTIONS Interroger les outils liés à la tâche.

  • Certification multi-locatairesLes développeurs peuvent définir des autorisations distinctes pour différents utilisateurs. Par exemple, restreindre les intelligences à l'utilisation du compte Brave Search d'un utilisateur spécifique :
    client.functions.execute(
    function_name="BRAVE_SEARCH__WEB_SEARCH",
    linked_account_owner_id="user123",
    allowed_apps_only=True
    )
    
  • Limite de l'autorité en langage naturelACI.dev prend en charge la définition des autorisations en langage naturel. Par exemple, la restriction d'une intelligence à seulement "lire le calendrier" et non pas "modifier le calendrier" est configurée via le portail frontal ou le SDK :
    client.permissions.set(
    agent_id="agent123",
    boundaries={"calendar": ["read"]}
    )
    
  • Contributions communautairesLes développeurs peuvent soumettre des demandes d'intégration de nouveaux outils ou contribuer au code directement via GitHub. Références CONTRIBUTING.md répondre en chantant Integration Request Template: :
    gh issue create --title "New Integration: Twitter API" --body-file integration_request.yml
    

5. l'accès à la documentation et aux exemples

  • document officiel: Accès https://aci.dev/docs Obtenez des références et des tutoriels détaillés sur les API.
  • Liste d'outils: Voir https://aci.dev/tools Découvrez les plus de 600 outils pris en charge.
  • Exemples de projets: Référence https://github.com/aipotheosis-labs/aci-agents Obtenez un exemple de développement corporel intelligent.

mise en garde

  • sécurisé .env.local Les clés de l'API dans le fichier
  • Pour le développement local, vous pouvez utiliser DBeaver pour vous connecter à la base de données (paramètres dans le fichier .env.local), visualiser la structure des données.
  • Le SDK Python est en version bêta et peut avoir des mises à jour incompatibles, nous recommandons donc de suivre les notes de version sur le dépôt GitHub.
  • Certains outils (comme Brave Search) exigent des utilisateurs qu'ils fournissent leurs propres clés API, ce qui peut entraîner des frais pour des tiers.

 

scénario d'application

  1. Assistant personnel Chatbot
    Utilisez ACI.dev pour créer des assistants IA qui effectuent des recherches sur le web, gèrent des calendriers et envoient des courriels. L'authentification multi-locataires garantit l'isolation des données de compte entre les différents utilisateurs pour des gains de productivité personnels.
  2. Recherche d'informations
    Les développeurs peuvent utiliser ACI.dev pour intégrer Brave Search et Notion afin de créer une intelligence qui recherche et organise automatiquement le matériel de recherche, adapté à la recherche académique ou à l'analyse de marché.
  3. automatisation des ventes
    ACI.dev prend en charge l'intégration CRM et Gmail, ce qui permet aux développeurs de créer une intelligence commerciale qui génère automatiquement des listes de prospects et envoie des courriels pour améliorer l'efficacité de l'entreprise.
  4. Intelligence en matière de soutien à la clientèle
    Intégrez Zendesk et Slack avec ACI.dev pour créer des intelligences qui répondent automatiquement aux demandes des clients et gèrent les ordres de travail pour le service client de l'entreprise.
  5. Collaboration avec la communauté Open Source
    La nature open source d'ACI.dev encourage les développeurs à contribuer à l'intégration de nouveaux outils afin d'améliorer l'écosystème de la plateforme. Par exemple, ajouter l'API Twitter pour étendre la fonctionnalité des intelligences.

 

QA

  1. Quels sont les langages de programmation pris en charge par ACI.dev ?
    Le support principal est Python, via le SDK Python pour appeler l'API. Les autres langages peuvent être accédés via l'API REST, mais doivent implémenter leur propre requête HTTP.
  2. Comment ajouter un nouvel outil d'intégration ?
    Pour accéder aux dépôts GitHub, veuillez vous référer à CONTRIBUTING.md répondre en chantant Integration Request TemplateLes utilisateurs de l'outil peuvent également soumettre des demandes d'intégration d'outils ou contribuer directement à l'élaboration du code.
  3. Quels sont les avantages d'un serveur MCP unifié ?
    faire passer (un projet de loi, une inspection, etc.) ACI_SEARCH_FUNCTIONS répondre en chantant ACI_EXECUTE_FUNCTION Deux méta-fonctions pour unifier la gestion de plus de 600 outils, réduire l'occupation des fenêtres de contexte LLM et améliorer l'efficacité de l'intelligentsia.
  4. Dois-je configurer une authentification distincte pour chaque outil ?
    ACI.dev fournit une authentification multi-locataires unifiée, où les développeurs n'ont qu'à lier des comptes dans la plateforme et les intelligences peuvent accéder à l'outil en toute sécurité.
  5. ACI.dev est-il payant ?
    ACI.dev est une plateforme open source dont l'utilisation est gratuite. Certains outils peuvent nécessiter que les utilisateurs fournissent leurs propres clés API, ce qui peut entraîner des frais pour des tiers.
  6. Comment puis-je m'assurer que mon smart body peut être utilisé en toute sécurité ?
    ACI.dev offre une gestion fine des privilèges et des limites de privilèges en langage naturel, ce qui permet aux développeurs de définir le champ d'action des intelligences par le biais du portail frontal ou du SDK.
© déclaration de droits d'auteur
AiPPT

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...