AgentMarketMCP / SKILL 资产档案馆

目录 / viaduct-mcp

MCP 需 API Key 未评级 已上架

viaduct-mcp

MCP for C4 diagraming tool Viaduct

该来源不提供完整文件导出(国内平台多为平台内托管),仅存元数据与原链

接入信息

传输形态
http
鉴权方式
需 API Key(需要配置:apiToken)
端点
https://viaduct-mcp--quietgridlabs.run.tools
该服务需要凭证,请按官方文档申请后替换占位符
{
  "mcpServers": {
    "viaduct-mcp": {
      "headers": {
        "Authorization": "Bearer \u003cYOUR_KEY\u003e"
      },
      "url": "https://viaduct-mcp--quietgridlabs.run.tools"
    }
  }
}

能力清单

工具说明
c4_whoamiVerify C4 API auth and return the current user.
c4_list_projectsList Viaduct projects accessible to the authenticated user (includes access role).
c4_project_accessCheck access for a project. Write tools require canEdit=true (owner or edit share).
c4_project_contextGet LLM-ready markdown context for a project: systems, containers/services, components/endpoints (incl. request/response/headers), attached documentation and sequence diagrams.
c4_get_elementGet one C4 element (system/container/component/code) with docs and sequences.
c4_list_docsList documentation files for a project (optionally filtered by owner).
c4_get_docGet a single documentation file by id (searches project docs list).
c4_list_sequencesList sequence diagrams attached to containers/components in a project.
c4_get_sequenceGet one sequence diagram (PlantUML) by id.
c4_list_data_flowsList project-level Magic flows with step outlines (from→to, endpoints, connections, parallelGroupId, branchKind). Use this before creating a flow so you update an existing journey instead of duplicating it.
c4_get_data_flowGet one Magic flow with resolved participant names, steps, endpoints, connections, and optional parallelGroupId / branchKind.
c4_searchSearch systems/containers/components/code/Magic flows (names, descriptions, endpoints, sequences) in a project.
c4_list_change_setsList implementation change sets for a project: the pieces of work an architect has specified, each pinned to a named architecture revision.
c4_get_implementation_bundleEverything needed to implement ONE change set, and nothing else: the intent, the architecture constraints, the acceptance criteria with stable ids, and only the in-scope elements, their contracts, the connections crossing the boundary, the flows that pass through, and the attached docs. Read this INSTEAD of c4_project_context when implementing. It is scoped to the work and read from a pinned revision, so it stays fixed while you work; c4_project_context returns the whole project and drifts as others edit it. Write a test for every acceptance criterion and put its id in the test name, e.g. it('[ac_19eedf3f7128] returns 201 ...'). That id is how the criterion is later matched to evidence that it holds.
c4_create_elementCreate a C4 element (system/container/component/endpoint/channel/code). Idempotent by name within parent. For ER tables under a DB container pass columns[]. A broker topic or queue is kind='channel' under its broker container — name it after the topic and give it protocol, schemaFormat and the keySchema / valueSchema / headersSchema contracts instead of the endpoint's method / request / response. Requires edit access.
c4_update_elementPatch fields on an existing C4 element. Pass columns[] to set ER table schema, or the channel fields (protocol / schemaFormat / keySchema / valueSchema / headersSchema / compatibility) to edit a broker topic's contract. Requires edit access.
c4_delete_elementDelete a C4 element. Fails if it has children unless cascade=true. Requires edit access.
c4_upsert_connectionCreate or update a connection from sourceId → targetId on the source element. For an edge to a broker, channelRole says which way the source is using it — produce or consume; a service doing both needs one connection per direction. Requires edit access.
c4_delete_connectionDelete a connection sourceId → targetId. Requires edit access.
c4_upsert_docCreate or update markdown documentation on an element and attach it to the entity (documentationId / documentations) so the canvas docs badge appears. Pass docId to update; omit to create. Requires edit access.
c4_delete_docDelete a documentation file. Requires edit access.
c4_upsert_sequenceCreate or update a PlantUML sequence diagram on a container or component. Requires edit access.
c4_delete_sequenceDelete a sequence diagram by id. Requires edit access.
c4_upsert_data_flowCreate or update a project-level Magic flow (from→to steps). Consecutive steps sharing parallelGroupId play as one stage: branchKind parallel = async/fan-out (AND), alternative = exclusive choice (OR). Pass flowId to update; omit to create (idempotent by name). Omitted fields on update are preserved. For a single hop prefer c4_upsert_data_flow_step. Optional documentationIds / sequenceIds attach existing docs and PlantUML diagrams. Requires edit access.
c4_delete_data_flowDelete a Magic flow by id. Requires edit access.
c4_upsert_data_flow_stepAdd or patch one hop on a Magic flow. Pass stepId to update (omitted fields are preserved). Omit stepId to append (from_ + to required). index is 0-based insert/move. Requires edit access.
c4_delete_data_flow_stepDelete one hop from a Magic flow. Requires edit access.
c4_report_progressReport what you just finished on a change set. Call this after each meaningful piece of work, not once at the end. Pass `criterionId` (an `ac_...` id from the implementation bundle) when the work proves that acceptance criterion — the criterion is then marked done and your entry becomes the evidence for it. Put the commit sha, PR url or test name in `ref`. Omit `criterionId` for general progress. The change set moves to `implementing` on the first report by itself; you do not need to set that.
c4_set_change_set_statusMove a change set to `ready`, `implementing` or `done`. Reporting progress already flips it to `implementing`, so in practice you call this to mark `done` once every acceptance criterion has evidence.
纠错与举报(发现条目失效、署名有误或涉及侵权?)
提交举报 / 纠错

侵权举报经核验成立后,我们会即时下线该条目并删除已存的内容副本。