- endpoint
- https://aiarchitect.atsign.com/mcp
- protocol
- http-sse ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is ai-architect-mcp live?
- Yes — it answered the hub's last check (checked 2h ago). It answered 100% of checks over the last 30 days.
- Is ai-architect-mcp free to use?
- Not anonymously — it asks for a key or a login before it will serve. Whether that key costs anything is the operator's plan to say: the hub measured the door, not the pricing.
- What tools does ai-architect-mcp have?
- 22 tools: list_connection_types, delete_node, delete_edge, update_node_label, update_node_notes, update_edge_notes, push_blueprint, suggest_vertical_position, ….
- Is ai-architect-mcp safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 100%· all time 100%
last good check
of 22 tools
- unknown → live
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
list_connection_types auth-required 2h ago
Return the current allowed connection-type catalog as structured JSON.
{ "type": "object", "required": [ "streamSessionId" ], "properties": { "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 13 linesdelete_node auth-required never probed
Delete a node from the blueprint. Use this to fix validation errors or remove unwanted nodes. Streams deletion event to UI if sessionId provided.
{ "type": "object", "required": [ "nodeId", "streamSessionId" ], "properties": { "nodeId": { "type": "string", "description": "The id of the node to delete." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 18 linesdelete_edge auth-required never probed
Delete an edge from the blueprint. Use this to fix validation errors or remove unwanted connections. Streams deletion event to UI if sessionId provided.
{ "type": "object", "required": [ "edgeId", "streamSessionId" ], "properties": { "edgeId": { "type": "string", "description": "The id of the edge to delete." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 18 linesupdate_node_label auth-required never probed
Update the label of an existing node. Use this to fix typos or improve clarity. Streams update event to UI if sessionId provided.
{ "type": "object", "required": [ "nodeId", "label", "streamSessionId" ], "properties": { "label": { "type": "string", "description": "New label text." }, "nodeId": { "type": "string", "description": "The id of the node to update." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 23 linesupdate_node_notes auth-required never probed
Update the notes/description of an existing node. Use this to add missing notes or improve documentation. Streams update event to UI if sessionId provided.
{ "type": "object", "required": [ "nodeId", "notes", "streamSessionId" ], "properties": { "notes": { "type": "string", "description": "New notes text. Supports markdown: newlines, `- ` for lists, **bold**, *italic*." }, "nodeId": { "type": "string", "description": "The id of the node to update." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 23 linesupdate_edge_notes auth-required never probed
Update the caption/notes on an existing edge. Use this to improve edge labeling or fix missing notes. Streams update event to UI if sessionId provided.
{ "type": "object", "required": [ "edgeId", "notes", "streamSessionId" ], "properties": { "notes": { "type": "string", "description": "New edge caption (3-8 words). This controls canvas display." }, "edgeId": { "type": "string", "description": "The id of the edge to update." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 23 linespush_blueprint auth-required never probed
Push a complete, validated blueprint JSON to the user's browser so the canvas updates immediately. Use this after a successful validate_blueprint call to replace the canvas with the final blueprint. Requires an active stream session.
{ "type": "object", "required": [ "blueprint", "streamSessionId" ], "properties": { "blueprint": { "oneOf": [ { "type": "string" }, { "type": "object" } ], "description": "The complete blueprint as a JSON string or already-parsed object. Must pass validate_blueprint before calling this." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 25 linessuggest_vertical_position auth-required never probed
Calculate position for vertical flow layout (top to bottom). Returns {x, y}. Nodes will be spaced 350px apart vertically.
{ "type": "object", "required": [ "index", "streamSessionId" ], "properties": { "baseX": { "type": "number", "description": "Optional X position for the column (defaults to 100)." }, "index": { "type": "number", "description": "Node index in the vertical sequence (0-based)." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 22 linesvalidate_blueprint auth-required never probed
Validate blueprint JSON against schema. Returns { valid, errors, warnings }.
{ "type": "object", "required": [ "blueprint", "streamSessionId" ], "properties": { "blueprint": { "oneOf": [ { "type": "string" }, { "type": "object" } ], "description": "The blueprint as a JSON string or already-parsed object." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 25 linesexport_for_implementation auth-required never probed
Export a validated blueprint with Atsign Platform implementation guide. Returns the same format as the web app's 'Export Prompt' button: blueprint structure + complete Atsign Platform SDK guide + node roles. Use this in IDEs (Cursor, Claude Code) to get everything needed for code generation in one call.
{ "type": "object", "required": [ "blueprint", "streamSessionId" ], "properties": { "blueprint": { "oneOf": [ { "type": "string" }, { "type": "object" } ], "description": "The validated blueprint as a JSON string or object." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 25 linesget_implementation_rules auth-required 2h ago
Return Atsign Platform implementation rules for code generation. Only call after successful validation.
{ "type": "object", "required": [ "streamSessionId" ], "properties": { "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 13 linesget_layout_constants auth-required 2h ago
Get recommended spacing constants for manual position calculation. Returns spacing values, node dimensions, and starting positions.
{ "type": "object", "required": [ "streamSessionId" ], "properties": { "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 13 linescanonical_edge_style auth-required never probed
Return the canonical edge.style block for a given connectionType. One of: default, async, sync, notification, rpc, stream, tcp.
{ "type": "object", "required": [ "connectionType", "streamSessionId" ], "properties": { "connectionType": { "enum": [ "default", "async", "sync", "notification", "rpc", "stream", "tcp" ], "type": "string" }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 26 linesscaffold_blueprint auth-required never probed
Return schema-valid empty blueprint with one page. Always use this instead of hand-writing top-level JSON.
{ "type": "object", "required": [ "streamSessionId" ], "properties": { "title": { "type": "string", "description": "Blueprint title (stored in metadata.title; shown in the Blueprint Name field in the app)." }, "pageName": { "type": "string", "description": "Optional first page name override (defaults to \"Page 1\")." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 21 lineslist_node_types auth-required never probed
Return the current allowed node-type catalog as structured JSON, together with the SCOPING PRINCIPLE that determines whether something should be a node at all. Read aiarchitect://rules/architecture-principles before calling this if you have not already.
{ "type": "object", "required": [ "streamSessionId" ], "properties": { "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 13 linesscaffold_node auth-required never probed
Build complete node JSON with all required dimension/style fields and generates a unique id. Always use this instead of hand-writing. Notes support markdown. IMPORTANT: Use suggest_grid_position, suggest_horizontal_position, or suggest_vertical_position to calculate positions for clean layouts with proper spacing.
{ "type": "object", "required": [ "type", "label", "notes", "position", "streamSessionId" ], "properties": { "type": { "type": "string", "description": "Node type key (e.g., person, process)." }, "label": { "type": "string", "description": "Display label." }, "notes": { "type": "string", "description": "Node description. Explain what it is, what it's responsible for, and what information it works with. Use 2-4 sentences or a short bulleted list. Supports markdown: actual newlines, `- ` for lists, **bold**, *italic*." }, "width": { "type": "number", "description": "Optional, defaults to 290." }, "height": { "type": "number", "description": "Optional, defaults to 200." }, "position": { "type": "object", "required": [ "x", "y" ], "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "description": "Node position. Use suggest_grid_position, suggest_horizontal_position, or suggest_vertical_position for proper spacing.", "additionalProperties": false }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 54 linesscaffold_edge auth-required never probed
Build complete edge JSON with canonical style and handles, generates unique id. Always use this instead of hand-writing. Canvas caption comes from data.notes (3-8 words) or falls back to connectionType label if notes is omitted.
{ "type": "object", "required": [ "source", "target", "connectionType", "streamSessionId" ], "properties": { "notes": { "type": "string", "description": "Optional edge caption (3-8 words). This controls canvas display. Omit to show connection-type label." }, "source": { "type": "object", "required": [ "id", "position" ], "properties": { "id": { "type": "string" }, "position": { "type": "object", "required": [ "x", "y" ], "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false } }, "additionalProperties": false }, "target": { "type": "object", "required": [ "id", "position" ], "properties": { "id": { "type": "string" }, "position": { "type": "object", "required": [ "x", "y" ], "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false } }, "additionalProperties": false }, "animated": { "type": "boolean", "description": "Optional, defaults to false." }, "description": { "type": "string", "description": "Optional: what flows + mechanism (format: '<what> — <how>')." }, "connectionType": { "type": "string", "description": "Connection type key." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 90 linespick_edge_handles auth-required never probed
Return { sourceHandle, targetHandle } so edges leave from the side facing the other node. Always call for every edge.
{ "type": "object", "required": [ "source", "target", "streamSessionId" ], "properties": { "source": { "type": "object", "required": [ "x", "y" ], "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "target": { "type": "object", "required": [ "x", "y" ], "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "additionalProperties": false }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 47 linessuggest_grid_position auth-required never probed
Calculate well-spaced grid position for a node. Returns {x, y}. Use this for clean layouts - nodes will have proper spacing (450px horizontal, 350px vertical). Much better than manually calculating positions.
{ "type": "object", "required": [ "row", "col", "streamSessionId" ], "properties": { "col": { "type": "number", "description": "Column index (0-based). 0 = leftmost column, 1 = second column, etc." }, "row": { "type": "number", "description": "Row index (0-based). 0 = top row, 1 = second row, etc." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 23 linessuggest_horizontal_position auth-required never probed
Calculate position for horizontal flow layout (left to right). Returns {x, y}. Nodes will be spaced 450px apart horizontally.
{ "type": "object", "required": [ "index", "streamSessionId" ], "properties": { "baseY": { "type": "number", "description": "Optional Y position for the row (defaults to 100)." }, "index": { "type": "number", "description": "Node index in the horizontal sequence (0-based)." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 22 linesupdate_node_position auth-required never probed
Update the position of an existing node. Use this to adjust layout or fix cramped spacing. Streams update event to UI if sessionId provided.
{ "type": "object", "required": [ "nodeId", "position", "streamSessionId" ], "properties": { "nodeId": { "type": "string", "description": "The id of the node to move." }, "position": { "type": "object", "required": [ "x", "y" ], "properties": { "x": { "type": "number" }, "y": { "type": "number" } }, "description": "New position. Use suggest_grid_position, suggest_horizontal_position, or suggest_vertical_position for proper spacing." }, "streamSessionId": { "type": "string", "description": "Required: session ID from the AI Architect web UI. Must be an active authenticated session." } }, "additionalProperties": false }arguments 35 linesrequest_current_blueprint auth-required never probed
Request access to the blueprint currently loaded in the user's browser. This will prompt the user for permission. If granted, returns the blueprint JSON with metadata (node count, edge count, last updated time). Use this when the user asks you to work with their existing blueprint (e.g., 'improve my blueprint', 'add nodes to my current design', 'analyze my blueprint'). Requires an active stream session — ask the user for their streamSessionId if you don't have it.
{ "type": "object", "required": [ "streamSessionId" ], "properties": { "reason": { "type": "string", "description": "Optional: explain why you need access (shown to user in permission dialog)." }, "streamSessionId": { "type": "string", "description": "Required: session ID for the active live streaming session. This ensures the request goes only to the correct user's browser." } }, "additionalProperties": false }arguments 17 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's ida3e66b5e8895948c.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/a3e66b5e8895948c/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/a3e66b5e8895948c?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.