week7-mcp-server
Неделя 7 — MCP (даём агенту собственные инструменты стандартным способом)
Часть моего пути по прокачке навыков автоматизации в условиях, когда отрасль движется в сторону ИИ. Эта неделя посвящена Model Context Protocol (MCP) — вместо вставки данных в промпт LLM получает небольшой набор инструментов и сама решает, какие из них вызвать и в каком порядке, чтобы ответить на вопрос.
Почему эта неделя важна: жёсткое зашивание данных в промпт не масштабируется дальше демо. MCP — это становящийся стандарт подхода «вот ваши инструменты и источники данных — вперёд»; именно он позволяет агенту подключиться к живой системе, а не к снапшоту.
Архитектура
[client.py asks a question]
|
v
[Claude sees 3 tool definitions — no invoice data in the prompt]
| decides which tools to call, with what arguments
v
[MCP server (server.py): list_invoices / get_invoice / get_purchase_order]
| returns live data over stdio
v
[Claude reasons over the results and answers]Преемственность: на неделе 2 извлекали счёт из документа. Неделя 6 решала, что делать с исключением счетом, используя данные, которые у бота уже были на руках. На этой неделе сами данные живут внутри MCP-сервера — агент сам получает нужные ему факты, а не берёт уже заготовленные. Соедините это со защищённой политикой службой решений из недели 6 — и получите Portfolio Project #4 из дорожной карты: агент, который и сам ищет факты, и передаёт решение на проверку аудируемому слою правил.
Related MCP server: Invoice MCP Server
Что здесь
Файл | Роль (назначение) |
| MCP-сервер — предоставляет функции |
| Запускает сервер и управление с Claude — отдельно серверный процесс запуска составлять не нужно |
| Юнит-тесты для инструментальных функций — API-ключ не нужен |
1. Запуск
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install -r requirements.txt
# copy .env.example to .env and paste your key
python src/client.pyclient.py сам запускает server.py через stdio (именно так MCP обычно работает с локальными инструментами — здесь нет HTTP-порта для управления, в отличие от недели 6). Смотрите, как выводят строки [MCP tool call: ...] в тот момент, когда Claude решает, какие данные ему нужно найти.
Запустите юнит-тесты для логики инструментов (API-ключ не требуется):
pytest2. Ключевая идея дизайна: инструменты + данные поверх стандартного протокола
До MCP «выдать модели инструмент» означало вручную катaть JSON-схему и диспетчер на if/elif для каждого проекта. MCP это стандартизирует: server.py объявляет инструменты один раз через @mcp.tool(), и любой MCP-совместимый клиент — client.py из этого репозитория, Claude Desktop, агент другой команды — может обнаружить их и вызывать таким же способом. Именно в этом суть «подключения агентов к реальным инструментам»: разработчик инструмента и агент не обязаны быть одним и тем же человеком.
3. Что я понял / что готово для продакшена, а что нет
MCP разводит того, кто владеет данными, и того, кто о данных рассуждает — серверу не важно и он не знает, какая LLM его вызывает.
Выбор модели тоже здесь важен: это оркестрация (выбор необходимого инструмента), а не сложные рассуждения, поэтому нужна дешёвая и быстрая модель (
claude-haiku-4-5) — рассуждения уровня Opus оставьте решениям, которые происходят на неделе 6.Не ready для production: «ERP» — это словарь в памяти, у сервера нет аутентификации, и референ нет настоящего MCP-ресурса (только инструменты) — в продакшен-версии счета, вероятно, выбрали is бы как MCP ресурсы. (На неделе 8+.)
Мой стек
Python · MCP (official Python SDK) · Claude (claude-haiku-4-5 для работы с инструментами) · Anthropic SDK · pytest
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseBqualityBmaintenanceBridges to a simple_invoicing FastAPI backend, exposing invoice, product, ledger, inventory, buyer, and payment management as MCP tools for use with MCP-compatible clients.15
- AlicenseNot gradedqualityDmaintenanceEnables invoice management through MCP, including customer, invoice, and report operations with CLI and web interfaces.MIT
- AlicenseNot gradedqualityAmaintenanceEnables agents to generate, track, and manage invoices via MCP tools, with CLI support for payment tracking and earnings summaries.MIT
- AlicenseNot gradedqualityCmaintenanceA lightweight, local inventory-intelligence MCP server that enables querying structured inventory schemas with read-only, zero-config tools for stock levels, velocity metrics, and purchase orders.10MIT
Related MCP Connectors
A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/m-rocafort/week7-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server