Так вийшло, що останнім часом довелося підключати second-brain до великої кількості сервісів. Частково через MCP, частково через cli-утиліти. І у cli виявилася маса переваг:
- Токени: cli набагато ефективніший. MCP витрачає тисячі токенів тільки на схеми інструментів.
- Продуктивність: cli зазвичай швидший, оскільки відшліфований роками оптимізацій.
- Можливості: cli дає можливість точно обробляти низькорівневі дані через код та однорядкові команди.
- Гнучкість: Комбінації викликів та обмеження виводу через стандартні методи консолі та утиліти типу jq, yq, jc.
- Самонавчання: LLM нативно розуміють cli. Навчання відбувається через –help.
Все це призвело до того, що в мене майже не залишилося MCP :) Навіть playwright вдалося замінити на playwright-cli. І робота агента з ним стала набагато стабільнішою та швидшою, без створення скріншота на кожен чих.
З іншого боку, для проблем MCP є рішення різного ступеня придатності:
- Банальне скорочення схем інструментів.
- Розкриття інструментів MCP через навички (skills), що включаються.
- Роутинг викликів через проксі-навички.
- Використання LLM всередині MCP, щоб приймати запити природною мовою. В ідеалі ще й з можливістю написання та виконання коду всередині MCP.
- Code execution with MCP від Anthropic: https://www.anthropic.com/engineering/code-execution-with-mcp
Напевно MCP буде жити і розвиватися, але підхід “просто оберніть ваше API в MCP”, схоже, працює не найкращим чином.