# MCP discovery defaults to generic operations and supports full and filtered catalogs. stdin base.json exec semedit mcp stdout '"name":\s*"semantic_insert_construct"' stdout '"name":\s*"semantic_replace_construct"' ! stdout '"name":\s*"semantic_batch"' ! stdout '"name":\s*"semantic_insert_function"' stdin full.json exec semedit mcp --tool-profile full --enable-batching stdout '"name":\s*"semantic_insert_function"' stdout '"name":\s*"semantic_replace_body"' stdout '"name":\s*"semantic_batch"' stdin filtered.json exec semedit mcp --enable-batching --expose-tool-variant 'insert:function,insert:type' stdout '"name":\s*"semantic_insert_function"' stdout '"name":\s*"semantic_insert_type"' ! stdout '"name":\s*"semantic_insert_decl"' stdin all-variants.json exec semedit mcp --enable-batching --expose-tool-variant '*:*' stdout '"name":\s*"semantic_insert_function"' stdout '"name":\s*"semantic_insert_field"' stdout '"name":\s*"semantic_replace_body"' stdin function-variants.json exec semedit mcp --enable-batching --expose-tool-variant '*:function' stdout '"name":\s*"semantic_insert_function"' stdout '"name":\s*"semantic_replace_body"' ! stdout '"name":\s*"semantic_insert_type"' stdin no-match.json ! exec semedit mcp --enable-batching --expose-tool-variant 'remove:no_such_construct' stderr 'no registered|matched no' stdin malformed.json ! exec semedit mcp --enable-batching --expose-tool-variant 'insert-function' stderr 'invalid tool variant' -- base.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- full.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- filtered.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- no-match.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- all-variants.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- function-variants.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- malformed.json -- {"jsonrpc":"2.0","id":1,"method":"tools/list"} -- go.mod -- module example.com/catalog go 1.24 -- main.go -- package main