MCP Hub Integration
The MCP Hub allows your integration to expose tools that AI agents can use directly. This enables agents to interact with external services through your integration, creating a powerful extension of their capabilities.What is MCP Hub?
The MCP (Model Context Protocol) Hub is a centralized way for integrations to expose tools to AI agents. When an integration connects an MCP server, those tools become available to any AI agent using Core. Example flows:- Agent uses GitHub integration’s
create_issuetool to file a bug - Agent uses Slack integration’s
send_messagetool to notify a team - Agent uses Linear integration’s
create_tasktool to assign work
MCP Configuration
Configure MCP in your integration’sspec.json:
HTTP-based MCP
For services with existing HTTP MCP servers:type: "http"- Specifies HTTP transporturl- The MCP server endpointheaders- HTTP headers for authentication and configuration${config:access_token}- Placeholder replaced with user’s OAuth token at runtime- Any
${config:key}placeholder pulls from the user’s integration config
Stdio-based MCP
For command-line MCP servers:type: "stdio"- Specifies stdio transport (command-line)url- Binary/executable URL or pathargs- Command-line arguments arrayenv- Environment variables passed to the process- Placeholders work in env vars too
Configuration Placeholders
The${config:key} syntax pulls values from the user’s integration configuration:
Setup Phase
When user completes OAuth, you set the config:Runtime Phase
Core replaces placeholders when connecting to MCP server:HTTP MCP Server Example (GitHub)
spec.json
Available Tools
When Core connects to GitHub’s MCP server, these tools become available:github_create_issue- Create a new issuegithub_search_code- Search code across repositoriesgithub_create_pull_request- Create a new PRgithub_list_commits- List commits for a repository
Stdio MCP Server Example (Slack)
spec.json
Available Tools
The Slack MCP server exposes:slack_send_message- Send message to channelslack_list_channels- List workspace channelsslack_add_reaction- React to a messageslack_get_users- Get workspace users
Building Your Own MCP Server
If your service doesn’t have an existing MCP server, you can build one:1. Use the MCP SDK
2. Authentication
Get tokens from environment variables:3. Expose in spec.json
MCP Tool Best Practices
1. Clear Tool Descriptions
2. Return Structured Data
3. Error Handling
4. Rate Limiting
Testing MCP Tools
1. Test with MCP Inspector
2. Test with Claude Desktop
Add to Claude Desktop config:3. Test Tool Calls
Common Patterns
Dynamic Tool Listing
Generate tools based on user’s account:Composite Actions
Combine multiple API calls into one tool:Security Considerations
- Token Scoping - Only request OAuth scopes needed for MCP tools
- Input Validation - Validate all tool parameters before use
- Rate Limiting - Implement rate limits to prevent abuse
- Error Messages - Don’t expose sensitive data in error messages
- Token Storage - Tokens are securely encrypted in Core’s database
