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идемпотентный

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

Apply Settings

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

Параметры

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

    Settings dictionary to apply to the server

eval

Evaluate a Pharo Smalltalk expression with PharoSmalltalkInteropServer.

Evaluate Smalltalk

Evaluate a Pharo Smalltalk expression with PharoSmalltalkInteropServer.

Параметры

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

    The Smalltalk code to evaluate

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

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

Export Package

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

Параметры

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

    The name of the package to export

  • pathstring

    The path where to export the package

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

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

Get Class Comment

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

Параметры

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

    The name of the class to retrieve comment for

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

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

Get Class Source

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

Параметры

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

    The name of the class to retrieve source for

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

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

Get Method Source

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

Параметры

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

    The name of the class containing the method

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

    The name of the method to retrieve source for

  • is_class_methodboolean

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

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

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

Get Settings

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

Параметры

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

import_package

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

Import Package

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

Параметры

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

    The name of the package to import

  • pathstring

    The path to the package file to import

install_projectвнешний мир

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

Install Project

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

Параметры

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

    The name of the project to install

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

    The repository URL for the project

  • load_groupsany

    Comma-separated list of groups to load

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

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

List Classes

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

Параметры

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

    The name of the package

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

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

List Extended Classes

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

Параметры

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

    The name of the package

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

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

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 содержит сообщение об ошибке

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.

Read Screen

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

Параметры

  • target_typestring

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

  • capture_screenshotboolean

    Include PNG screenshot in response

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

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

Run Class Test

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

Параметры

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

    The class name to run tests for

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

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

Run Package Test

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

Параметры

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

    The package name to run tests for

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

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

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только чтение

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

Search Methods Like

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

Параметры

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

    The pattern to search for in method names

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

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

Search References

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

Параметры

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

    The method name or symbol to find references for

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

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

Search References to Class

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

Параметры

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

    The name of the class to find references for

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

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

Search Traits Like

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

Параметры

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

    The pattern to search for in trait names

Другие проверенные MCP-сервера

wonderwhy-er/DesktopCommanderMCP

wonderwhy-er/DesktopCommanderMCP

Desktop Commander — MCP сервер для управления файлами, запуска терминальных команд, редактирования кода, работы с Excel, PDF и DOCX. Разработчики используют его для автоматизации задач и взаимодейс...

TypeScript8534
childrentime/reactuse

childrentime/reactuse

ReactUse — коллекция 100+ React хуков для браузера, состояния, элементов и эффектов. MCP сервер добавляет AI-поиск хуков, ускоряя создание приложений. Полезен для React-разработчиков.

MDX1032
debridge-finance/debridge-mcp

debridge-finance/debridge-mcp

официальный

MCP сервер deBridge для ИИ-агентов: выполняет кросс-чейн и внутрисетевые свопы, оценивает комиссии и торгует на основных блокчейнах. Упрощает взаимодействие агентов с DeFi, ускоряя развертывание торговых сценариев.

TypeScript32
mediar-ai/screenpipe

mediar-ai/screenpipe

Screenpipe - MCP сервер для локального ИИ, запоминающего всё на экране и в аудио. Записывает и распознаёт текст и речь. Ищите виденное и слышанное естественным языком. Плагины (Pipes) автоматизируют действия на основе активности. Полная приватность.

Rust20300
coinpaprika/dexpaprika-mcp

coinpaprika/dexpaprika-mcp

официальный

DexPaprika MCP сервер даёт AI-ассистентам живой доступ к криптовалютным и DEX данным на 33 блокчейнах. Без API-ключа — 14 инструментов для анализа токенов, пулов ликвидности и децентрализованных би...

JavaScript40
stack-chan/stack-chan

stack-chan/stack-chan

Stack-chan - это JavaScript-управляемый робот на базе M5Stack с супер-кавайным лицом. Управляйте эмоциями, взглядом, речью и сервоприводами. Идеален для DIY и образовательных проектов.

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

Лука Никитин