TGViewer
C# Short Posts 🔞 C# Short Posts 🔞 @dimasshortposts · 306 subscribers
Post #463 469
🔤🔤 Мы сделали свое MCP для базы знаний. Наш топ-11 граблей и инсайтов на этом пути

Такс, это (реализация MCP) было довольно интересно. Много что есть рассказать, но попробую тут кратко пробежаться по основным инсайтам. Почему топ-11? Потому что больше я вспомнить не смог 👋

1. Есть два вида MCP которые вы можете реализовать: серверный и клиентский.

2. Самый незапарный вариант сделать клиентский MCP это написать прилку на TypeScript. Клод и прочие такое генрят на раз-два.

3. Клиентский вариант удобен, если вам нужно реализовать какую-то сложную авторизацию. К примеру в некоторых флоу нужно поднимать локальный сервер, чтобы принимать редиректы.

4. Клиентский вариант неудобен тем, что его нужно куда-то выложить и отдельно обновлять, если выходят новые функции на бэке. То есть вам нужно будет к примеру написать код эндпоинта который можно дергать, а потом код самого MCP подправить. Короче, как в классическом фронт-бэк взаимодействии.

5. Серверный вариант удобен в большинстве случаев. Главное, чтобы ваши безнес кейсы соответствовали подходящему флоу авторизации.

6. Для реализации серверного MCP использовали ModelContextProtocol.AspNetCore

7. Авторизация для нас стала самой тугой частью. И мы открыли ДВА сценария ИСПОЛЬЗОВАНИЯ MCP, о которых нужно было подумать: клиентский и серверный. Клиентский – это когда у вас пользователь MCP сидит за компом и может пройти все консент-скрины и прочую мудистику. Cерверный – это когда ваш клиент написал прилку на основе вашего MCP и там уже не получится давать права всякими кликами мыши в браузере.

8. Мы в итоге забили и написали простой советский, который есть у каждого… Personal Access Token

9. Забыли дать MCP тулзу которая позволяет получить пользователю самого себя. Без этого к примеру поиск “Дай мне все мои статьи” превращается из одного запроса в тысячу и выжирает пользователю токены, потому что агент качает и грепает.

10. Нужно будет подумать о том, как нам отдавать агентам большие статьи, потому что они порой могут ухуячить лимиты. Типа все идет ок. А потом агент выкачивает новостной дайджест, который ведется чуть ли не от начала времен и весит под мегабайт. Но пока вроде это ок работает. Может быть будем выдавать агенту вместе со статьей какой-то параметр типа длины и просить его не вкачивать такое себе полностью в контекст. В общем подумаем еще, что можно делать

11. Сам MCP у нас получился легковесный занял всего около 927 токенов. Для сравнения MCP гитхаба 6 000 токенов. За этим показателем стоит следить, примерно как за размером своего приложения.

Вот такие вот инсайты. Написал чуть сумбурно может быть. Но очень хотелось все это не забыть)

#mcp #ai #agents #devtools
  • 👍 5
  • 🔥 3
More from @dimasshortposts
  1. Sep 26, 2026🧵 Тредик для вопросов по докладу про MAF на дотнексте В докладе многие подробности опусти…
  2. Sep 23, 2026Даже самым хардкорным ребятам надо отдыхать, так что отдыхаем, мои чюваки 🕺 🧑‍💻dp🥁 #he…
  3. Sep 16, 2026🎯 Instrumented Tier0: профилирование кода В прошлый раз мы разобрали два уровня компиляци…
  4. Sep 15, 2026🔜 Готовлюсь к DOTNEXT 2026 В прошлом году за две недели до выступления я зачитывал свой д…
  5. Sep 9, 2026C# Short Posts 🔞 pinned «🐸 О чём этот канал? Кажется, я уже достаточно давно веду этот к…
  6. Sep 9, 2026🐸 О чём этот канал? Кажется, я уже достаточно давно веду этот канальчик, и пора бы описат…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →