Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Aspicio

by frontsail-aiversion 0.13.2i★ –iComputer or cloud
Registry nameio.github.frontsail-ai/aspicio

Install

Overview

Description from the maker (original English)

DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • The registry lists no key to fill in.

You need

  • Runs in the cloudNothing to install; it connects over the internet
  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Works in Claude on the web, desktop and mobile:

  1. Open Settings → Connectors
  2. Press Add custom connector
  3. Paste the address below and press Add
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Add2https://…3
https://aspicio-api.frontsail.app/mcp

Or run it on your computer

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "aspicio": {
      "command": "npx",
      "args": [
        "-y",
        "@aspicio/mcp"
      ]
    }
  }
}

Run this in your terminal

claude mcp add --transport http aspicio https://aspicio-api.frontsail.app/mcp

Or run it on your computer

claude mcp add aspicio -- npx -y @aspicio/mcp

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "aspicio": {
      "url": "https://aspicio-api.frontsail.app/mcp"
    }
  }
}

Or run it on your computer

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "aspicio": {
      "command": "npx",
      "args": [
        "-y",
        "@aspicio/mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "aspicio": {
      "type": "http",
      "url": "https://aspicio-api.frontsail.app/mcp"
    }
  }
}

Or run it on your computer

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "aspicio": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@aspicio/mcp"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

ChatGPT connects only to servers on the internet:

  1. Open ChatGPT on the web → Settings → Connectors (Apps)
  2. Press Create or Add (some plans need Developer mode under Advanced first)
  3. Paste the address below, give it a name and save
  4. If it asks you to sign in, sign in with the maker
SettingsConnectors1+ Create2https://…3
https://aspicio-api.frontsail.app/mcp

Menu names can differ slightly by plan and over time.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

We have not read this server’s tool list yet; we check endpoints in rotation.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account frontsail-ai, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • … Not checked yet

    Endpoint responds

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    Sign-in with OAuth

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Chat & emaili

  • More stars than 0% of the other 1783 servers in this category
  • Published to the registry more recently than 66% of the other 1783 servers in this category
  • Basic checks equal to or better than 100% of the other 1783 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Aspicio safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.13.2) reached the registry 15 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Vexa, emailmd, MCP WhatsApp Cloud

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Vexa

by Vexa-ai

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

Runs in the cloud★ 2,949Apache-2.0Updated 2 months ago
Install

emailmd

by anypost

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

Computer or cloud★ 1,385MITUpdated 31 days ago
Install

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

Runs on your computer★ 277MITUpdated 5 months ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Aspicio Drawing understanding for people, applications, and AI agents — DXF and vector PDF. Aspicio (Latin: "I look at")

▶ Live demo

Aspicio is an open-source (MIT), TypeScript-first drawing engine: one framework-free parse → tessellate pipeline that runs in the browser, in Node, and in serverless runtimes. It reads DXF and the vector content of PDF — the kind of PDF that carries artwork and dielines rather than a scan. A person gets an interactive WebGL viewer of a CAD drawing; an AI agent gets structured JSON facts and a rendered PNG of the same file. Every surface — the browser viewer, the web components and their React, Vue, and Svelte bindings, the headless renderer, the HTTP API, and the MCP server — is a thin adapter over the same engine, so a drawing is equally readable everywhere.

DXF / PDF bytes ─parse─▶ DrawingDocument ─tessellate─▶ Tessellation ──┬─▶ WebGL renderer (viewer)

(normalized model) (batched geometry) ├─▶ SVG string (export / API / MCP) └─▶ DrawingSummary (describe)

How it's built: docs/architecture.md · behavior specs: docs/product-specs/

Embed it

One embed, every flavor — and every path below renders the same web components, so the result is pixel-identical no matter which you pick.

Web components — plain HTML, any framework

One tag gives you the layer panel plus an interactive preview; no bindings needed:

<script type="module">

import "@aspicio/elements"; import "@aspicio/elements/formats/dxf";

Formats are opted into by import: the package brings the components, the formats/* entry brings the parser. That is what keeps a DXF app from shipping every other format's code — and every flavor below does the same.

React

The same embed with idiomatic props and a ref exposing the full viewer, via @aspicio/react:

import { AspicioEmbed } from "@aspicio/react";

import "@aspicio/react/formats/dxf";

;

Vue

Typed props and emits with unwrapped payloads, via @aspicio/vue:

<script setup>

import { AspicioEmbed } from "@aspicio/vue"; import "@aspicio/vue/formats/dxf";

Svelte

The same components as raw Svelte 5 source with typed callback props, via @aspicio/svelte:

<script>

import { AspicioEmbed } from "@aspicio/svelte"; import "@aspicio/svelte/formats/dxf";

Vanilla TypeScript

Skip the ready-made UI and drive the viewer directly from @aspicio/core — bring your own chrome:

import { DrawingViewer } from "@aspicio/core";

import { dxfParser } from "@aspicio/core/dxf";

const viewer = new DrawingViewer(document.querySelector("#preview")!, { parsers: [dxfParser], }); await viewer.load(file); // File | Blob | ArrayBuffer | DXF text (ASCII or binary)

Headless — Node and serverless

Parse, describe, and render with no browser at all (server-side previews, thumbnails, pipelines):

import {

describeDrawing, parseWith, tessellate, tessellateSpace, tessellationToSvg, } from "@aspicio/core"; import { dxfParser } from "@aspicio/core/dxf";

const doc = await parseWith([dxfParser], bytes); // ASCII or binary DXF const summary = describeDrawing(doc); // units, bounds, layers, texts, spaces… const svg = tessellationToSvg(tessellate(doc)); // model space (a PDF's page 1)

// Multi-page PDFs and multi-sheet DXFs: describe covers all of them, and // either verb can be scoped to one. const page3 = describeDrawing(doc, { space: "Page 3" }); const sheet = tessellationToSvg(tessellateSpace(doc, "Layout1"));

What you get: WebGL rendering batched to one draw call per layer (large drawings stay interactive), broad entity coverage (lines, arcs, circles, ellipses, polylines with bulges, splines, TEXT/MTEXT, DIMENSION, SOLID/HATCH fills, nested INSERT blocks — anything unsupported is counted and reported, never fatal), a layer list with the colors that are _actually drawn_ (per-entity overrides included, not just the layer table), measure with object snap, entity picking, paper-space layouts, SVG/PNG export, and first-class touch. Out of scope: editing and 3D.

Hand it to an agent

The same engine speaks MCP and HTTP, so an agent can _read_ a drawing instead of guessing at it:

  • `describe_dxf` — units, bounds, size, layers with effective colors, entity counts, and the drawing's text content. An agent reads a title block or a dimension value directly — no OCR, no vision round-trip.
  • `render_dxf` — a PNG of the drawing the model can look at.
  • `view_dxf` (hosted server) — an interactive in-chat viewer for the _person_ in the conversation, via the open MCP Apps extension: pan, zoom, layer toggles, fullscreen, host light/dark theming. The widget is locked to the drawing the tool call delivered and makes no network requests; hosts without MCP Apps still get the structured facts.
SurfaceLocal filesURLsInline DXF
stdio MCP — npx -y @aspicio/mcp✅✅✅
Hosted MCP — aspicio-api.frontsail.app/mcp—✅✅
HTTP API — /describe, /renderPOST body✅✅

Connect:

  • Claude Code — one step installs the MCP server plus the bundled skills (aspicio-inspect-dxf, aspicio-embed): /plugin marketplace add frontsail-ai/aspicio then /plugin install aspicio@aspicio
  • Codex — the same repo doubles as a Codex marketplace: codex plugin marketplace add https://github.com/frontsail-ai/aspicio, codex plugin add aspicio@aspicio, then codex mcp add aspicio -- npx -y @aspicio/mcp
  • Any client that launches stdio MCP servers — register npx -y @aspicio/mcp
  • Any client that supports remote MCP (Streamable HTTP) — point it at https://aspicio-api.frontsail.app/mcp (no install; speaks MCP, not a browser page)
  • Plain HTTP — GET /describe?src= , GET /render?src= &format=png|svg; the API self-describes at /openapi.json

URL fetches are guarded (private-network blocking, size caps, redirect validation, timeouts). The stdio server reads local files in-process and never uploads the DXF to any Aspicio service — though, as with any tool result, your MCP client passes the returned summary or image to its model provider. Full details: privacy policy · terms.

Available today · direction

Everything above is shipped and live: viewer + demo, core, web components, React, Vue, and Svelte packages, headless describe/render, stdio and hosted MCP, the in-chat MCP Apps viewer, the HTTP API with OpenAPI, and plugin packaging for Claude Code and Codex.

Direction (intent, not commitments — see issues): MCP registry listings, structured entity queries and focused rendering, and an upload flow so remote surfaces can handle local files.

Packages

PackageDescription
@aspicio/coreThe viewer library: parsing, tessellation, rendering, camera, input
@aspicio/elementsWeb components: , , — plain HTML, Svelte, any framework
@aspicio/reactReact bindings: , ,
@aspicio/vueVue 3 bindings: the same three components with typed props and emits
@aspicio/svelteSvelte 5 bindings: the same three components as raw .svelte source
@aspicio/mcpMCP server for AI agents: describe_dxf + render_dxf
@aspicio/apiDXF HTTP API server (private): /describe, /render, /mcp
@aspicio/widgetMCP Apps in-chat viewer widget (private), served by the api server
@aspicio/demoStandalone demo app (private) — also the reference integration

How the viewer packages fit together: every framework path funnels into the same Lit web components — one implementation of the embed UI — which sit on the framework-free core. React, Vue, and Svelte get thin veneers with idiomatic props; plain HTML consumes the elements directly.

flowchart TD

REACTAPP["React app"] HTMLAPP["Plain HTML / vanilla JS app"] VUEAPP["Vue app"] SVELTEAPP["Svelte app

Only the beginning is shown; read the rest in the repo

Ask PopNx