What is an MCP?
MCP stands for Model Context Protocol. It's a standard that lets OpenCode connect to external tools and data sources — think of it as a plugin system, or a USB cable between OpenCode and another system. Each MCP gives the agent a new set of capabilities: the ability to read from, or write to, a specific tool.
Without MCPs, OpenCode only knows what you paste into the conversation or upload as files. With MCPs, it can reach out to live systems directly — pulling current data, or pushing completed work.
Two types of access
MCPs can give OpenCode two different relationships with a tool. Most setups use both.
Reading data
Passive use — OpenCode pulls context, changes nothing.
- Pull the latest version of a Confluence playbook as context
- Read open Jira tickets before drafting a status update
- Fetch recent Webex messages to summarise a discussion
- Read Airtable records for data-driven analysis
- Search your email or calendar via Outlook for relevant context
Low risk. A good place to start when first configuring an MCP — get comfortable reading before granting write access.
Taking action
Agentic use — OpenCode acts directly, no copy-paste.
- Publish a new Confluence page from a prompt
- Create or update Jira tickets and dashboards
- Add records to Airtable — e.g. logging a use case
- Build and deploy a GitHub Pages site
- Send a Webex message or create a meeting invite
- Send an email or create a calendar event via Outlook
Real consequences. The output is the deliverable — not a draft to copy into something else.
The read → act pattern
The two modes naturally work together. A typical agentic workflow might be:
- Read open Jira tickets to understand what's in flight
- Read the relevant Confluence playbook for context
- Draft a status update or analysis
- Publish the output back to Confluence, or create a Jira ticket with the findings
That entire loop — read context, reason, act — runs inside a single OpenCode session with no manual steps.
A note on safety
Write access means real consequences. A few practices that help:
- Review before confirming OpenCode will show you what it's about to do. Read it. Especially the first few times with a new write MCP.
- Start read-only Configure a new MCP with read permissions first. Get comfortable with what it can see before granting write access.
- Use test spaces when learning A sandbox Confluence space or a test Airtable base is much less stressful than a live team workspace when you're experimenting.
- Store credentials securely Tokens don't belong in your config file as plain text. See Handling API Keys & Tokens Safely for how to do this properly.