Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Run Wiro AI models, build and run workflows, and talk to Studio and your Wiro agents.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
WIRO_API_KEY, WIRO_API_SECRET, WIRO_TOOLSETS, AuthorizationValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"wiro": {
"command": "npx",
"args": [
"-y",
"@wiro-ai/wiro-mcp"
],
"env": {
"WIRO_API_KEY": "your-value",
"WIRO_API_SECRET": "your-value",
"WIRO_TOOLSETS": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http wiro https://mcp.wiro.ai/v1 --header 'Authorization: Bearer {wiro_credentials}'claude mcp add wiro --env WIRO_API_KEY=your-value --env WIRO_API_SECRET=your-value --env WIRO_TOOLSETS=your-value -- npx -y @wiro-ai/wiro-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"wiro": {
"url": "https://mcp.wiro.ai/v1",
"headers": {
"Authorization": "Bearer {wiro_credentials}"
}
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"wiro": {
"command": "npx",
"args": [
"-y",
"@wiro-ai/wiro-mcp"
],
"env": {
"WIRO_API_KEY": "your-value",
"WIRO_API_SECRET": "your-value",
"WIRO_TOOLSETS": "your-value"
}
}
}
}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.
Paste into .vscode/mcp.json in your project
{
"servers": {
"wiro": {
"type": "http",
"url": "https://mcp.wiro.ai/v1",
"headers": {
"Authorization": "Bearer {wiro_credentials}"
}
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"wiro": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@wiro-ai/wiro-mcp"
],
"env": {
"WIRO_API_KEY": "your-value",
"WIRO_API_SECRET": "your-value",
"WIRO_TOOLSETS": "your-value"
}
}
}
}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.
This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.
Your choice stays on this device in a cookie; no account needed.
WIRO_TOOLSETS envAuthorization secret HTTP headerThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
The server asks you to sign in before it lists its tools.
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
The registry name was verified against the domain wiro.ai (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Responded in 615 ms (HTTP 401)
Declares OAuth sign-in, so your AI app can take you to log in
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 3 of 3 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.
You need to fill in: WIRO_API_KEY, WIRO_API_SECRET, Authorization
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (1.5.1) reached the registry 3 days ago.
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.
In the same category: Spec Driven Development, Remote Desktop Commander, FactLot
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
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Cited CRE facts and deterministic calculators for agents: rent, CAM, debt sizing, IRR, parcel IDs.
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.
Official MCP server for Wiro AI: run image, video, audio and LLM models, build and run workflows, and deploy and talk to AI agents from Cursor, Claude Code, Claude Desktop, Windsurf and any other MCP client.
Website · Models · Docs · Dashboard
@wiro-ai/wiro-mcp is a TypeScript Model Context Protocol server that runs locally over stdio with npx. Its tools are grouped in three sets:
Playbooks explain each job step by step, so the assistant knows the order of calls, what costs money and what needs your approval. The hosted server at https://mcp.wiro.ai/v1 serves the same tools with nothing to install.
Local npx and library usage require Node.js 20 or later. The hosted MCP endpoint does not require a local Node.js installation.
Sign up at wiro.ai and create a project at wiro.ai/panel/project/new to get your API key and secret.
Cursor: open MCP settings (Cmd+Shift+P → "Open MCP settings") and add:
{
"mcpServers": { "wiro": { "command": "npx", "args": ["-y", "@wiro-ai/wiro-mcp"], "env": { "WIRO_API_KEY": "your-api-key", "WIRO_API_SECRET": "your-api-secret" } } } }
Claude Code:
claude mcp add wiro -- npx -y @wiro-ai/wiro-mcp
Then set environment variables WIRO_API_KEY and WIRO_API_SECRET.
Claude Desktop: add to claude_desktop_config.json:
{
"mcpServers": { "wiro": { "type": "stdio", "command": "npx", "args": ["-y", "@wiro-ai/wiro-mcp"], "env": { "WIRO_API_KEY": "your-api-key", "WIRO_API_SECRET": "your-api-secret" } } } }
Windsurf: add to MCP settings:
{
"mcpServers": { "wiro": { "command": "npx", "args": ["-y", "@wiro-ai/wiro-mcp"], "env": { "WIRO_API_KEY": "your-api-key", "WIRO_API_SECRET": "your-api-secret" } } } }
OpenClaw: configure a remote server under mcp.servers:
{
"mcp": { "servers": { "wiro": { "url": "https://mcp.wiro.ai/v1", "transport": "streamable-http", "connectionTimeoutMs": 10000, "headers": { "Authorization": "Bearer ${WIRO_MCP_AUTH}" } } } } }
Set WIRO_MCP_AUTH in OpenClaw's environment to your API key, or to API_KEY:API_SECRET for a project with signature-based auth. Then verify with openclaw mcp doctor wiro --probe. On older OpenClaw releases without that probe command, use openclaw mcp show wiro, restart OpenClaw, and run /tools verbose.
Hermes: add to ~/.hermes/config.yaml:
mcp_servers:
wiro: url: "https://mcp.wiro.ai/v1" headers: Authorization: "Bearer ${WIRO_MCP_AUTH}" timeout: 60 connect_timeout: 10
Store WIRO_MCP_AUTH (your API key, or API_KEY:API_SECRET) in ~/.hermes/.env, then run /reload-mcp and /tools.
Ask your AI assistant:
Models
Workflows
Agents
Wiro AI supports two authentication types, chosen when you create a project:
More secure. Requires both API key and API secret.
WIRO_API_KEY=your-api-key
WIRO_API_SECRET=your-api-secret
Simpler. Only requires the API key. Omit WIRO_API_SECRET from your config.
WIRO_API_KEY=your-api-key
The hosted server takes the same credentials as a bearer token: Authorization: Bearer API_KEY:API_SECRET for a signature-based project, or Authorization: Bearer API_KEY for an API Key Only project.
| Tool | Description |
|---|---|
search_models | Search and browse AI models by keyword, category, or owner |
get_model_schema | Get full parameter schema and pricing for any model, or the parameters and output ports of a workflow utility |
recommend_model | Find models for a goal from two or three key words, best matches first |
explore | Browse curated models grouped by category, no parameters needed |
run_model | Run any model, waiting up to 45s by default before it returns a recoverable task token |
wait_for_task | Continue waiting for an existing task without submitting or billing a duplicate run |
get_task | Check task status immediately or wait up to 45s with wait_seconds |
list_tasks | Browse authenticated task history across conversations, then continue with get_task |
get_task_price | Get the cost of a completed task |
cancel_task | Cancel a queued task |
kill_task | Stop a queued or running task |
upload_file | Upload a file from a public http(s) URL (up to about 100 MB) for use as model input |
For long generations, run_model returns the existing task ID and token when its wait budget expires. The assistant must continue with wait_for_task; retrying run_model creates a separate billable task.
A workflow chains models and built-in utility steps into one graph with its own inputs and outputs. Every model step is charged like a normal model run when it finishes. Wiro fills a model input you leave out with the model's default, so the save result lists what it filled, and a graph can be at most 40 KB of JSON.
| Tool | Description |
|---|---|
list_workflows | List the workflows in your workspace, or search the public gallery by text, tag or model |
get_workflow | Read a workflow's inputs, outputs and step graph |
create_workflow | Save a new workflow from a step graph. Wiro checks it against the live model catalog and returns every problem it finds at once |
update_workflow | Edit a workflow's title, description, tags or graph without overwriting newer changes; a new graph is saved only after you confirm a summary of the change |
clone_workflow | Copy a public workflow into your workspace |
delete_workflow | Delete a workflow, after your confirmation |
run_workflow | Run a workflow and wait for its outputs; can stop after a chosen step to test the first steps |
wait_for_workflow_run | Keep waiting on a run, read its outputs, or see why a step failed |
resume_workflow_run | Continue a failed or stopped run without paying again for finished steps |
list_workflow_runs | Browse past and current runs, including runs started on wiro.ai |
save_workflow_from_agent | Save a workflow the Workflow Agent proposed, as a new workflow, or onto an existing one after you confirm a summary of the change |
The Workflow Agent designs workflows with you in plain language: talk to it with send_agent_message and agent: "workflow-agent", attach an existing workflow to edit, then save its proposal with save_workflow_from_agent. Conversations started through this server belong to the connected project and are separate from your Workflow Agent chats on wiro.ai.
Talk to any Wiro agent with one set of tools. agent is "studio", "workflow-agent" or the id of one of your own agents. Session names use letters, digits, dots, dashes, underscores and colons, up to 128 characters (100 for the Workflow Agent), and cannot end in "-r" followed by a number. Studio refuses a message under any other name; a session it has under another name can be read and deleted, and to go on with it you start a new session.
| Tool | Description |
|---|---|
send_agent_message | Send a message and wait for the reply, with any media, workflows or model runs it produced |
get_agent_message | Keep waiting on a reply, or read one again |
get_agent_conversation | List conversations, or read one conversation's history |
cancel_agent_message | Stop a reply that is still being written |
delete_agent_session | Delete a conversation and the agent's memory of it, after your confirmation |
list_studio_results | List the images, videos and other results Studio generated for you |
Studio is Wiro's creative agent: it picks and runs models for you and charges your wallet after each reply. Your own agents run on a monthly plan with credits.
| Tool | Description |
|---|---|
list_agent_templates | Browse ready-made agent templates and their monthly prices |
get_agent_template | Read a template's skills, plans, and the accounts and keys it needs |
list_agent_skills | Browse the skills an agent can have, and what each one needs to work |
deploy_agent | Deploy an agent from a template or build one from skills; shows the price, the wallet it charges and the other tier's price, and asks before charging |
list_my_agents | List your agents with their status, plan and credits |
get_my_agent | Read one agent's setup, plan and credits; can wait until it is running |
control_agent | Start, stop or restart an agent |
update_agent | Change an agent's name, description, time zone, models and chat commands |
apply_agent_skills | Turn skills on or off; shows the price change and asks before charging |
set_agent_credentials | Save the keys, tokens and settings an agent's skills and channels need, such as a Telegram bot token or a Gmail app password |
connect_agent_oauth | Connect sign-in accounts such as HubSpot or X for the services an agent's skills use; you approve the connection in your browser. Some services need your own app keys or a token first |
disconnect_agent_oauth | Disconnect a connected account, after your confirmation |
| list_projects | List the projects of the connected proje
Only the beginning is shown; read the rest in the repo