Skip to main content

What is MCP?

MCP (Model Context Protocol) is an open standard protocol that allows AI agents to securely connect to external tools and services. Think of it as a universal adapter that lets your agents interact with platforms like GitHub, Firecrawl, and custom services.

Why Use MCP?

Unified Integration

One protocol to connect to multiple platforms - no custom code for each service

Secure Authentication

Encrypted credentials with user/organization-level isolation

No-Code Setup

Configure integrations through the Admin UI - zero programming required

Real-Time Communication

Agents can call external APIs and get responses in milliseconds

How MCP Works in Junis

Flow:
  1. User sends a message to your agent
  2. Agent identifies the need for external data (e.g., “list GitHub issues”)
  3. Agent calls the appropriate MCP tool (e.g., github_list_issues)
  4. MCP protocol handles authentication and API communication
  5. External service returns data
  6. Agent processes the data and responds to the user

Supported Integrations

Junis currently supports the following MCP integrations:

GitHub

Repository management, issues, PRs, and commits

Firecrawl

Web scraping and crawling

Custom MCP Servers

You can also connect custom MCP servers to integrate any service that provides an MCP implementation. See the Custom MCP guide for details.
Need another platform? MCP is an open standard - you can integrate any service that provides an MCP server. Check the MCP Protocol website for community-contributed servers.

Authentication Priority System

Junis supports three levels of authentication for MCP platforms, with a clear priority order:
👤 User-Level > 🏢 Organization-Level > 🌍 System-Level

User-Level (Highest Priority)

Your personal credentials for platforms like personal GitHub accounts. Use Case: Individual authentication (e.g., accessing your personal GitHub repositories) Setup: User Settings > MCP Credentials Example:
  • You set your personal GitHub token
  • When agents query repositories, they use your GitHub account
  • Other team members cannot access your GitHub credentials

Organization-Level (Medium Priority)

Team-shared credentials for platforms like company GitHub or Firecrawl accounts. Use Case: Shared team resources (e.g., querying company GitHub repositories) Setup: Admin > MCP Skills > Organization Credentials (Admin only) Example:
  • Admin sets the company GitHub PAT (Personal Access Token)
  • All team members can query company repositories
  • Each user doesn’t need their own GitHub token

System-Level (Lowest Priority)

Global default credentials provided by Junis for public integrations. Use Case: Trial/demo purposes or when no user/org credentials exist Setup: Automatically configured by Junis Super Admins Example:
  • Junis provides a default Firecrawl API key for testing
  • Users can override with their own keys for production use

MCP Types: Remote vs Local

MCP servers can be deployed in two ways:
  • Remote MCP
  • Local MCP

Remote MCP (HTTP/SSE)

How it works: Your agent connects to an external MCP server via HTTP or Server-Sent Events (SSE).Characteristics:
  • No package installation required
  • Server runs independently (cloud-hosted)
  • Authentication via HTTP headers
  • Always-on availability
Examples:Setup Complexity: ⭐⭐ (Easy - just provide URL and API key)
Deployment Required: Local MCPs require adding the package to requirements.txt and redeploying the backend. Remote MCPs can be added instantly without deployment.

Quick Start Guide

Option 1: Connect a Remote MCP (5 minutes)

1

Navigate to MCP Skills

Go to Team > MCP Skills in the sidebar
2

Click Connect

Find the platform you want to connect (e.g., GitHub) and click “Connect”
3

Enter Credentials

Provide the required information:
  • MCP Server URL: (e.g., https://api.githubcopilot.com/mcp/)
  • Transport Type: SSE or HTTP (check platform docs)
  • API Key/Token: Your authentication credentials
4

Test Connection

Click “Test” to verify the connection works
5

Enable for Agent

Go to Admin > Agents, edit your agent, and check the platform in the “MCP Platforms” section

Option 2: Use Pre-Configured Global Platform

Many popular platforms are already configured at the system level!
1

Browse Available Platforms

Go to Team > MCP Skills - platforms with a globe icon (🌍) are pre-configured
2

Add Your Credentials

Click “Add Auth” and provide your personal or organization credentials
3

Enable for Agent

The agent can immediately start using the platform!

What’s Next?


Key Concepts to Remember

  • MCP Platform: The service definition (name, URL, authentication method)
  • MCP Credentials: Your actual API keys/tokens for that platform
Example: GitHub is a platform. Your GitHub Personal Access Token (PAT) is the credential.
Flexibility and Security:
  • User-Level: Personal accounts (personal GitHub repos)
  • Organization-Level: Shared resources (company GitHub, team Firecrawl)
  • System-Level: Fallback/demo purposes
Your user credentials always override organization credentials for enhanced privacy.
Server-Sent Events (SSE):
  • One-way streaming from server to client
  • Better for real-time updates
Streamable HTTP:
  • Request-response with streaming support
  • More reliable for most APIs
Important: Check the platform’s documentation! Using the wrong type causes errors.
Yes! MCP is an open protocol. You can:
  1. Build an MCP server for your internal APIs
  2. Host it on your infrastructure
  3. Add it to Junis as a Remote MCP
  4. Your agents can now access your custom services
See the MCP Protocol Spec for implementation details.

Common Use Cases

Development Automation Agent

Platforms: GitHub
  • Monitor GitHub issues and PRs
  • Automate code reviews
  • Manage repository workflows

Research & Analysis Agent

Platforms: Firecrawl, Custom MCP
  • Scrape competitor websites with Firecrawl
  • Extract and analyze web content
  • Integrate with custom data processing services

Content Discovery Agent

Platforms: Firecrawl, GitHub
  • Crawl documentation sites
  • Index technical resources
  • Track industry trends

Security & Best Practices

✅ DO:
  • Use user-level credentials for personal accounts (private GitHub)
  • Use organization-level credentials for shared team resources
  • Rotate API keys regularly (every 90 days recommended)
  • Test connections before deploying to production
  • Review MCP platform permissions (grant least privilege)
❌ DON’T:
  • Share personal API keys with team members (use org-level instead)
  • Store credentials in code or logs (Junis encrypts them automatically)
  • Grant excessive permissions (only enable what agents need)
  • Use production databases for testing (use test environments)

Troubleshooting Quick Reference

IssuePossible CauseSolution
405 Method Not AllowedWrong transport type (SSE vs HTTP)Check platform docs, update transport type
401 UnauthorizedInvalid/expired API keyGenerate new API key, update credentials
403 ForbiddenInsufficient permissionsCheck API key scopes/permissions
Tools not loadingAgent not connected to platformEdit agent, enable MCP platform
Connection timeoutMCP server down or unreachableTest connection, check server status
For detailed troubleshooting guides, see each platform’s specific documentation page.

Platform-Specific Guides


FAQs

Unlimited! An agent can connect to as many MCP platforms as needed. For example, a research agent might use Firecrawl (web scraping) + GitHub (code analysis) + Custom MCP (data storage) simultaneously.
It depends. MCP is just the connection protocol. You need active accounts/subscriptions for each service:
  • Free: GitHub (public repos)
  • Paid: Firecrawl (API credits), custom services
Yes! Organization-level credentials are shared across all agents in your organization. The MCP Session Manager optimizes by reusing connections when possible.
Agents will fail to connect and return authentication errors. Update the credentials in Team > MCP Skills and the connection will resume immediately (no restart needed).
Absolutely! Scheduled tasks can call agents with MCP integrations. Example: Daily report agent that scrapes data with Firecrawl and posts results to GitHub issues at 9 AM.

Additional Resources

Need Help? Contact us at [email protected] to ask questions about MCP integration and get expert support.