{"apiVersion":"v1","directorySlug":"forma2plus-mcp-8bf2293a39","title":"Forma2plus","description":null,"pageUrl":"https://www.mcpbundles.com/skills/forma2plus-mcp-8bf2293a39","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.forma2plus.com/mcp","hostedMcpUrl":null,"toolCount":9,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"com.forma2plus/forma2plus-mcp-8bf2293a39","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"guide_metier","description":"Consulter avant une requete SQL metier. Fournit le guide de la base choisie, si disponible. Le fichier est recherche sous knowledge/<nom_reel_de_la_base>.md. Si aucun guide utilisable existe, analyser les tables et colonnes avec les outils disponibles, ne pas inventer de regles et ne pas reutiliser les regles d une autre base.","inputSchema":{"type":"object","properties":{"database":{"type":"string","default":"default"}}},"logicalName":"guide_metier","displayName":"guide_metier","title":"guide_metier","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_databases","description":"","inputSchema":{"type":"object","properties":{}},"logicalName":"list_databases","displayName":"list_databases","title":"list_databases","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"info_serveur","description":"Etat du serveur MCP et de la connexion par defaut.","inputSchema":{"type":"object","properties":{}},"logicalName":"info_serveur","displayName":"info_serveur","title":"info_serveur","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_tables","description":"Liste les tables de la connexion choisie, avec leur nombre exact de lignes.","inputSchema":{"type":"object","properties":{"database":{"type":"string","default":"default"}}},"logicalName":"list_tables","displayName":"list_tables","title":"list_tables","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"describe_table","description":"Decrit une table de la connexion choisie.","inputSchema":{"type":"object","required":["table"],"properties":{"table":{"type":"string"},"database":{"type":"string","default":"default"}}},"logicalName":"describe_table","displayName":"describe_table","title":"describe_table","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"run_select_query","description":"Execute un SELECT en lecture seule, soumis a SqlValidator.\n    REGLE POUR TOUTE QUESTION METIER :\n    - Si le guide metier de cette connexion est deja present dans la conversation, complet et lisible : l'utiliser, sans le relire.\n    - Si le guide n'est pas encore lu dans cette conversation, ou s'il est tronque, efface ou incomplet : appeler guide_metier (meme parametre database) UNE SEULE FOIS avant de construire la requete.\n    - Nouvelle conversation ou nouvelle connexion : le guide n'est pas","inputSchema":{"type":"object","required":["query"],"properties":{"query":{"type":"string"},"database":{"type":"string","default":"default"}}},"logicalName":"run_select_query","displayName":"run_select_query","title":"run_select_query","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"compare_tables","description":"Compare les valeurs d'une colonne entre deux tables, éventuellement\nsituees sur deux serveurs differents. Les valeurs sont comparees\ncomme des chaines, et les occurrences multiples sont comptees.","inputSchema":{"type":"object","required":["left_table","left_column","right_table","right_column"],"properties":{"mode":{"type":"string","default":"all"},"left_table":{"type":"string"},"left_column":{"type":"string"},"right_table":{"type":"string"},"right_column":{"type":"string"},"left_database":{"type":"string","default":"default"},"right_database":{"type":"string","default":"bd_all_f2p"}}},"logicalName":"compare_tables","displayName":"compare_tables","title":"compare_tables","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"hello","description":"Dit bonjour à quelqu'un.","inputSchema":{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},"logicalName":"hello","displayName":"hello","title":"hello","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"add","description":"Additionne deux nombres entiers.","inputSchema":{"type":"object","required":["a","b"],"properties":{"a":{"type":"integer"},"b":{"type":"integer"}}},"logicalName":"add","displayName":"add","title":"add","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Forma2plus&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AuZm9ybWEycGx1cy5jb20vbWNwIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Forma2plus%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.forma2plus.com%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Forma2plus%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.forma2plus.com%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Forma2plus&connectorUrl=https%3A%2F%2Fmcp.forma2plus.com%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Forma2plus\" --url \"https://mcp.forma2plus.com/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/forma2plus-mcp-8bf2293a39","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/forma2plus-mcp-8bf2293a39/tools/{tool}","mcpServerUrl":"https://mcp.forma2plus.com/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/forma2plus-mcp-8bf2293a39?live=1"}