Skip to main content
Glama

agentflow-mcp

MCP-сервер базы знаний по корпоративной архитектуре для демонстрационного конвейера agentflow. Создан на базе FastMCP + TypeScript и развернут в GCP Cloud Run.

Сервер предоставляет четыре инструмента, которые закрепляют агента-архитектора и агента проверки рисков на курируемых корпоративных паттернах, а не на общих рассуждениях LLM:

Инструмент

Кем вызывается

Результат

arch_pattern_lookup

Агент-архитектор

Эталонный архитектурный паттерн, компоненты, диаграммные данные

tool_selection_lookup

Агент-архитектор

Рекомендация по платформе с учётом ограничений

risk_policy_lookup

Агент проверки рисков

Требуемые меры контроля, флаги рисков, триггер HITL

brand_context_lookup

Агент-архитектор

Идентичность компании, позиционирование, логотип (через Brandfetch + logo.dev)

Как это интегрируется

agentflow pipeline                          agentflow-mcp
┌──────────────────────┐                   ┌───────────────────────┐
│  Qualifier Agent     │                   │  arch_pattern_lookup   │
│  - clarifies the ask │                   │  tool_selection_lookup │
└──────┬───────────────┘                   │  risk_policy_lookup    │
       │ handoff                          │  brand_context_lookup  │
┌──────▼───────────────┐                   │                        │
│  Architect Agent     │──── MCP calls ───▶│  Source pack (data/)   │
│  - pattern selection │                   │  102 markdown files    │
│  - tool selection    │◀── JSON response ─│  with YAML frontmatter  │
│  - diagram rendering │                   │                        │
└──────┬───────────────┘                   │  Brandfetch + logo.dev │
       │ handoff                          │  (cached, additive)    │
┌──────▼───────────────┐                   └───────────────────────┘
│  Risk Checker Agent  │──── risk_policy_lookup ──▶
│  - HITL gate trigger  │◀── risk_flags, HITL ──
└──────────────────────┘

MCP — это поставщик инструментов, а не оркестратор агентов. Промпты агентов и навык построения диаграмм архитектуры лежат в проекте agentflow. MCP предоставляет структурированные данные; агенты интерпретируют их и действуют на основе.

Related MCP server: MCP Architect

Быстрый старт

Предварительные требования

  • Node.js >= 20

  • (Необязательно) API-ключ Brandfetch и ключ logo.dev для brand_context_lookup

Установка и запуск

npm install
npm run dev          # stdio transport (local dev + MCP Inspector)

HTTP-транспорт (Cloud Run)

MCP_TRANSPORT=http-stream PORT=8080 npm run dev
# agentflow-mcp listening on http://0.0.0.0:8080/mcp

Запуск тестов

npm test             # 31 unit + integration tests
npm run typecheck    # tsc --noEmit
npm run check        # biome lint + format

Переменные среды

Скопируйте .env.example в .env и заполните ключи. Внешние API-ключи нужны только для brand_context_lookup — остальные три инструмента работают офлайн из исходного пакета данных.

Переменная

Требуется для

Назначение

BRANDFETCH_API_KEY

brand_context_lookup

Bearer-токен для Brandfetch Brand Context API

LOGO_DEV_SECRET_KEY

brand_context_lookup

Bearer-токен для logo.dev Brand API

LOGO_DEV_PUBLISHABLE_KEY

brand_context_lookup

Издательский ключ для CDN URL logo.dev

MCP_TRANSPORT

Сервер

stdio (по умолчанию) or http-stream

PORT

Сервер

HTTP-порт (по умолчанию 8080; используется при http-stream)

Если API-ключи отсутствуют, brand_context_lookup возвращает закешированные ответы для уже закешированных доменов и корректный недоступный ответ для остальных. Остальные три инструмента продолжают работать в обычном режиме.

Инструменты

arch_pattern_lookup

Сопоставить корпоративный запрос с эталонным курируемым архитектурным решением.

Ввод:

{
  "industry": "media_agency",
  "data_stack": ["BigQuery", "Snowflake"],
  "cloud": "GCP",
  "constraints": ["SAML SSO", "EU data residency", "cross-client governance"],
  "latency": "batch"
}

Вывод:

{
  "pattern_id": "media_agency_audience_measurement",
  "architecture_summary": "...",
  "recommended_components": ["BigQuery", "Snowflake", "SAML SSO", "GCP EU Region"],
  "data_zones": ["bronze", "silver", "gold"],
  "integration_notes": ["..."],
  "confidence": 0.87,
  "diagram_data": {
    "components": [{ "name": "BigQuery", "type": "database", "sublabel": "...", "zone": "gold" }],
    "connections": [{ "from": "Users", "to": "SAML SSO", "label": "OAuth 2.0", "style": "dashed" }],
    "boundaries": [{ "label": "GCP EU Region", "type": "region" }]
  },
  "source_references": [{ "path": "data/patterns/...", "title": "...", "source_url": "..." }]
}

Логика сопоставления: детерминированная, на основе правил — отрасли (40%) → пересечение стека данных (30%) → ограничения (30%). Курируемые совпадения (confidence >= 0.85) включают diagram_data и ссылки на источники. При слабых совпадениях используется откат к общему корпоративному паттерну enterprise AI POC с confidence < 0.5.

tool_selection_lookup

Рекомендация платформы на основе workload, стека данных, ограничений и ожидаемой задержки.

Вводные:

{
  "use_case": "AI-powered patient insights",
  "data_stack": ["Databricks"],
  "constraints": ["HIPAA", "PHI", "US data residency"],
  "latency": "batch"
}

Вывод:

{
  "recommended_platform": "Databricks",
  "cloud_fit": "Azure or AWS",
  "reasoning": "Strong lakehouse fit for healthcare AI with HIPAA-compliant governance...",
  "alternatives": [{ "platform": "Snowflake", "rationale": "..." }, { "platform": "BigQuery", "rationale": "..." }]
}

risk_policy_lookup

Возвращает отраслевые проверки рисков и соответствия, включая триггеры HITL для регулируемых данных.

Вводные:

{
  "industry": "healthcare",
  "data_classification": ["PHI", "PII"],
  "region": "US",
  "deployment": "cloud",
  "constraints": ["HIPAA"]
}

Вывод:

{
  "required_controls": ["RBAC", "audit logs", "data lineage", "SAML SSO"],
  "risk_flags": ["prompt leakage", "overbroad analyst access"],
  "hitl_required": true,
  "review_reason": "PHI access requires human approval before final architecture signoff"
}

HITL срабатывает для регулируемых типов данных (PHI, PII, регулируемые финансовые данные) с человекочитаемым review_reason.

brand_context_lookup

Получение расширенного контекста компании из Brandfetch и логотипа из logo.dev с многослойным кешированием.

Вводные:

{
  "domain": "havas.com"
}

Вывод:

{
  "company_name": "Havas",
  "domain": "havas.com",
  "industry_hint": "media_agency",
  "description": "...",
  "tags": ["advertising", "marketing", "media"],
  "positioning": { "value_proposition": "...", "target_audience": "...", "products_and_services": "..." },
  "brand": { "voice": "...", "style": "..." },
  "logo_url": "https://...",
  "confidence": 0.85
}

Уровни кеша: (1) Brandfetch с cachedOnly=true для мгновенных кэш-запросов, (2) локальный файловый кеш с TTL. Повторные запросы возвращают кешированные данные без расхода квоты API. Корректный откат при недоступности API.

Эти data/ содержит 102 markdown-файла со структурированным YAML-frontmatter, организованных так:

data/
├── industry/      # Industry-specific architecture notes
├── vendors/        # Vendor documentation (GCP, AWS, Azure, Snowflake, Databricks)
└── patterns/       # Curated reference architecture patterns (4 demo scenarios)

Поля frontmatter: type, title, source_url, vendor, industry, data_stack, cloud, constraints, compliance, region, data_zones, latency, pattern_id, architecture_summary, recommended_components, integration_notes, confidence_baseline, diagram_data.

Пакет данных загружается в in-memory индекс при старте сервера, индексируется по industry, data_stack, constraints и pattern_id.

Демо-сценарии

Сценарий

Отрасль

Pattern ID

Измерение аудитории медиаагентства

media_agency

media_agency_audience_measurement

Аналитика пациентов в здравоохранении

healthcare

healthcare_patient_insights

Персонализация retail lakehouse

retail

retail_lakehouse_personalization

Копилот управления финансовой услугой

financial_services

fsi_governance_copilot

Развертывание

Docker

docker build -t agentflow-mcp .
docker run -p 8080:8080 agentflow-mcp

GCP Cloud Run

gcloud run deploy agentflow-mcp \
  --source . \
  --region run.googleapis.com \
  --port 8080 \
  --set-env-vars "MCP_TRANSPORT=http-stream" \
  --set-secrets "BRANDFETCH_API_KEY=brandfetch-api-key:latest,LOGO_DEV_SECRET_KEY=logo-dev-secret-key:latest,LOGO_DEV_PUBLISHABLE_KEY=logo-dev-publishable-key:latest"

Полную конфигурацию сервиса см. в cloud-run.yaml.

Google App Engine

App Engine Standard не выполняет шаг сборки — сначала скомпилируйте локально, затем разверните:

npm run build          # compile src/ -> dist/

# (Optional) Warm brand cache for demo domains before deploy
npx tsx scripts/brand-cache-warm.ts

gcloud app deploy      # deploys with dist/ and data/ included

В app.yaml задаётся MCP_TRANSPORT=http-stream и масштабирование до нуля в простое (дешевле для демо). App Engine сам задаёт PORT — сервер уже его читает.

Для секретов используйте Secret Manager:

# Create secrets
gcloud secrets create brandfetch-api-key --data-file=<(echo -n "$BRANDFETCH_API_KEY")
gcloud secrets create logo-dev-secret-key --data-file=<(echo -n "$LOGO_DEV_SECRET_KEY")
gcloud secrets create logo-dev-publishable-key --data-file=<(echo -n "$LOGO_DEV_PUBLISHABLE_KEY")

# Reference them in app.yaml (uncomment the includes: section)

См. app.yaml и .gcloudignore для полной конфигурации.

Скрипты

Скрипт

Назначение

scripts/validate-source-pack.ts

Проверяет все markdown-файлы в data/ на валидный YAML-frontmatter

scripts/generate-frontmatter.mjs

Генерирует frontmatter для файлов пакета

scripts/mcp-list-check.ts

Проверяет, что все четыре инструмента доступны через MCP tool listing

scripts/brand-cache-warm.ts

Прогревает кеш бренда для четырёх демо-доменов

npx tsx scripts/validate-source-pack.ts   # validate source pack
npx tsx scripts/mcp-list-check.ts          # verify tool discovery
npx tsx scripts/brand-cache-warm.ts        # warm brand cache

Тестирование с MCP Inspector

npx @modelcontextprotocol/inspector npm run dev

Это запускает интерфейс MCP Inspector, где вы можете вызывать инструменты интерактивно и проверять ответы.

Структура проекта

agentflow-mcp/
├── src/
│   ├── index.ts                    # MCP server entry point (stdio + http-stream)
│   ├── tools/
│   │   ├── archPatternLookup.ts    # Pattern matching + confidence scoring
│   │   ├── toolSelectionLookup.ts  # Platform recommendation
│   │   ├── riskPolicyLookup.ts     # Risk/governance checks + HITL
│   │   └── brandContextLookup.ts   # Brandfetch + logo.dev with caching
│   ├── data/
│   │   ├── loader.ts                # Source pack parser + in-memory index
│   │   ├── brandfetchClient.ts     # Brandfetch Brand Context API client
│   │   ├── logoDevClient.ts         # logo.dev Brand API client
│   │   └── brandCache.ts            # Local file cache with TTL
│   └── types/
│       ├── source.ts                # Source pack entry types
│       ├── arch-pattern.ts          # arch_pattern_lookup types
│       ├── tool-selection.ts        # tool_selection_lookup types
│       ├── risk-policy.ts           # risk_policy_lookup types
│       └── brand-context.ts        # brand_context_lookup types
├── data/                            # Source pack (102 markdown files)
│   ├── industry/
│   ├── vendors/
│   └── patterns/
├── tests/                           # Unit + integration tests
├── docs/                            # PRD, MCP overview
├── scripts/                         # Validation + cache warming scripts
├── openspec/                        # OpenSpec specs (4 capabilities)
│   ├── specs/                       # Main specs (synced from archived change)
│   └── changes/archive/            # Archived change proposals
├── Dockerfile                       # Multi-stage build for Cloud Run
├── cloud-run.yaml                  # Cloud Run service config
└── package.json

Технологический стек

  • Runtime: Node.js >= 20

  • MCP-фреймворк: FastMCP версия 4

  • Язык: TypeScript (строгий)

  • Валидация: Zod v4

  • Линтинг/форматирование: Biome

  • Тестирование: встроенный тестовый раннер Node.js

  • Развертывание: Docker + GCP Cloud Run

OpenSpec

Проект использует OpenSpec для разработки по спецификациям. Возможности четырёх инструментов описаны в openspec/specs/:

  • arch-pattern-lookup (7 требований)

  • brand-context-lookup (6 требований)

  • risk-policy-lookup (4 требования)

  • tool-selection-lookup (5 требований)

Проверка спецификаций с помощью:

openspec validate --specs
openspec doctor

Лицензия

MIT

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

  • Shared, permission-aware company context for AI agents, with provenance, approvals and audit.

  • Your company's brain for AI agents. Cited, permission-aware knowledge across every system.

  • Curated knowledge API for AI agents - skill packs, semantic search, validated patterns.

View all MCP Connectors

Latest Blog Posts

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/ishfuseini/agentflow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server