# Meta MCP (ContextVM) Meta MCP is a ContextVM server that accepts **requirements** for new MCP tools and returns a job id. It is intended to be used by other AIs that only have access to a single "meta" tool. The meta MCP then builds, deploys, and announces a new MCP server via Nostr (ContextVM). This repo contains the **server-side** MCP for the meta tool. It currently implements the request + job tracking surface; the build pipeline is stubbed and will be wired to the ContextVM/CVMI deployment flow next. --- ## Goals - Accept requirements for new tools - Create a repo/code for the new MCP server - Build + run the MCP server on this VPS - Announce the server on Nostr (ContextVM) - Return the **server pubkey** back to the requester --- ## Tool API ### `meta.request_tool` Request a new MCP tool/server. **Input** ```json { "requirements": [ { "name": "get_current_weather_by_city", "description": "Returns current weather for a city", "inputSchema": {"type":"object","properties":{"city":{"type":"string"}},"required":["city"]} } ], "timeoutSeconds": 120, "requester": {"name":"weather-bot","pubkey":"npub1..."}, "context": {"notes":"Need fast response"} } ``` **Output** ```json { "status": "building", "message": "Accepted. Building MCP server (pipeline stub).", "jobId": "" } ``` ### `meta.job_status` Check a previous job. **Input** ```json { "jobId": "" } ``` ### `meta.jobs_recent` List recent jobs. **Input** ```json { "limit": 10 } ``` --- ## Development ```bash npm install npm run dev ``` --- ## Deployment (ContextVM/CVMI) This server runs via stdio. Use **cvmi serve** to expose it over Nostr. Example: ```bash cvmi serve -- node dist/server.js ``` You can set `CVMI_SERVE_*` env vars to configure relays, encryption, and keys. --- ## Next Steps - Wire this server to a build/deploy pipeline - Add persistent storage for job state - Auto-create repos + scaffolds for new MCPs - Auto-start new MCP servers and announce via CVMI --- ## License MIT