Skip to content

feat: MCP server to expose ACF pipeline to non-SKILL.md agents (Copilot, Aider, Continue) #12

Description

@VECTORG99

Summary

ACF is a skill system (SKILL.md files), which means it only works with agents that support the Agent Skills spec. To reach agents that don't support SKILL.md (GitHub Copilot, Aider, Continue, Tabnine, custom agents), we need an MCP server that exposes ACF's pipeline as tools. This would make ACF agent-agnostic in the truest sense.

Context

  • Current compatibility: 6 agents (Claude Code, Cursor, Codex, OpenCode, OpenClaw, Devin) via SKILL.md
  • MCP (Model Context Protocol): the standard for agent tool exposure
  • Roadmap: docs/ROADMAP.md — Phase 5 (v1.x Expansion)
  • MCP servers found in research: context7 (docs), github (repos), playwright (browser), sequential-thinking (reasoning)

Motivation

The Agent Skills spec is gaining adoption (20+ agents), but it's not universal. Major agents that DON'T support SKILL.md:

  1. GitHub Copilot — uses .github/copilot-instructions.md, no skill system
  2. Aider — uses conventions in the chat, no skill files
  3. Continue — uses config.yaml, no skill system
  4. Tabnine — proprietary, no skill system
  5. Windsurf — uses .windsurfrules, no skill system
  6. Cline — uses .clinerules, partial skill support
  7. Custom agents — anyone building their own agent

These agents represent ~40% of the AI coding market. ACF can't reach them via SKILL.md.

An MCP server solves this: any agent that supports MCP (which is most of them, including Copilot, Cursor, Claude Code, OpenCode) can use ACF's pipeline as tools:

  • acf_context_load — load project context, return snapshot
  • acf_stack_audit — audit the GitHub stack, return findings
  • acf_issue_craft — craft an issue from snapshot + findings
  • acf_pr_context — build PR context from issue + snapshot
  • acf_compact — compact a context snapshot
  • acf_caveman — compress to caveman mode

From 30 years of platform engineering: the winning strategy is to be where the users are, not where you want them to be. The users are on Copilot, Cursor, Claude Code. MCP is the common denominator.

Affected Files

  • mcp-server/ (new directory) — MCP server implementation
  • mcp-server/src/index.ts — server entry point (TypeScript, following MCP SDK)
  • mcp-server/src/tools/ — one file per ACF phase
  • mcp-server/package.json — dependencies (@modelcontextprotocol/sdk)
  • mcp-server/README.md — installation and usage
  • mcp-server/tests/ — server tests
  • docs/COMPATIBILITY.md — update with MCP server section

Acceptance Criteria

  • MCP server created in mcp-server/ using TypeScript and @modelcontextprotocol/sdk
  • Server exposes 6 tools (one per active phase):
    • acf_context_load(project_path) → returns context snapshot
    • acf_stack_audit(repo) → returns stack findings
    • acf_issue_craft(snapshot, findings, description) → returns issue draft
    • acf_pr_context(issue, snapshot) → returns PR draft
    • acf_compact(snapshot) → returns compacted snapshot
    • acf_caveman(snapshot) → returns caveman snapshot
  • Server runs via npx acf-mcp-server or node mcp-server/dist/index.js
  • Server config example provided for:
    • Claude Code (.claude/mcp.json)
    • Cursor (.cursor/mcp.json)
    • Continue (config.yaml)
    • Generic MCP config
  • mcp-server/README.md with installation, configuration, and usage examples
  • docs/COMPATIBILITY.md updated with MCP server section
  • Server tested with at least 2 MCP-compatible agents (Claude Code, Cursor)
  • mcp-server/package.json with @modelcontextprotocol/sdk dependency (pinned version, not latest)
  • mcp-server/tests/ with at least basic tool tests

Validation

cd mcp-server && npm install && npm run build
# Server starts and responds to MCP tool calls
# Test with Claude Code: add to .claude/mcp.json, verify tools appear

Complexity

Complex — building an MCP server is a real software project (TypeScript, SDK, tests, distribution). But the logic already exists in the SKILL.md files — the server wraps the same pipeline as tools.

Notes

  • This is a Phase 5 (v1.x Expansion) issue — it extends ACF beyond the SKILL.md ecosystem.
  • The MCP server should reuse the same skill content (read SKILL.md files for instructions) rather than duplicating logic.
  • Consider whether the server should be a separate repo (acf-mcp-server) or a subdirectory of this repo. Separate repo is cleaner for npm publishing.
  • Pin @modelcontextprotocol/sdk to a specific version (not latest) per security best practices.
  • This is the single highest-impact feature for reaching the broader AI coding market.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions