Skip to main content
Glama

mcp-toolkit

MCP-сервер общего назначения для ИИ-агентов. Создан на базе Python 3.13, FastMCP и Playwright.

Доступные инструменты

Инструмент

Описание

web_search

Поиск в DuckDuckGo и извлечение веб-контента с помощью Playwright

fetch_url

Извлечение основного контента по прямой ссылке

http_request

Выполнение общих HTTP-запросов без использования Playwright

time_now

Возвращает текущую дату и время в указанном часовом поясе

date_utils

Конвертация часовых поясов и расчет дат/длительности

memory_set

Сохранение постоянного значения в SQLite

memory_get

Извлечение сохраненного значения

memory_delete

Удаление ключа

memory_list

Список всех ключей (с опциональной фильтрацией по префиксу)

memory_clear

Очистка всей памяти (необратимо!)

memory_search

Поиск текста в сохраненных ключах и значениях

run_python

Выполнение кода Python в песочнице с ограничением по времени

run_js

Выполнение кода JavaScript через Node.js в песочнице с таймаутом


Related MCP server: MCP Server

Установка

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

  • Установленный UV

  • Python 3.13 (UV скачает его автоматически, если он отсутствует)

  • Node.js (опционально, только для run_js)

Вариант А — Установка из локальной папки

git clone https://github.com/YoshiLoL0526/mcp-toolkit
cd mcp-toolkit
uv tool install --python 3.13 .

Вариант Б — Установка напрямую из GitHub

uv tool install --python 3.13 git+https://github.com/YoshiLoL0526/mcp-toolkit

Обязательный шаг: установка Chromium для Playwright

После установки пакета выполните эту команду один раз:

# Obtener la ruta del entorno virtual creado por uv tool
uv tool run --from mcp-toolkit python -m playwright install chromium

Или, альтернативно, если вы знаете путь к окружению:

~/.local/share/uv/tools/mcp-toolkit/bin/python -m playwright install chromium

Настройка в MCP-клиентах

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json)

{
  "mcpServers": {
    "mcp-toolkit": {
      "command": "mcp-toolkit"
    }
  }
}

В Windows путь выглядит так: %APPDATA%\Claude\claude_desktop_config.json

Cursor / VS Code (.cursor/mcp.json или .vscode/mcp.json)

{
  "servers": {
    "mcp-toolkit": {
      "type": "stdio",
      "command": "mcp-toolkit"
    }
  }
}

HTTP-сервер (для удаленного доступа или нескольких клиентов)

mcp-toolkit --transport http --host 0.0.0.0 --port 8080

Сервер будет прослушивать http://<host>:<port>/mcp, используя транспорт streamable-http (текущий стандарт MCP). Вы можете изменить путь с помощью --path /другой-путь.

Транспорт --transport sse сохранен для совместимости со старыми клиентами, но он считается устаревшим начиная с FastMCP 2.3.


Использование инструментов

Parámetros:
  query        (str)  — texto a buscar
  max_results  (int)  — resultados a devolver, default 5, máximo 10
  deep         (bool) — si True, extrae el contenido completo de cada página
  language     (str)  — idioma para las cabeceras HTTP, default "es-ES"

Пример (агент):

Busca las últimas noticias sobre Python 3.13 con deep=True

fetch_url

Parámetros:
  url (str) — URL absoluta HTTP o HTTPS a leer

Пример (агент):

Lee https://example.com/articulo con fetch_url

http_request

Parámetros:
  method  (str)  — método HTTP: GET, POST, PUT, PATCH, DELETE, HEAD u OPTIONS
  url     (str)  — URL absoluta HTTP o HTTPS
  headers (dict) — cabeceras opcionales
  body    (str)  — cuerpo opcional como texto
  timeout (int)  — segundos máximos, default 10, máximo 60

Пример (агент):

Haz un POST a https://api.example.com/items con http_request

time_now / date_utils

time_now(timezone_name="UTC")

date_utils(
  action="convert_timezone",
  value="2026-04-21T12:00:00+00:00",
  target_timezone="America/New_York"
)

Действия, поддерживаемые date_utils: parse, convert_timezone, add и diff. Для дат без смещения используется timezone_name; часовые пояса должны быть именами IANA, такими как UTC, America/New_York или Europe/Madrid.

memory_set / memory_get

memory_set(key="usuario_nombre", value="Carlos", namespace="default")
memory_get(key="usuario_nombre", namespace="default")
memory_list(prefix="usuario_", namespace="default")
memory_search(query="Carlos", namespace="default")

Данные сохраняются в ~/.local/share/mcp-toolkit/memory.db. Все инструменты работы с памятью принимают namespace для разделения данных по проектам, клиентам или беседам. Если не указано, используется default.

run_python

Parámetros:
  code     (str) — código Python a ejecutar
  timeout  (int) — segundos máximos, default 10, máximo 60
  stdin    (str) — entrada estándar opcional

Ограничения безопасности:

  • Минимальное окружение: не наследует секреты или произвольные переменные хост-процесса

  • Временная рабочая директория для каждого выполнения

  • HTTP-прокси переопределяются переменными окружения

  • Лимит памяти: 256 МБ (Linux/macOS)

  • Строгий таймаут: процесс завершается при истечении времени

  • В Windows лимит памяти на процесс, применяемый из Python, не работает

  • Блокировка сети не является гарантией сильной изоляции; для ненадежного кода рекомендуется запускать сервер внутри контейнера или виртуальной машины с сетевыми политиками

run_js

Те же параметры, что и у run_python. Требует установленного в системе Node.js.


Разработка

git clone https://github.com/YoshiLoL0526/mcp-toolkit
cd mcp-toolkit
uv sync
uv run python -m playwright install chromium

# Ejecutar en modo desarrollo
uv run mcp-toolkit

# Tests
uv run pytest

Добавление нового инструмента

  1. Создайте mcp_toolkit/tools/mi_tool.py с функцией async def mi_tool(...) -> str

  2. Импортируйте и зарегистрируйте её в server.py с помощью mcp.tool()(mi_tool)

  3. Переустановите: uv tool install --python 3.13 . --reinstall


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

mcp-toolkit/
├── pyproject.toml
├── README.md
├── mcp_toolkit/
│   ├── server.py              # FastMCP app + registro
│   ├── tools/
│   │   ├── web_search.py      # Playwright: buscar + extraer
│   │   ├── fetch_url.py       # Extraer una URL directa
│   │   ├── http_request.py    # Cliente HTTP genérico
│   │   ├── date_time.py       # Fechas, zonas horarias y duraciones
│   │   ├── memory.py          # SQLite KV store con namespaces
│   │   ├── run_python.py      # Sandbox Python
│   │   └── run_js.py          # Sandbox Node.js
│   └── utils/
│       ├── browser.py         # Singleton Playwright
│       └── sandbox.py         # Helpers de subprocess y timeout
└── tests/

Лицензия

MIT

Install Server
A
license - permissive license
A
quality
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.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

  • Cloud-hosted MCP server for durable AI memory

  • An MCP server that gives your AI access to the source code and docs of all public github repos

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/YoshiLoL0526/mcp-toolkit'

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