Skills + MCP Integration Pattern
Skills teach procedure. MCP provides access. This guide documents how to combine them.
The Pattern
┌─────────────────────────────────────────────┐
│ Skill (SKILL.md) │
│ "How to review a PR" │
│ - Steps, rules, criteria │
│ - Calls activate_skill at runtime │
└──────────────┬──────────────────────────────┘
│
▼
┌─────────────────────────────────────────────┐
│ MCP Server │
│ GitHub API access │
│ - List PRs, post comments, approve │
│ - Read file diffs, check status │
└─────────────────────────────────────────────┘
Skills define what to do and how to do it.
MCP servers provide access to external systems.
Together, they enable agents that follow procedures AND interact with the world.
Configuration
Status: Planned — MCP integration is not yet implemented in the runtime.
The configuration schema below is the intended design. See issue #790 for tracking.
MCP servers are configured in .agenthood/config.json or opencode.json:
Configuration Fields
| Field | Required | Description |
|---|---|---|
type | Yes | remote (HTTP/SSE) or local (stdio) |
url | For remote | MCP server endpoint URL |
command | For local | Array of command + args to spawn |
headers | No | HTTP headers (supports {env:VAR} interpolation) |
environment | No | Environment variables for local servers |
oauth | No | OAuth configuration for remote servers |
enabled | No | Set false to disable (default: true) |
Example: GitHub MCP Server
The GitHub MCP server gives your agent access to repos, PRs, issues, and actions.
Setup:
- Get a GitHub Personal Access Token
- Add to config:
- Set the token:
export GITHUB_TOKEN=ghp_xxx
What the agent can do:
- List and read PRs
- Post comments and reviews
- Check CI status
- Read file contents at any ref
- Search code and issues
Example: Linear MCP Server
The Linear MCP server enables issue tracking integration.
Setup:
What the agent can do:
- List and create issues
- Update issue status and assignees
- Search by project, priority, or label
- Read cycle and roadmap data
Example: Custom MCP Server
For internal tools, build a custom MCP server:
Skills That Use MCP
A skill can reference MCP tools in its Process section:
The agent will call activate_skill to load the procedure, then use MCP tools to execute it.
Disabling MCP Servers
To disable a server without removing it:
Security Considerations
- MCP servers run with the permissions you grant them
- Use
{env:VAR}for tokens — never hardcode secrets - Remote servers should use HTTPS
- Consider running untrusted servers in
--sandboxmode - The
enabled: falseflag lets you temporarily disable without deleting config