ascii-art-mcp
ascii-art-mcp
ascii-art-mcp — это сервер Model Context Protocol (MCP), созданный на Node.js и TypeScript, который предоставляет инструменты для получения ASCII и Unicode-арта из локальной базы данных.
Сервер использует stdio-транспорт, что делает его совместимым с MCP-клиентами, такими как:
Claude Desktop
LM Studio
Open WebUI
Другие MCP-совместимые среды
https://theduodecim.github.io/ascii-art-mcp/
▶ Запуск этого MCP
Просто вставьте эту ссылку в любой MCP-совместимый чат:
https://github.com/theduodecim/ascii-art-mcp/tree/main«Запустить этот MCP»
ИИ клонирует репозиторий, соберёт проект и запустит его автоматически. Никакой настройки с вашей стороны не требуется.
📦 Установка
Пакет доступен на npm:
https://www.npmjs.com/package/ascii-art-mcp
Установите локально:
npm install ascii-art-mcpИли запустите напрямую:
npx ascii-art-mcp🌐 Реестр MCP
Этот сервер также опубликован в официальном реестре Model Context Protocol:
https://registry.modelcontextprotocol.io/?q=ascii
Имя сервера:
io.github.theduodecim/ascii-artЭто позволяет MCP-совместимым инструментам находить и устанавливать его автоматически.
⚙️ Требования
Node.js 20+
npm
🚀 Запуск сервера вручную
Режим разработки:
npm run devСборка и продакшн-запуск:
npm run build
npm startСервер использует stdio-транспорт и загружает данные из:
db.jsonрасположенного в корне репозитория.
🧰 Доступные MCP-инструменты
Related MCP server: MusicBrainz MCP Server
get_ascii_art
Находит запись с артом по точному названию или точному значению в псевдонимах.
Входные данные
Поле | Тип | Обязательно |
query | string | да |
Выходные данные
Возвращает поле art записи в виде обычного текста.
search_ascii
Выполняет поиск записей по категории, тегам или обоим параметрам.
Входные данные
Поле | Тип | Обязательно |
categoria | string | нет |
tag | string | нет |
Необходим хотя бы один фильтр.
Выходные данные
Возвращает объединённые поля art найденных записей в виде обычного текста.
random_ascii
Возвращает случайную запись из базы данных.
Входные данные
Поле | Тип | Обязательно |
tipo | ascii | unicode | да |
Выходные данные
Возвращает поле art выбранной записи в виде обычного текста.
list_categories
Выводит список всех уникальных категорий, присутствующих в базе данных.
Входные данные
Нет
Выходные данные
Названия категорий в виде текста с разделением по строкам.
🗂 Модель данных
Записи в db.json соответствуют интерфейсу AsciiArtEntry на TypeScript:
src/types/asciiArt.tsКаждая запись содержит такие метаданные, как:
название
категория
теги
псевдонимы
содержимое арта
🧪 Тестирование MCP-сервера
Для проверки MCP-взаимодействия через JSON-RPC по stdio использовался простой интеграционный тест.
Пример тестового скрипта (test.mjs):
import { spawn } from "child_process";
const proc = spawn("node", ["dist/server.js"], {
stdio: ["pipe", "pipe", "pipe"]
});
proc.stderr.on("data", (d) => {
console.log("LOG:", d.toString());
});
proc.stdout.on("data", (d) => {
console.log("SERVER:", d.toString());
});
function send(msg) {
const json = JSON.stringify(msg);
const payload = `Content-Length: ${Buffer.byteLength(json)}\r\n\r\n${json}\r\n`;
console.log("\nSENDING:\n", json, "\n");
proc.stdin.write(payload);
}
setTimeout(() => {
send({
jsonrpc: "2.0",
id: 1,
method: "initialize",
params: {
protocolVersion: "2024-11-05",
capabilities: {},
clientInfo: {
name: "tester",
version: "1.0"
}
}
});
}, 500);
setTimeout(() => {
send({
jsonrpc: "2.0",
method: "initialized",
params: {}
});
}, 1000);
setTimeout(() => {
send({
jsonrpc: "2.0",
id: 2,
method: "tools/list"
});
}, 1500);
setTimeout(() => {
proc.kill();
console.log("TEST FINISHED");
}, 4000);🧠 Архитектура
src/
server.ts
tools/
types/
dist/
db.jsonMCP-сервер на TypeScript
JSON-база данных (
db.json)Проверка входных данных с помощью Zod
stdio-транспорт
🎯 Назначение
Этот проект демонстрирует, как создать простой MCP-сервер с инструментами, который:
работает локально
не требует API-ключей
предоставляет структурированные инструменты
обслуживает статические данные через MCP
📜 Лицензия
MIT
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
- AlicenseNot gradedqualityAmaintenanceAscii Art AI - MCP server providing AI-powered tools and automation by MEOK AI Labs11MIT
- AlicenseNot gradedqualityCmaintenanceA comprehensive MCP server for querying the MusicBrainz database, providing tools to search for artists, releases, recordings, and browse music metadata.4MIT
- FlicenseNot gradedqualityFmaintenanceAn MCP server that enables AI agents to create beautiful ASCII diagrams using Unicode box-drawing characters, with support for stateful canvas operations, multiple shape types, and style customization.2
- AlicenseNot gradedqualityBmaintenanceA Python MCP server for searching, downloading, extracting, inspecting, and previewing game assets from multiple public sources.MIT
Related MCP Connectors
MCP server for accessing curated awesome list documentation
MCP server exposing the AceDataCloud Fish Audio API (text-to-speech with voice conditioning)
An MCP server for deep research or task groups
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/theduodecim/ascii-art-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server