Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.sqemo/sqemo

NPM · SQEMO-MCP · SCANNED AUG 3

Design ERDs with your team's naming standards: query/edit entities and relationships, SQL/DBML

Available components

+40 this week 66 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security87
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (129 of 133), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (129 of 133), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability70
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 3095 tokens (~85/item across 36 items; 36 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
  • Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage83
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 49% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · sqemo-mcp

# add to Claude Code
claude mcp add sqemo-sqemo -- npx -y sqemo-mcp
# add to Codex CLI
codex mcp add sqemo-sqemo -- npx -y sqemo-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "sqemo-sqemo": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "sqemo-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add sqemo-sqemo --command npx --arg -y --arg sqemo-mcp
# ~/.hermes/config.yaml
mcp_servers:
  sqemo-sqemo:
    command: "npx"
    args: ["-y", "sqemo-mcp"]
// mcp.json
{
  "mcpServers": {
    "sqemo-sqemo": {
      "command": "npx",
      "args": [
        "-y",
        "sqemo-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Aug 26 +60
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • License: unverified → pass functional
    • Dependency health: unverified → partial functional
    • Stability: unverified → 0.20 functional
    • Maintenance: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Schema quality: unverified → good functional
    • Tool coverage: unverified → 100 functional
    • Licence: MIT functional
  • 31 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −20
    • Tool coverage: 100 → unverified functional
    • First check of Schema quality: unverified functional
    • Package version: 1.3.0 → 1.5.0 functional
  • 27 Jul 26 26

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 129 packages

129 packages in the resolved dependency tree · 126 deprecated · 36 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 36 exposed · ~3,095 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
auto_layout ~87

Auto-arranges entities (logical view) and tables (physical view) by relationships (dagre LR). view defaults to both. Reference copies, notes, and relationship waypoints are not moved.

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
viewstringView to arrange (defaults to both)

No output schema declared.

No examples provided.

check_db_drift ~221

Checks whether a live database (url) or a schema dump (schemaSql) has drifted from the ERD's physical model. Errors: missing/extra tables and columns, PK/FK/NOT NULL mismatches. Warnings (strict promotes to errors): type/unique/auto-increment representation differences. Read-only; the database URL never leaves this process. Pro plan required; requires login.

NameTypeReqDescription
dbSchemastringSchema to read (url only)
dialectstringDump dialect (required with schemaSql)
ignorearrayTable name globs to ignore on the DB side, e.g. flyway_*
schemaSqlstringSchema dump text, e.g. pg_dump -s output
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
strictbooleanPromote warnings to errors
urlstringpostgres:// or mysql:// URL (exactly one of url/schemaSql)

No output schema declared.

No examples provided.

check_naming ~93

Checks a logical name against the team naming standard (word list + rules). With physicalName, compares it to the generated name (providedMatches). With a {workspaceId} source, reads the latest workspace-standard master.

NameTypeReqDescription
logicalNamestringyes
physicalNamestring
sourceyesDictionary source — exactly one of a local file, a server ERD, or a workspace standard

No output schema declared.

No examples provided.

create_erd ~103

Creates a new ERD — empty or from SQL/DBML text. With a {file} target it saves locally; with {server:true} it saves to the server (login required).

NameTypeReqDescription
dbmlstringDBML text (mutually exclusive with sql)
dialectstringSQL dialect
namestring
sqlstringCREATE TABLE SQL (mutually exclusive with dbml)
targetyes

No output schema declared.

No examples provided.

delete_attribute ~60

Deletes an attribute (including its mapped physical column).

NameTypeReqDescription
attributeIdstringyes
entityIdstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

delete_dictionary_word ~65

Deletes a glossary entry. Standard-linked (glossaryLink) dictionaries are rejected with dictionary_is_linked.

NameTypeReqDescription
entryIdstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

delete_domain ~53

Deletes a domain (attributes referencing it are unlinked).

NameTypeReqDescription
domainIdstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

delete_entity ~54

Deletes an entity (including its mapped physical table and relationships).

NameTypeReqDescription
entityIdstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

delete_relationship ~51

Deletes a relationship (including derived FKs).

NameTypeReqDescription
relationshipIdstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

diff_erds ~115

Compares two ERD sources (entities/attributes/domains/relationships — unchanged omitted). A dry run before full-replace import_sql/import_dbml. A side freshly parsed from text has different ids, so most items appear as added/removed — matching the actual import behavior (full replace). summary aggregates entities only; see the arrays for domain/relationship changes.

NameTypeReqDescription
afteryes
beforeyesComparison target — exactly one of a local file, a server ERD, SQL text, or DBML text

No output schema declared.

No examples provided.

export_alter_sql ~128

Generates a migration (ALTER) script from the physical diff between a baseline and the current model — renames stay renames (stable-id matching), destructive changes come commented out, unsupported changes are flagged as [WARNING] comments. Baselines from the same project lineage ({file}/{erdId}) preserve renames; freshly parsed SQL/DBML text falls back to name matching. Pro plan required; requires login.

NameTypeReqDescription
afteryesTarget state (the current model)
beforeyesBaseline (e.g. the state last applied to the database)
dialectSQL dialect

No output schema declared.

No examples provided.

export_dbml ~44

Exports the project as DBML text.

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

export_sql ~61

Exports the physical model as CREATE TABLE SQL. Without dialect, uses the project dialect.

NameTypeReqDescription
dialectstringSQL dialect
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

generate_physical_name ~80

Generates a physical name from a logical name via the word list and naming rules (unregistered words go to warnings). With a {workspaceId} source, reads the latest workspace-standard master.

NameTypeReqDescription
logicalNamestringyes
sourceyesDictionary source — exactly one of a local file, a server ERD, or a workspace standard

No output schema declared.

No examples provided.

get_entity ~74

Entity detail (attributes and physical mapping). Prefers entityId; otherwise exact logicalName match (first hit on duplicates).

NameTypeReqDescription
entityIdstring
logicalNamestring
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

get_erd_overview ~56

Returns an ERD summary (entity/relationship/domain/word-list stats, standard link status).

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

import_dbml ~76

Fully replaces an existing ERD with the DBML parse result (project id preserved, dialect fixed to mysql). Rejected as invalid_source when no tables are found.

NameTypeReqDescription
dbmlstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

import_sql ~78

Fully replaces an existing ERD with the SQL parse result (project id preserved). Rejected as invalid_source when no tables are found.

NameTypeReqDescription
dialectstringDefaults to mysql
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
sqlstringyes

No output schema declared.

No examples provided.

introspect_db ~142

Imports the schema of a live PostgreSQL/MySQL database into an existing ERD (full replace, project id preserved). Read-only — queries only the information schema/catalog; never reads table data. The database URL is used by this local process only and is never sent to Sqemo servers. Pro plan required; requires login.

NameTypeReqDescription
dbSchemastringSchema to read (postgres default: public; mysql default: database in the URL)
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
urlstringyespostgres:// or mysql:// connection URL (credentials stay local)

No output schema declared.

No examples provided.

lint_erd ~92

Lints the whole project — structure (PKs, attributes, descriptions, domains), referential integrity, duplicate physical names, and the naming standard (unregistered words, physical-name drift) in one pass. Quality/standards oriented, unlike validate_erd (structural validity).

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

list_domains ~56

Lists domain definitions (name, data type). With a {workspaceId} source, reads the latest workspace-standard master.

NameTypeReqDescription
sourceyesDictionary source — exactly one of a local file, a server ERD, or a workspace standard

No output schema declared.

No examples provided.

list_entities ~46

Lists entities (logical name, physical name, attribute count).

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

list_erds ~38

Lists server ERDs (owned/shared). Owner and shared editors can both write. Requires login — `npx sqemo-mcp login`.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_proposals ~66

Lists the workspace-standard proposal queue (word/domain, newest first, mine = my proposals). Filterable by status. Requires login.

NameTypeReqDescription
sourceyesDictionary source — exactly one of a local file, a server ERD, or a workspace standard
statusstring

No output schema declared.

No examples provided.

list_relationships ~48

Lists relationships (endpoint entity names, cardinality, identifying flag).

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

list_workspaces ~33

Lists my workspaces (owner first) and whether a standard (word list + naming rules) exists. Requires login.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

propose_dictionary_word ~156

Proposes a new word for the workspace standard's word list (the owner approves/rejects in the web app). source is {workspaceId} or a standard-linked ERD ({file}/{erdId}, resolved via glossaryLink). Registered words return already_exists; a pending duplicate returns already_proposed. Requires login.

NameTypeReqDescription
abbreviationstring
descriptionstring
englishNamestring
logicalWordstringyesLogical word to register
notestringReason for the proposal
physicalWordstringyesPhysical word — normalized to uppercase
sourceyesDictionary source — exactly one of a local file, a server ERD, or a workspace standard

No output schema declared.

No examples provided.

search_dictionary ~82

Partial-match word-list search across logical/physical/abbreviation/English/synonyms (case-insensitive, max 50). With a {workspaceId} source, reads the latest workspace-standard master.

NameTypeReqDescription
querystringyesSearch term
sourceyesDictionary source — exactly one of a local file, a server ERD, or a workspace standard

No output schema declared.

No examples provided.

update_naming_rules ~88

Partially updates the naming rules (delimiter, case, unknown-word handling). Existing physical names are not regenerated retroactively (noted in warnings).

NameTypeReqDescription
casingstring
separatorstring
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
unknownWordModestring

No output schema declared.

No examples provided.

upsert_attribute ~153

Creates an attribute (no attributeId, logicalName required) or updates one (attributeId given, only provided fields change). primaryKey=true forces nullable=false and propagates child FKs. With a domain, the domain decides the data type.

NameTypeReqDescription
attributeIdstring
dataTypestring
defaultValuestring
domainstring
entityIdstringyes
logicalNamestring
nullableboolean
primaryKeyboolean
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
uniqueboolean

No output schema declared.

No examples provided.

upsert_dictionary_word ~125

Adds a glossary entry (upsert by logicalWord) or updates one (entryId given). Physical words are normalized to uppercase. Standard-linked (glossaryLink) dictionaries are rejected with dictionary_is_linked.

NameTypeReqDescription
abbreviationstring
descriptionstring
englishNamestring
entryIdstring
logicalWordstringyes
physicalWordstringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

upsert_domain ~88

Creates a domain (upsert by name) or updates one (domainId given). Existing description preserved when omitted.

NameTypeReqDescription
dataTypestringyes
descriptionstring
domainIdstring
namestringyes
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

upsert_entity ~92

Creates an entity (no entityId, logicalName required) or updates one (entityId given, only provided fields change). The physical table and name are derived automatically.

NameTypeReqDescription
descriptionstring
entityIdstring
logicalNamestring
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

upsert_relationship ~198

Creates a relationship (no relationshipId, source/targetEntityId required — FKs derived automatically) or updates one (relationshipId given). On update, sourceEnd/targetEnd take precedence; otherwise ends are re-derived from cardinality. onDelete/onUpdate set the FK referential actions ('noAction' reverts to the DB default); constraintName sets the FK constraint name (empty string reverts to auto-generation).

NameTypeReqDescription
cardinalitystring
constraintNamestring
onDeletestring
onUpdate
relationshipIdstring
relationshipTypestring
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})
sourceEndstring
sourceEntityIdstring
targetEnd
targetEntityIdstring

No output schema declared.

No examples provided.

validate_erd ~49

Validates project structure and referential integrity ({ valid, errors }).

NameTypeReqDescription
sourceyesTarget ERD — exactly one of a local file ({file}) or a server ERD ({erdId})

No output schema declared.

No examples provided.

withdraw_proposal ~44

Withdraws your own pending proposal. Proposals by others or already processed return not_found. Requires login.

NameTypeReqDescription
proposalIdstringyesProposal id from list_proposals

No output schema declared.

No examples provided.