Skip to content

HubSpot MCP (minor): Initial MCP connector with dynamic tool discovery#1028

Open
salatv-ai wants to merge 1 commit into
Appmixer-ai:devfrom
salatv-ai:feature/hubspot-mcp
Open

HubSpot MCP (minor): Initial MCP connector with dynamic tool discovery#1028
salatv-ai wants to merge 1 commit into
Appmixer-ai:devfrom
salatv-ai:feature/hubspot-mcp

Conversation

@salatv-ai

Copy link
Copy Markdown
Contributor

Summary

Initial scaffold for HubSpot MCP connector — integrates with HubSpot's official remote MCP server.

Components

  • auth.js — OAuth 2.1 for HubSpot MCP Auth Apps (scopes determined dynamically at install time)
  • mcp-commons.js — MCP Streamable HTTP client + JSON Schema → Appmixer inspector transformer
  • ListTools — Private helper component, calls tools/list on MCP server, exports transforms for dynamic UI
  • CallTool — Universal tool execution with dynamic inspector (user selects tool → input form auto-generates from tool schema)
  • CallToolAI — AI-powered tool selection and execution from natural language prompts (scaffold, needs LLM provider integration)

Architecture

Uses the Jira-style dynamic inspector pattern (inPorts.source with transform) to generate input fields based on MCP tool inputSchema (JSON Schema). The ListTools helper acts like Jira's IssueMetadata — fetches available tools and transforms them into Appmixer inspector format.

Open items

  • PKCE support in OAuth flow (HubSpot MCP requires it)
  • CallToolAI: integrate with real LLM provider
  • Test with actual HubSpot MCP Auth App credentials

Refs

…ol discovery and execution

- auth.js: OAuth 2.1 for HubSpot MCP Auth Apps
- mcp-commons.js: MCP Streamable HTTP client, JSON Schema to Appmixer inspector transform
- ListTools: Helper component for dynamic tool discovery (tools/list)
- CallTool: Universal tool execution with dynamic inspector (inputs generated from tool schema)
- CallToolAI: AI-powered tool selection and execution from natural language prompts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant