wordsmith-mcp
Wordsmith MCP
MCP-сервер (Model Context Protocol), предоставляющий любому MCP-совместимому ИИ-клиенту набор автономных инструментов анализа и переписывания текста — статистику, экстрактивные суммаризации, извлечение ключевых слов, оценку удобочитаемости, преобразование стилей именования, извлечение сущностей и сравнение текстов.
Без API-ключей. Без сетевых запросов. Никакого хранения состояния. Всё выполняется локально над текстом, который вы передаёте, поэтому это быстро, бесплатно и безопасно для работы с приватными документами.
Создан с помощью MCP Python SDK.
Зачем это нужно
Языковые модели отлично справляются с оценкой текста, но на удивление ненадёжны в его измерении — попросите одну из них назвать точное количество слов или балл Flesch, и она начнёт гадать. Wordsmith предоставляет модели детерминированный калькулятор для этих задач, поэтом у ответы о длине, сложности и ключевых терминах документа вычисляются, а не оцениваются.
Related MCP server: armavita-originality-ai-mcp
Инструменты
Инструмент | Что делает | Ключевые параметры |
| Символы, слова, уникальные слова, предложения, абзацы, строки, средняя длина слова/предложения, расчётное время чтения |
|
| Экстрактивная суммаризация — оценивает предложения по частоте значащих слов и возвращает лучшие в исходном порядке |
|
| Наиболее частые значащие слова с количеством и относительной частото; стоп-слова отфильтровываются |
|
| Flesch Reading Ease + уровень Flesch–Kincaid, с пояснением простым языком |
|
| Преобразует в |
|
| Извлекает email-адреса, URL, хэштеги, упоминания, номеры телefonов и отдельно стоящие числа |
|
| Унифицированный построчный diff между черновиком и ревизией |
|
Все инструменты помечены как readOnlyHint: true, openWorldHint: false — они никогда ничего не изменяют и не обращаются к интернету.
Быстрый старт (локально, stdio)
git clone https://github.com/mirza1272/wordsmith-mcp.git
cd wordsmith-mcp
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .Запустите:
wordsmith-mcpСервер общается через MCP по stdio и будет ждать подключения клиента — это нормальное поведение, а не зависание. Клиенты запускают его сами; см. ниже.
Проверка работоспособности
python scripts/smoke_test.pyЭтот скрипт запускает сервер так же, как это сделал бы настоящий MCP-клиент, выводит список инструментов и вызыват каждый из них, печатая результаты.
Запуск юнит-тестов
pip install -e ".[dev]"
pytest -qПодключение к клиенту
Claude Desktop
Отредактируйте claude_desktop_config.json:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"wordsmith": {
"command": "/absolute/path/to/wordsmith-mcp/.venv/bin/wordsmith-mcp"
}
}
}Перезапустите Claude Desktop, а затем спросите что-нибudь вроде «Насколько читабелен этот абзац и каковы его топ-5 ключевых слов?»
Claude Code
claude mcp add wordsmith -- /absolute/path/to/wordsmith-mcp/.venv/bin/wordsmith-mcpCursor / Widsurf / другие клиенты
Любой клиент, принимающий блок mcPServers, использует ту же форму, что и пример для Claude Desktop выше.
MCP Inspector (визуальная отладка)
npx @modelcontextprotocol/inspector .venv/bin/wordsmith-mcpОткрывает браузерный интерфейс, где можно вручную вызвать каждый инструмент и изучить сырой JSON-RPC-трафик.
HTTP-режим (для размещённых развёртываний)
Тот же сервер также поддерживает streamable HTTP — именнно его используют размещённые маркетплейсы:
TRANSPORT=http PORT=8081 wordsmith-mcpТогда MCP-эндпоинт будет доступен по адресу http://localhost:8081/mcp.
Переменная окружения | По умолчанию | Описание |
|
|
|
|
| Адрес привязки в HTTP-режиме |
|
| Порт привязки в HTTP-режиме |
|
| HTTP-путь, по которому обслуживается MCP-эндпоинт |
Развёртывание
Форма публикации Smithery принимает рабтающий HTTPS MCP-эндпоинт, поэтом у сервер сначала размёщается, а затем публикуется. Для этого включены Dockerfile и render.yaml; smithery.yaml сохранён для хостов, которые собирают контейнер напрямую.
Полное руководство: DEPLOY.md.
Короче: разверните контейнер на хосте (Render, Railay, Fly.io — render.yaml включён), зате опублеуйте полученный URL https://<host>/mcp на Smithery.
Предварительная сбока контейнера локально — хорошая проверка работоспособности:
docker build -t wordsmith-mcp .
docker run --rm -p 8081:8081 wordsmith-mcpСтруктура проекта
wordsmith-mcp/
├── src/wordsmith_mcp/
│ ├── __init__.py # package exports
│ ├── __main__.py # python -m wordsmith_mcp
│ ├── server.py # MCP server: tool definitions and schemas
│ └── textutils.py # pure text logic, no MCP imports
├── scripts/smoke_test.py # end-to-end client that exercises every tool
├── tests/test_textutils.py
├── examples/claude_desktop_config.json
├── Dockerfile
├── smithery.yaml
├── pyproject.toml
└── README.mdtextutils.py содержит алгорitмы и ничего не импортирует из MCP, поэтом у логику можно юнит-тестировать независимо; server.py — это тонкий протокольный слой, который описывает эти функции модели.
Как это работает (обзор MCP за 60 секуид)
MCP — это JSON-RPC-протокол, который позволяет ИИ-клиенту обнаруживать и вызывать инструменты, предосставляемые сервером.
Клиент запускает сервер (как подроцесс через stdio или подключается через HTTP).
Клиент и сервер обмениваются рукопожатием
initialize, объявляющим версию протокола и возможости.Клиент вызыват
tools/list. SDK генерирут JSON-схему каждого инструмента из аннотаций типов Python и описанийField(...), поэтом модель видит, какие аргументы допустмы.Когда модель решат, что нужен инструмент, клиент отправляет
tools/callс аргументами; сервер выполяет функцию Python и возвращает результат — и как текst, читаемый человеком, и какstructuredContent, соответствующий объявленной схеме вывода.
Поэтому добавить инструмент — это просто написат типизированную функцию Python и декорировать её с помощью @mcp.tool(...).
Дополнительные материалы в этом репозитории
WRITEUP.md— мои заметки об использовании существующего MCP-сервера (Context7) и о том, что я узнал при создании этого сервера.DEPLOY.md— пошаговое руководство по публикации этого сервера на Smithery и Glama.
Лицензия
MIT — см. LICENSE.
Maintenance
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
- FlicenseNot gradedqualityDmaintenanceIntegrates local language models (like Qwen3-8B) with MCP clients, providing tools for chat, code analysis, text generation, translation, and content summarization using your own hardware.
- AlicenseAqualityDmaintenanceLocal-first MCP server for Originality.ai workflows, including AI detection, plagiarism checks, readability, SEO scans, and scan-result retrieval for content teams.81AGPL 3.0
- AlicenseNot gradedqualityDmaintenanceModular MCP server providing text preprocessing and NLP tools for AI agent ecosystems.MIT
- AlicenseNot gradedqualityDmaintenanceDetects and fixes LLM prose patterns in text, exposing tools for auditing and improving writing quality in MCP-compatible hosts.262MIT
Related MCP Connectors
MCP Server for Slima - AI Writing IDE for Novel Authors with AI Beta Reader.
Free OpenAI-compatible inference with signed provenance receipts and 3 focused MCP tools.
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mirza1272/wordsmith-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server