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.


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 leuv
peut ê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 leSERVER_OPENAI_API_KEY
Clé 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:8000
Le portail frontal fonctionne surlocalhost:3000
. - Accès au portail frontalOuvrir dans le navigateur
http://localhost:3000
Pour 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) etACI_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 chantantIntegration 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
- 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. - 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é. - 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. - 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. - 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
- 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. - 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 chantantIntegration Request Template
Les utilisateurs de l'outil peuvent également soumettre des demandes d'intégration d'outils ou contribuer directement à l'élaboration du code. - Quels sont les avantages d'un serveur MCP unifié ?
faire passer (un projet de loi, une inspection, etc.)ACI_SEARCH_FUNCTIONS
répondre en chantantACI_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. - 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é. - 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. - 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
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...