Vibe Manufacturing
Find manufacturers worldwide, match a part spec to suppliers, estimate cost, request quotes.
使うべきか
品質と安全性
検出事項(1)
- LOWmatch_manufacturers 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"manufacturer-finder": {
"url": "https://vibe-manufacturing.com/api/mcp"
}
}
}リモートエンドポイント
https://vibe-manufacturing.com/api/mcpstreamable-httpできること
ツール一覧
ツール(19)
🟢search(query)
Search the Vibe Manufacturing playbook, guides, tool reviews and the manufacturer directory. Mention a process (for example CNC machining) or a country to get matching manufacturers. Returns result ids for fetch.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "What to look for, e.g. \"laser cutting manufacturers in Germany\" or \"how to check manufacturability\""
}
},
"required": [
"query"
]
}🟢fetch(id)
Fetch the full text of a document or manufacturer profile by the id returned from search.
入力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "A page URL or supplier:<CC>:<domain> from search results"
}
},
"required": [
"id"
]
}🟢search_site(query, limit)
Search the playbook, guides, tool reviews and comparisons on vibe-manufacturing.com.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text search term"
},
"limit": {
"type": "integer",
"description": "Max results, 1 to 20"
}
},
"required": [
"query"
]
}🟢get_playbook_step(step)
Get one of the 13 playbook steps (summary, explanation, checklist, related tools).
入力スキーマ
{
"type": "object",
"properties": {
"step": {
"type": "integer",
"minimum": 1,
"maximum": 13,
"description": "Step number 1 to 13"
}
},
"required": [
"step"
]
}🟢list_manufacturing_tools(category)
List tools and factories with pros and cons. Optional category: Fabrication, Electronics, Sourcing, Prototyping, Measuring, Design, Review.
入力スキーマ
{
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "Optional category filter"
}
}
}🟢estimate_product_cost(part, finishing, hardware, assembly_minutes, labor_rate_per_hour, ...)
Estimate landed cost per unit and the price needed for a target margin for a custom product. All money values in USD per unit.
入力スキーマ
{
"type": "object",
"properties": {
"part": {
"type": "number"
},
"finishing": {
"type": "number"
},
"hardware": {
"type": "number"
},
"assembly_minutes": {
"type": "number"
},
"labor_rate_per_hour": {
"type": "number"
},
"packaging": {
"type": "number"
},
"shipping": {
"type": "number"
},
"returns_percent": {
"type": "number"
},
"payment_fee_percent": {
"type": "number"
},
"target_margin_percent": {
"type": "number"
}
}
}🟢find_suppliers(country, process, city, limit)
Find contract manufacturers in the directory by country and process. Processes: laser-cutting, cnc-machining, sheet-metal, 3d-printing, injection-molding, pcb-assembly, die-casting, welding, waterjet-cutting, metal-stamping, forging, heat-treatment, grinding-polishing, casting, wire-forming, steel-construction, surface-finishing. Country as ISO code (DE) or slug (germany).
入力スキーマ
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2 code or country slug"
},
"process": {
"type": "string",
"description": "Process id, e.g. laser-cutting"
},
"city": {
"type": "string"
},
"limit": {
"type": "integer",
"description": "Max results, 1 to 100"
}
}
}🟢match_manufacturers(process, materials, certifications, country, quantity, ...)
Rank manufacturers for a structured part spec. Returns scored matches with the reasons, so an agent can explain the choice to its user.
入力スキーマ
{
"type": "object",
"properties": {
"process": {
"type": "string",
"enum": [
"laser-cutting",
"cnc-machining",
"sheet-metal",
"3d-printing",
"injection-molding",
"pcb-assembly",
"die-casting",
"welding",
"waterjet-cutting",
"metal-stamping",
"forging",
"heat-treatment",
"grinding-polishing",
"casting",
"wire-forming",
"steel-construction",
"surface-finishing"
]
},
"materials": {
"type": "array",
"items": {
"type": "string",
"enum": [
"aluminium",
"steel",
"stainless-steel",
"titanium",
"brass",
"copper",
"plastic"
]
}
},
"certifications": {
"type": "array",
"items": {
"type": "string",
"enum": [
"iso-9001",
"iso-14001",
"iatf-16949",
"iso-13485",
"as9100",
"en-1090",
"iso-45001",
"itar",
"nadcap",
"ul-listed",
"rohs",
"fda-registered",
"cmmc"
]
}
},
"country": {
"type": "string",
"description": "Preferred country, ISO code or slug"
},
"quantity": {
"type": "integer",
"description": "Units wanted; favors prototype-friendly shops for small numbers and series producers for large ones"
},
"file_formats": {
"type": "array",
"items": {
"type": "string",
"enum": [
"step",
"dxf",
"dwg",
"stl",
"iges",
"3mf",
"gerber"
]
},
"description": "CAD formats you can supply"
},
"industries": {
"type": "array",
"items": {
"type": "string",
"enum": [
"automotive",
"aerospace",
"medical",
"energy",
"railway",
"marine",
"electronics",
"food",
"construction",
"packaging",
"defense",
"consumer"
]
}
},
"tolerance_mm": {
"type": "number",
"description": "Tightest tolerance you need, in mm"
},
"limit": {
"type": "integer"
}
},
"required": [
"process"
]
}🟢get_design_rules(process)
Design-for-manufacturing rules for one process (sheet metal, CNC machining, injection molding, 3D printing, casting, welding, PCB assembly and more): typical tolerances, file formats, the rules with their reasons, a pre-RFQ checklist and common mistakes. Typical rules of thumb; the manufacturer's own guidelines override them. Omit process to list all.
入力スキーマ
{
"type": "object",
"properties": {
"process": {
"type": "string",
"enum": [
"laser-cutting",
"cnc-machining",
"sheet-metal",
"3d-printing",
"injection-molding",
"pcb-assembly",
"die-casting",
"welding",
"waterjet-cutting",
"metal-stamping",
"forging",
"heat-treatment",
"grinding-polishing",
"casting",
"wire-forming",
"steel-construction",
"surface-finishing"
]
}
}
}🟢check_design(process, params)
Check a design against typical manufacturing rules before you request quotes. Returns pass, warn or fail per check with the limit and the reason. Supported processes: sheet-metal, laser-cutting, cnc-machining, 3d-printing, injection-molding, die-casting, casting, metal-stamping, pcb-assembly. Parameters are in millimetres/degrees, for example thickness_mm, bend_radius_mm, flange_length_mm, hole_diameter_mm, hole_to_edge_mm, hole_to_bend_mm, wall_thickness_mm, pocket_depth_mm, inside_corner_radius_mm, draft_deg, material.
入力スキーマ
{
"type": "object",
"properties": {
"process": {
"type": "string",
"enum": [
"sheet-metal",
"laser-cutting",
"cnc-machining",
"3d-printing",
"injection-molding",
"die-casting",
"casting",
"metal-stamping",
"pcb-assembly"
]
},
"params": {
"type": "object",
"description": "Numeric design parameters, see the tool description",
"additionalProperties": true
}
},
"required": [
"process",
"params"
]
}🟢find_registered_businesses(country, process, city, limit, after)
Find manufacturing businesses you can contact directly, including official-registry establishments without a website (Mexico: INEGI DENUE). Returns how to reach each one: contact form, phone and email (published only for legal entities), website. Filter by ISO country code (MX, US, ...), process and city. Use next_after to page.
入力スキーマ
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "ISO 3166-1 alpha-2, e.g. MX"
},
"process": {
"type": "string",
"enum": [
"laser-cutting",
"cnc-machining",
"sheet-metal",
"3d-printing",
"injection-molding",
"pcb-assembly",
"die-casting",
"welding",
"waterjet-cutting",
"metal-stamping",
"forging",
"heat-treatment",
"grinding-polishing",
"casting",
"wire-forming",
"steel-construction",
"surface-finishing"
]
},
"city": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
},
"after": {
"type": "integer",
"description": "next_after value from the previous page"
}
}
}🔴submit_quote_request(email, description, process, country, quantity, ...)
Send a quote request for the human you act for. Only call after the user agreed that the request and email may be shared with suitable manufacturers. A person reviews it and replies by email.
入力スキーマ
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Reply address of the human requester"
},
"description": {
"type": "string",
"description": "Part, material, size, tolerances, file formats"
},
"process": {
"type": "string",
"enum": [
"laser-cutting",
"cnc-machining",
"sheet-metal",
"3d-printing",
"injection-molding",
"pcb-assembly",
"die-casting",
"welding",
"waterjet-cutting",
"metal-stamping",
"forging",
"heat-treatment",
"grinding-polishing",
"casting",
"wire-forming",
"steel-construction",
"surface-finishing"
]
},
"country": {
"type": "string"
},
"quantity": {
"type": "string"
},
"user_consent": {
"type": "boolean",
"description": "true only if the user agreed to share the request with manufacturers"
}
},
"required": [
"email",
"description",
"user_consent"
]
}🔴create_rfq(process, quantity, description, requester_email, user_consent, ...)
Create a structured request for quotation for the human you act for. Call get_rfq_requirements for the process first and upload files with upload_rfq_file; use dry_run to check completeness before sending. The answer contains quote_readiness, missing and recommended items. We match manufacturers, email the ones that opted in, and return direct contact, quote-form and agent links for all matches plus an RFQ id and a token to read quotes later. Only call after the user agreed that the request is shared with matched manufacturers.
入力スキーマ
{
"type": "object",
"properties": {
"process": {
"type": "string",
"enum": [
"laser-cutting",
"cnc-machining",
"sheet-metal",
"3d-printing",
"injection-molding",
"pcb-assembly",
"die-casting",
"welding",
"waterjet-cutting",
"metal-stamping",
"forging",
"heat-treatment",
"grinding-polishing",
"casting",
"wire-forming",
"steel-construction",
"surface-finishing"
]
},
"quantity": {
"type": "integer",
"minimum": 1
},
"description": {
"type": "string",
"description": "Part, size, material, use"
},
"requester_email": {
"type": "string"
},
"user_consent": {
"type": "boolean",
"description": "true only if the user agreed to share the request with matched manufacturers"
},
"materials": {
"type": "array",
"items": {
"type": "string",
"enum": [
"aluminium",
"steel",
"stainless-steel",
"titanium",
"brass",
"copper",
"plastic"
]
}
},
"certifications": {
"type": "array",
"items": {
"type": "string",
"enum": [
"iso-9001",
"iso-14001",
"iatf-16949",
"iso-13485",
"as9100",
"en-1090",
"iso-45001",
"itar",
"nadcap",
"ul-listed",
"rohs",
"fda-registered",
"cmmc"
]
}
},
"industries": {
"type": "array",
"items": {
"type": "string",
"enum": [
"automotive",
"aerospace",
"medical",
"energy",
"railway",
"marine",
"electronics",
"food",
"construction",
"packaging",
"defense",
"consumer"
]
}
},
"file_formats": {
"type": "array",
"items": {
"type": "string",
"enum": [
"step",
"dxf",
"dwg",
"stl",
"iges",
"3mf",
"gerber"
]
}
},
"cad_files": {
"type": "array",
"maxItems": 5,
"items": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "public https URL of the CAD file"
},
"format": {
"type": "string",
"enum": [
"step",
"dxf",
"dwg",
"stl",
"iges",
"3mf",
"gerber"
]
},
"sha256": {
"type": "string"
}
},
"required": [
"url"
]
}
},
"tolerance_mm": {
"type": "number"
},
"finish": {
"type": "string"
},
"needed_by": {
"type": "string"
},
"ship_to_country": {
"type": "string",
"description": "ISO 3166-1 alpha-2"
},
"budget_note": {
"type": "string"
},
"thickness_mm": {
"type": "number",
"description": "Material thickness for sheet, plate and cut parts"
},
"file_ids": {
"type": "array",
"maxItems": 10,
"items": {
"type": "string"
},
"description": "file_id values returned by upload_rfq_file"
},
"dry_run": {
"type": "boolean",
"description": "true = check completeness only; nothing is stored or sent"
},
"strict": {
"type": "boolean",
"description": "true = refuse to send when required items are missing"
},
"callback_url": {
"type": "string",
"description": "Optional https URL that receives a signed event when a factory answers"
}
},
"required": [
"process",
"quantity",
"description",
"requester_email",
"user_consent"
]
}🟢get_rfq(rfq_id, token)
Read the matches and the quotes received so far for an RFQ you created. Needs the rfq_id and the token returned by create_rfq.
入力スキーマ
{
"type": "object",
"properties": {
"rfq_id": {
"type": "string"
},
"token": {
"type": "string"
}
},
"required": [
"rfq_id",
"token"
]
}🟢get_rfq_requirements(process)
What a factory needs to quote a given process (required and recommended items with accepted values). Read this before create_rfq so the request is complete.
入力スキーマ
{
"type": "object",
"properties": {
"process": {
"type": "string",
"enum": [
"laser-cutting",
"cnc-machining",
"sheet-metal",
"3d-printing",
"injection-molding",
"pcb-assembly",
"die-casting",
"welding",
"waterjet-cutting",
"metal-stamping",
"forging",
"heat-treatment",
"grinding-polishing",
"casting",
"wire-forming",
"steel-construction",
"surface-finishing"
]
}
},
"required": [
"process"
]
}🟡upload_rfq_file(name, content_base64, rfq_id, token)
Upload a design file (STEP/STP, IGES/IGS, STL, 3MF, OBJ, DXF, DWG, PDF, ZIP (Gerber files go in a ZIP); up to 6 MB as base64 here, up to 100 MB with POST /api/v1/rfq/files?name=...). Returns a file_id to pass in create_rfq file_ids. Unused files expire after 24 hours. Only upload files the user agreed to share with manufacturers.
入力スキーマ
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "File name with extension, e.g. bracket.step"
},
"content_base64": {
"type": "string"
},
"rfq_id": {
"type": "string",
"description": "Optional: attach to an existing request (needs token)"
},
"token": {
"type": "string",
"description": "The rfq token, or a supplier token, when rfq_id is given"
}
},
"required": [
"name",
"content_base64"
]
}🔴send_rfq_message(rfq_id, token, body, kind, company_id, ...)
Write to the matched factories about a request (buyer token) or to the buyer (supplier token): a question, an answer or an update, optionally with file_ids. We relay it by email or API and keep the thread.
入力スキーマ
{
"type": "object",
"properties": {
"rfq_id": {
"type": "string"
},
"token": {
"type": "string",
"description": "rfq token (buyer) or supplier token (factory)"
},
"body": {
"type": "string"
},
"kind": {
"type": "string",
"enum": [
"question",
"answer",
"note",
"update"
]
},
"company_id": {
"type": "integer",
"description": "Buyer only: address one matched manufacturer instead of all"
},
"file_ids": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 10
}
},
"required": [
"rfq_id",
"token",
"body"
]
}🟢get_rfq_thread(rfq_id, token, since)
Read the conversation of a request: messages from factories (answers, quotes, files) and your own. Pass since=<last message_id> to get only new ones.
入力スキーマ
{
"type": "object",
"properties": {
"rfq_id": {
"type": "string"
},
"token": {
"type": "string"
},
"since": {
"type": "integer"
}
},
"required": [
"rfq_id",
"token"
]
}🔴submit_quote(rfq_id, supplier_token, unit_price, currency, quantity, ...)
For a manufacturer's agent: answer an RFQ the company was matched to. Needs the supplier token issued when the company registered. Replaces any existing quote from this supplier for this RFQ, adds a thread entry and notifies the buyer by email and an optional callback; repeating the call sends notifications again. Only call with the supplier's authorization.
入力スキーマ
{
"type": "object",
"properties": {
"rfq_id": {
"type": "string"
},
"supplier_token": {
"type": "string"
},
"unit_price": {
"type": "number"
},
"currency": {
"type": "string",
"description": "3-letter code, default EUR"
},
"quantity": {
"type": "integer"
},
"lead_time_days": {
"type": "integer"
},
"valid_until": {
"type": "string",
"description": "YYYY-MM-DD"
},
"notes": {
"type": "string"
}
},
"required": [
"rfq_id",
"supplier_token",
"unit_price"
]
}コミュニティ
エビデンス