Weavz – Code Mode MCP for 1k apps (3 tools, not 12,000)

blah_mad1 pts0 comments

For AI Developers — Governed MCP Workspaces for AI Agents | Weavz<br>Log inStart free

For AI Developers<br>Your Agent Gets 3 Tools. 12,000+ Agent Tools. Less Context.<br>Code Mode MCP replaces 12,000+ tool definitions with 3 meta-tools. Your agent searches, reads typed API docs, and writes JavaScript to compose multi-step workflows with Filesystem, State KV, Sandbox execution, and Human Gates.<br>Try Code Mode FreeRead the Docs

How it worksFrom zero to MCP in three steps

01

Create an MCP server<br>Pick integrations, connect accounts, choose Tool Mode or Code Mode. You get an MCP endpoint; OAuth-capable clients sign in through Weavz.

02

Paste the config<br>Drop the URL into Claude Desktop, Cursor, Windsurf, or anything that speaks MCP. One JSON block.

03

Agent runs stateful work<br>Your agent can search connected apps, read typed APIs, use 12,000+ tools, persist state, and pause risky steps for approval.

Code Mode MCP3 tools instead of 200+. Context-efficient by design.<br>Tool Mode sends every action as a separate tool definition — useful but context-heavy as the catalog grows. Large tool-schema lists can cost real money and degrade agent quality as irrelevant schemas crowd out useful reasoning. Code Mode replaces all tools with 3 meta-tools that let your agent search, read, and execute on demand. The agent loads only what it needs, improving output quality and lowering token costs.

Context Usage Comparison<br>Tool ModeLarge schema load<br>{name:"slack_send_message", inputSchema: { type: "object", ... }}<br>{name:"slack_list_channels", inputSchema: { type: "object", ... }}<br>{name:"slack_get_user", inputSchema: { type: "object", ... }}<br>{name:"slack_upload_file", inputSchema: { type: "object", ... }}<br>{name:"slack_set_topic", inputSchema: { type: "object", ... }}<br>{name:"slack_add_reaction", inputSchema: { type: "object", ... }}<br>{name:"github_create_issue", inputSchema: { type: "object", ... }}<br>{name:"github_list_repos", inputSchema: { type: "object", ... }}<br>{name:"github_create_pr", inputSchema: { type: "object", ... }}<br>{name:"github_merge_pr", inputSchema: { type: "object", ... }}<br>{name:"github_get_file", inputSchema: { type: "object", ... }}<br>{name:"github_create_comment", inputSchema: { type: "object", ... }}<br>{name:"google_sheets_read", inputSchema: { type: "object", ... }}<br>{name:"google_sheets_write", inputSchema: { type: "object", ... }}<br>{name:"google_sheets_create", inputSchema: { type: "object", ... }}<br>{name:"salesforce_create_lead", inputSchema: { type: "object", ... }}<br>{name:"salesforce_update_contact", inputSchema: { type: "object", ... }}<br>{name:"salesforce_query", inputSchema: { type: "object", ... }}<br>{name:"hubspot_create_deal", inputSchema: { type: "object", ... }}<br>{name:"hubspot_list_contacts", inputSchema: { type: "object", ... }}<br>{name:"hubspot_add_note", inputSchema: { type: "object", ... }}<br>{name:"notion_create_page", inputSchema: { type: "object", ... }}<br>{name:"notion_query_db", inputSchema: { type: "object", ... }}<br>{name:"notion_update_block", inputSchema: { type: "object", ... }}<br>{name:"gmail_send_email", inputSchema: { type: "object", ... }}<br>{name:"gmail_list_threads", inputSchema: { type: "object", ... }}<br>{name:"gmail_get_message", inputSchema: { type: "object", ... }}<br>{name:"airtable_create_record", inputSchema: { type: "object", ... }}<br>{name:"airtable_list_records", inputSchema: { type: "object", ... }}<br>{name:"airtable_update", inputSchema: { type: "object", ... }}<br>{name:"jira_create_issue", inputSchema: { type: "object", ... }}<br>{name:"jira_transition", inputSchema: { type: "object", ... }}<br>{name:"jira_add_comment", inputSchema: { type: "object", ... }}<br>{name:"linear_create_issue", inputSchema: { type: "object", ... }}<br>{name:"linear_list_projects", inputSchema: { type: "object", ... }}<br>{name:"linear_update_issue", inputSchema: { type: "object", ... }}<br>{name:"slack_send_message", inputSchema: { type: "object", ... }}<br>{name:"slack_list_channels", inputSchema: { type: "object", ... }}<br>{name:"slack_get_user", inputSchema: { type: "object", ... }}<br>{name:"github_create_issue", inputSchema: { type: "object", ... }}<br>{name:"github_list_repos", inputSchema: { type: "object", ... }}<br>{name:"github_create_pr", inputSchema: { type: "object", ... }}<br>{name:"google_sheets_read", inputSchema: { type: "object", ... }}<br>{name:"google_sheets_write", inputSchema: { type: "object", ... }}<br>{name:"google_sheets_create", inputSchema: { type: "object", ... }}

Code Mode3 meta-tools<br>{name:"weavz_search"}<br>{name:"weavz_read_api"}<br>{name:"weavz_execute"}

API details load on demand

weavz_search<br>Search available integrations and tools by keyword<br>weavz_search({ query: "slack" })

weavz_read_api<br>Read full API docs for one or more aliases on demand<br>weavz_read_api({ aliases: ["office_slack"] })

weavz_execute<br>Execute multi-step integration workflows in code<br>weavz_execute({ code: `<br>const channels = await weavz.office_slack.list_channels({});<br>await weavz.office_slack.send_channel_message({<br>channel: channels[0].id,<br>text: "Hello from AI!"<br>});<br>`...

name inputschema type object tools code

Related Articles