mumez/pharo-smalltalk-interop-mcp-server

mumez/pharo-smalltalk-interop-mcp-server

от mumez
MCP-сервер для взаимодействия с локальным образом Pharo Smalltalk: выполняет код, ищет классы и методы, управляет пакетами, запускает тесты и отлаживает UI. Незаменим для разработчиков на Pharo, ра...

pharo-smalltalk-interop-mcp-server

CI

A local MCP server to communicate local Pharo Smalltalk image. It supports:

  • Code Evaluation: Execute Smalltalk expressions and return results
  • Code Introspection: Retrieve source code, comments, and metadata for classes and methods
  • Search & Discovery: Find classes, traits, methods, references, and implementors
  • Package Management: Export and import packages in Tonel format
  • Project Installation: Install projects using Metacello
  • Test Execution: Run test suites at package or class level
  • UI Debugging: Capture screenshots and inspect UI structure for World morphs, Spec presenters, and Roassal visualizations
  • Server Configuration: Retrieve and modify server settings dynamically

Prerequisites

Installation

Quick Start (using uvx)

The easiest way to run the server without cloning the repository:

uvx --from git+https://github.com/mumez/pharo-smalltalk-interop-mcp-server.git pharo-smalltalk-interop-mcp-server
Инструменты были проиндексированы:
apply_settingsидемпотентный

Изменяет конфигурацию сервера динамически.

Применяет настройки.

Параметры
  • settingsobjectобязательный

    Settings dictionary to apply to the server

eval

Вычисляет выражение Pharo Smalltalk с помощью PharoSmalltalkInteropServer.

Оценивает Smalltalk.

Параметры
  • codestringобязательный

    The Smalltalk code to evaluate

export_packageидемпотентный

Экспортирует пакет в формат Tonel.

Экспортирует пакет

Параметры
  • package_namestringобязательный

    The name of the package to export

  • pathstring

    The path where to export the package

get_class_commentтолько чтение

Получает комментарий класса Smalltalk.

Получает комментарий класса

Параметры
  • class_namestringобязательный

    The name of the class to retrieve comment for

get_class_sourceтолько чтение

Получает исходный код класса Smalltalk.

Получает исходный код класса.

Параметры
  • class_namestringобязательный

    The name of the class to retrieve source for

get_method_sourceтолько чтение

Получает исходный код конкретного метода в классе.

Получает исходный код метода.

Параметры
  • class_namestringобязательный

    The name of the class containing the method

  • is_class_methodboolean

    Set to True for class-side methods, False for instance methods (default: False)

  • method_namestringобязательный

    The name of the method to retrieve source for

get_settingsтолько чтение

Получает текущую конфигурацию сервера. Возвращает: dict: ответ API с success/error и result - Успех: {"success": True, "result": dict} - result содержит текущие настройки сервера - Ошибка: {"success": False, "error": str} - error содержит сообщение об ошибке

Получает настройки

Параметры

Без параметров.

import_package

Импортирует пакет из указанного пути.

Импортирует пакет

Параметры
  • package_namestringобязательный

    The name of the package to import

  • pathstring

    The path to the package file to import

install_projectвнешний мир

Устанавливает проект с помощью Metacello.

Установить проект

Параметры
  • load_groupsstring | null

    Comma-separated list of groups to load

  • project_namestringобязательный

    The name of the project to install

  • repository_urlstringобязательный

    The repository URL for the project

list_classesтолько чтение

Получает список классов в пакете.

Перечисляет классы

Параметры
  • package_namestringобязательный

    The name of the package

list_extended_classesтолько чтение

Получает список расширенных классов в пакете.

Перечисляет наследуемые классы.

Параметры
  • package_namestringобязательный

    The name of the package

list_methodsтолько чтение

Получает список методов в пакете.

Список методов

Параметры
  • package_namestringобязательный

    The name of the package

list_packagesтолько чтение

Получает список всех пакетов. Возвращает: dict: ответ API с success/error и result - Success: {"success": True, "result": list[str]} - result содержит список всех имен пакетов - Error: {"success": False, "error": str} - error содержит сообщение об ошибке

Выводит список пакетов.

Параметры

Без параметров.

read_screenтолько чтение

Комплексный считыватель UI для отладки интерфейсов Pharo. Делает снимок экрана и извлекает полную структуру UI для World morphs, Spec presenters и визуализаций Roassal.

Считывает экран

Параметры
  • capture_screenshotboolean

    Include PNG screenshot in response

  • target_typestring

    UI type to inspect: 'world' (morphs), 'spec' (windows), or 'roassal' (visualizations)

run_class_testтолько чтение

Запускает тесты для класса.

Запускает тест класса

Параметры
  • class_namestringобязательный

    The class name to run tests for

run_package_testтолько чтение

Запускает тесты для пакета.

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

Параметры
  • package_namestringобязательный

    The package name to run tests for

search_classes_likeтолько чтение

Находит классы, соответствующие шаблону.

Поиск классов по образцу

Параметры
  • class_name_querystringобязательный

    The pattern to search for in class names

search_implementorsтолько чтение

Получает все реализации селектора метода.

Search Implementors

Параметры
  • method_namestringобязательный

    The method name to find implementors for

search_methods_likeтолько чтение

Находит методы, соответствующие шаблону.

Методы поиска, такие как

Параметры
  • method_name_querystringобязательный

    The pattern to search for in method names

search_referencesтолько чтение

Получает все ссылки на селектор метода или символ.

Ищет ссылки

Параметры
  • method_name_or_symbolstringобязательный

    The method name or symbol to find references for

search_references_to_classтолько чтение

Находит ссылки на класс.

Ищет ссылки на класс

Параметры
  • class_namestringобязательный

    The name of the class to find references for

search_traits_likeтолько чтение

Находит признаки, соответствующие шаблону.

Ищет признаки, похожие на

Параметры
  • trait_name_querystringобязательный

    The pattern to search for in trait names

Похожие MCP-сервера

CircleCI/mcp-server-circleci

CircleCI/mcp-server-circleci

официальный

MCP-сервер для интеграции CircleCI с AI-ассистентами: запускайте пайплайны, анализируйте сбои, находите flaky тесты и управляйте CI/CD прямо из IDE через естественный язык. Полезен командам, ускоря...

TypeScript92
yusong652/pfc-mcp

yusong652/pfc-mcp

MCP сервер для связи ИИ-агентов с ITASCA PFC — пакетом дискретного элементного моделирования (DEM). Через естественный диалог можно искать документацию, выполнять код и управлять симуляциями. Приго...

Python178
maxim-saplin/mcp_safe_local_python_executor

maxim-saplin/mcp_safe_local_python_executor

MCP сервер для безопасного локального выполнения Python кода от LLM. Основан на LocalPythonExecutor от Hugging Face, не требует Docker, ограничивает импорты и файловые операции. Запускается через uv - замена Code Interpreter для Claude Desktop и MCP клиентов.

Python48
ycs77/apifable

ycs77/apifable

apifable - MCP-сервер для AI-агентов: ищет эндпоинты, изучает OpenAPI-спецификацию и генерирует TypeScript типы. Всё, чтобы AI писал точный код интеграции в TypeScript-проекты.

TypeScript10
QuantConnect/mcp-server

QuantConnect/mcp-server

официальный

Официальный MCP сервер QuantConnect — мост между AI-ассистентами и платформой. Через API позволяет создавать проекты, писать стратегии, запускать бэктесты и управлять live-трейдингом. Удобен для ра...

Python77
Nishant-Chaudhary5338/mcp-toolkit

Nishant-Chaudhary5338/mcp-toolkit

MCP сервер mcp-react-toolkit автоматизирует разработку на React и TypeScript: генерирует компоненты из shadcn/ui, проверяет типы, доступность и тесты, мигрирует JS→TS, аудирует зависимости и бандл....

TypeScript3
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин