Skip to main content
Glama
deermakov

JSON Path MCP Server

by deermakov

MCP-сервер для работы с JSON-файлами

Модельный контекстный протокол (MCP) сервер, который предоставляет инструменты для работы с JSON-файлами с использованием jsonPath.

Функциональность

Инструменты (Tools)

1. read_json_file

Читает JSON-файл и возвращает данные по указанному jsonPath.

Параметры:

  • file_path (str): Путь к JSON-файлу

  • json_path (str, optional): Опциональный jsonPath для получения конкретного значения

    • Примеры: "user.name", "items[0].price", "data.users[1].email"

Возвращает:

{
  "success": true,
  "data": {...},
  "file_path": "/path/to/file.json",
  "path_used": "user.name"
}

2. list_json_files

Перечисляет все JSON-файлы в указанной директории.

Параметры:

  • directory (str): Путь к директории для поиска JSON-файлов

Возвращает:

{
  "success": true,
  "files": ["/path/to/file1.json", "/path/to/file2.json"],
  "count": 2,
  "directory": "/path/to/dir"
}

Related MCP server: jq-mcp

Логирование

Все операции сервера логируются в файл mcp_json_server.log и выводятся в консоль.

Формат логов:

2024-01-01 12:00:00 - __main__ - INFO - Запрос на чтение JSON-файла: /app/data/config.json, jsonPath: user.name
2024-01-01 12:00:00 - __main__ - INFO - Успешно загружен JSON-файл: /app/data/config.json, размер: 1234 байт
2024-01-01 12:00:00 - __main__ - INFO - Успешно получено значение по jsonPath: user.name

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

Требования

  • Docker

  • Docker Compose

Шаги установки

  1. Клонирование или копирование проекта

    cd C:\_Work\ML\MCPJSON\mcp-json
  2. Создание директории для данных

    mkdir data
    mkdir logs
  3. Запуск через Docker Compose

    docker-compose up -d
  4. Проверка работы

    docker-compose logs -f

Остановка

docker-compose down

Перезапуск

docker-compose restart

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

mcp-json/
├── main.py              # Основной файл MCP-сервера
├── requirements.txt     # Зависимости Python
├── Dockerfile           # Docker-образ
├── docker-compose.yml   # Конфигурация Docker Compose
├── .dockerignore        # Исключения для Docker
├── README.md            # Документация
├── data/                # Директория для JSON-файлов (создается вручную)
└── logs/                # Директория для логов (создается автоматически)

Использование jsonPath

Сервер поддерживает стандартный синтаксис jsonPath:

  • field - доступ к полю объекта

  • field.subfield - доступ к вложенному полю

  • array[0] - доступ к элементу массива по индексу

  • array[0].field - доступ к полю внутри элемента массива

Примеры

Если у вас есть JSON-файл data/config.json:

{
  "user": {
    "name": "John",
    "email": "john@example.com"
  },
  "items": [
    {"id": 1, "price": 100},
    {"id": 2, "price": 200}
  ]
}

Использование:

  • read_json_file("data/config.json", "user.name")"John"

  • read_json_file("data/config.json", "items[0].price")100

  • read_json_file("data/config.json") → все данные

Безопасность

  • Доступ к файлам ограничен директорией data (монтируется как read-only)

  • Логи записываются в директорию logs

  • Используется минимальный набор зависимостей

Технологии

  • Python 3.11

  • FastMCP - библиотека для создания MCP-серверов

  • Docker - контейнеризация

  • Docker Compose - оркестрация контейнеров

Лицензия

MIT License

F
license - not found
-
quality - not tested
D
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.

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/deermakov/mcp-jsonpath-server'

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