Сервер Amazon VPC Lattice MCP
Сервер протокола контекста модели (MCP) для листинга источников, предоставляющий инструменты для доступа и управления ресурсами AWS VPC Lattice и соответствующей документацией.
Функции
Сервер предоставляет пять основных инструментов:
list_sources: список всех доступных источников с их URL-адресами и примерами подсказок.get_source_prompts: Получает примеры подсказок для определенного источникаlist_amazon_vpc_lattice_prompts: список всех доступных шаблонов подсказокget_amazon_vpc_lattice_prompts: Получает сведения о конкретном шаблоне подсказкиvpc_lattice_cli: выполнение команд AWS CLI VPC Lattice для управления ресурсами VPC Lattice
Related MCP server: Log Analyzer with MCP
Установка
Этот проект создан с помощью TypeScript и использует модули ES.
Клонируйте репозиторий:
git clone https://github.com/awslabs/amazon-vpc-lattice-mcp-server.git
cd amazon-vpc-lattice-mcp-serverУстановите зависимости:
npm installСборка сервера:
npm run buildСкрипт сборки скомпилирует код TypeScript и установит соответствующие разрешения на исполнение.
Конфигурация
Добавьте сервер в файл настроек MCP (расположенный по адресу ~/Library/Application Support/Code/User/globalStorage/asbx.amzn-cline/settings/cline_mcp_settings.json ):
{
"mcpServers": {
"amazon-vpc-lattice": {
"command": "node",
"args": ["/path/to/amazon-vpc-lattice-mcp-server/build/index.js"],
"disabled": false,
"autoApprove": [],
"env": {}
}
}
}Использование
После настройки вы можете использовать инструменты MCP в своих разговорах. Обратите внимание, что вам следует использовать list_amazon_vpc_lattice_prompts для обнаружения доступных подсказок, поскольку они не обнаруживаются автоматически, как инструменты.
Список источников
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "list_sources",
arguments: {}
})Получить исходные подсказки
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "get_source_prompts",
arguments: {
source_name: "AWS Documentation"
}
})Список запросов Amazon VPC Lattice
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "list_amazon_vpc_lattice_prompts",
arguments: {}
})Получить подробную информацию о запросе Amazon VPC Lattice
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "get_amazon_vpc_lattice_prompts",
arguments: {
prompt_name: "setup_eks_controller"
}
})Решетка VPC CLI
Инструмент vpc_lattice_cli предоставляет программный интерфейс для операций AWS VPC Lattice через AWS CLI.
Функции
Поддерживает все основные операции VPC Lattice CLI
Принимает аргументы команды как объекты JavaScript
Автоматически преобразует параметры camelCase в параметры kebab-case в стиле CLI
Обрабатывает логические флаги, массивы и комплексные значения
Поддерживает профили AWS и конфигурацию региона
Возвращает проанализированные ответы JSON
Доступные команды
Сервисная сеть: создать-сервисную-сеть, удалить-сервисную-сеть, получить-сервисную-сеть, составить список-сервисных-сетей, обновить-сервисную-сеть
Служба: создать-службу, удалить-службу, получить-службу, составить список-служб, обновить-службу
Прослушиватель: создание-прослушиватель, удаление-прослушиватель, получение-прослушиватель, список-прослушивателей, обновление-прослушиватель
Правило: создать-правило, удалить-правило, получить-правило, составить список-правил, обновить-правило
Целевая группа: создать-целевую-группу, удалить-целевую-группу, получить-целевую-группу, составить список-целевых-групп, обновить-целевую-группу
Управление целями: регистрация целей, отмена регистрации целей, список целей
Теги ресурса: список-тегов-для-ресурса, тег-ресурс, не тег-ресурс
Примеры
Список сетей обслуживания:
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "vpc_lattice_cli",
arguments: {
command: "list-service-networks",
region: "us-west-2"
}
})Создать сеть обслуживания:
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "vpc_lattice_cli",
arguments: {
command: "create-service-network",
args: {
name: "my-network",
authType: "NONE"
}
}
})Создайте услугу с тегами:
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "vpc_lattice_cli",
arguments: {
command: "create-service",
args: {
name: "my-service",
serviceNetworkIdentifier: "sn-12345",
tags: [
{ key: "Environment", value: "Production" }
]
}
}
})Создайте целевую группу:
use_mcp_tool({
server_name: "amazon-vpc-lattice",
tool_name: "vpc_lattice_cli",
arguments: {
command: "create-target-group",
args: {
name: "my-target-group",
type: "INSTANCE",
config: {
port: 80,
protocol: "HTTP",
healthCheck: {
enabled: true,
protocol: "HTTP",
path: "/health"
}
}
}
}
})Доступные источники
Сервер включает в себя следующие источники:
Документация AWS (docs.aws.amazon.com)
Запросы по ключевым функциям
Руководство по настройке
Лучшие практики
Контроллер API шлюза AWS для VPC Lattice (aws/aws-application-networking-k8s)
Запросы на поддержку функций
Отслеживание проблем
API шлюза Kubernetes (gateway-api.sigs.k8s.io)
Разрешение ошибок
Руководство по передовому опыту
Разработка
Структура проекта
Проект организован следующим образом:
src/index.ts: Настройка и инициализация основного сервераsrc/tools.ts: Определения и обработчики инструментовsrc/data/: Файлы данныхprompts.ts: Шаблоны и параметры подсказокsources.ts: Определения источников и их подсказки
package.json: Конфигурация проекта и зависимостиtsconfig.json: конфигурация TypeScript.gitignore: Git игнорирует правилаbuild/: Скомпилированный вывод JavaScript
Добавление новых источников
Чтобы добавить новые источники, измените массив sources в src/data/sources.ts :
export const sources = [
{
name: 'Your Source',
url: 'https://your-source-url.com',
prompts: [
'Sample prompt 1 {placeholder}',
'Sample prompt 2 {placeholder}'
]
}
// ... existing sources
];Добавление новых подсказок
Чтобы добавить новые шаблоны подсказок, измените массив prompts в src/data/prompts.ts :
export const prompts = [
{
name: 'Your Prompt Template',
description: 'Description of what the prompt does',
template: 'Your prompt template with {parameter} placeholders',
parameters: ['parameter']
}
// ... existing prompts
];Скрипты
npm run build: сборка сервера и установка прав на выполнениеnpm run watch: режим наблюдения для разработкиnpm test: запуск тестов (в настоящее время не реализовано)