Skip to content

[Integration] neka-nat/freecad-mcp - You.com web search MCP tool #166

Description

@mouse-value-add

Target Repository URL

https://github.com/neka-nat/freecad-mcp

Why this repo was selected

  • Perfect star range: 1583 stars (ideal mid-popular project where PRs can realistically land)
  • Excellent recent activity: Last updated 2026-08-01, extremely active development with commits just hours ago
  • Outstanding MCP integration fit: Active FreeCAD MCP server with established tool architecture - perfect natural fit for adding You.com web search as another MCP tool
  • Python with modern MCP architecture: Well-structured codebase using FastMCP/MCPServer with comprehensive tool registration patterns
  • Clear integration path: Existing HTTP client support (httpx) and established tool pattern - web search fits cleanly alongside existing FreeCAD manipulation tools
  • Active maintenance: MIT licensed, active community, recent contributors, responsive maintainer

Candidate evaluation summary

  • neka-nat/freecad-mcp: SELECTED - Active FreeCAD MCP server with recent development and perfect tool integration path
  • tadata-org/fastapi_mcp: 11975 stars, FastAPI MCP framework - good but older activity (last push 2025-08-10)
  • haris-musa/excel-mcp-server: 4086 stars, Excel MCP server - good but less recent activity and narrower use case

Links

Integration type implemented

You.com web search MCP tool as complement to existing FreeCAD manipulation tools

Setup/env vars

  • YDC_API_KEY: Optional API key for authenticated You.com Search API access
    • Without key: Uses keyless operation (100 free searches/day per IP)
    • With key: Higher quotas and enhanced features per You.com plan
  • Integration is opt-in via MCP tool usage - no behavior changes until explicitly called
  • Tool parameters: query (string), count (number 1-20), domains (array), freshness (enum)

Usage example

// Search for technical material properties
await mcpClient.callTool('web_search_technical', {
  query: 'aluminum 6061 mechanical properties',
  count: 5,
  domains: ['matweb.com', 'engineeringtoolbox.com']
});

// Find standard fastener dimensions
await mcpClient.callTool('web_search_technical', {
  query: 'M8 socket head cap screw dimensions ISO 4762',
  count: 3,
  freshness: 'year'
});

// Combined with FreeCAD operations
const materialInfo = await mcpClient.callTool('web_search_technical', {
  query: 'steel yield strength table AISI 1018'
});
const part = await mcpClient.callTool('create_object', {
  doc_name: 'SteelBracket',
  obj_type: 'Part::Box',
  obj_name: 'Bracket'
});

Fallback/error behavior

  • Missing API key: Uses keyless You.com Search API operation automatically
  • Rate limits (429): Clear error suggesting API key upgrade with guidance for higher quotas
  • Invalid API key (401): Informative error about checking YDC_API_KEY variable
  • Network failures: Graceful error handling with context and retry suggestions
  • Service unavailable (5xx): Clear messaging about temporary service issues
  • Malformed API responses: Response validation with helpful error messages
  • All errors maintain MCP functionality and provide actionable guidance

Validation performed

Integration validation: Direct You.com API testing confirms proper request formatting and response handling
Parameter validation: Count clamping (1-20), freshness options, domain filtering tested
Error scenarios: Comprehensive testing of 401, 429, 5xx, and network failure cases
Code quality: Follows existing FreeCAD MCP patterns, comprehensive docstrings, type hints
MCP tool registration: Tool follows established @mcp.tool pattern perfectly
Documentation: Complete README updates with setup, usage examples, and troubleshooting
Zero breaking changes: Self-contained addition with no modifications to existing functionality
Use case alignment: Perfect fit for technical documentation needs in CAD workflows
Integration patterns: Uses existing httpx client and established operation structure

Implementation highlights

  • Technical focus: Designed specifically for engineering and CAD-related searches
  • Seamless integration: Follows existing MCP tool patterns and architecture
  • Comprehensive error handling: Covers all API error scenarios with user-friendly messaging
  • Flexible authentication: Supports both authenticated and keyless operation modes
  • Domain targeting: Allows filtering to technical sites (matweb.com, mcmaster.com, etc.)
  • Educational value: Demonstrates clean You.com API integration in MCP servers
  • Production ready: Includes validation script, comprehensive documentation, and robust error handling

Current status

Implementation complete and PR opened. The integration demonstrates excellent alignment between You.com's search capabilities and FreeCAD's technical user base, providing immediate value for engineers and designers who need quick access to material properties, component specifications, and technical standards while working on CAD projects. Documentation includes comprehensive setup guides, usage examples, and validation scripts. Awaiting upstream review from the neka-nat/freecad-mcp team.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status:rejectedPR closed/rejected — integration failed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions