开源MCP工具 是 AI Skill Hub 本期精选MCP工具之一。综合评分 7.5 分,整体质量较高。我们推荐使用将其纳入你的 AI 工具库,帮助提升工作效率。
基于Go语言的开源MCP工具,支持任何IDE通过ACP协议工作,简化编码流程,提高开发效率。
开源MCP工具 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
基于Go语言的开源MCP工具,支持任何IDE通过ACP协议工作,简化编码流程,提高开发效率。
开源MCP工具 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/coddy-project/coddy-agent
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"--mcp--": {
"command": "npx",
"args": ["-y", "coddy-agent"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 开源MCP工具 执行以下任务... Claude: [自动调用 开源MCP工具 MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"__mcp__": {
"command": "npx",
"args": ["-y", "coddy-agent"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
<p align="center"> <a href="https://go.dev/doc/go1.25"><img src="https://img.shields.io/badge/go-1.25+-00ADD8?logo=go&logoColor=white" alt="Go 1.25+" /></a> <a href="LICENSE"><img src="https://img.shields.io/github/license/EvilFreelancer/coddy-agent" alt="MIT License" /></a> <a href="https://github.com/EvilFreelancer/coddy-agent/actions/workflows/tests-on-pr.yaml"><img src="https://github.com/EvilFreelancer/coddy-agent/actions/workflows/tests-on-pr.yaml/badge.svg" alt="Tests on PR" /></a> <a href="https://agentclientprotocol.com/"><img src="https://img.shields.io/badge/ACP-harness-9333EA" alt="ACP harness" /></a> <img src="https://img.shields.io/badge/distroless%20ready-252525" alt="distroless-ready" /> <img src="https://img.shields.io/badge/single%20binary-252525" alt="single binary" /> </p>
<p align="center"> <img src="docs/ui/assets/coddy-logo-wordmark.svg" alt="Coddy agent" height="156" /> </p>
<p align="center"> <strong>Run a full general purpose agent from one static Go binary.</strong><br /> ReAct, filesystem and shell tools, MCP, Skills, optional OpenAI-compatible API with an embedded UI, scheduler, and long-term memory. </p>
Coddy is a distroless-friendly harness: drop it into minimal images (scratch, distroless, read-only workspaces) without a full OS shell. The harness layer (ACP RPC, sessions, prompts, providers) stays the same if you tighten the toolset or drive it from automation instead of an IDE.
agent (full tool access) and plan (planning + text files only).cursor/rules/ and skills from the same on-disk layout Cursor uses when those paths appear in skills.dirscoddy acp); pair it with editors or scripts that implement an ACP client (see Editor and IDE integration)Prerequisites
go.mod (currently 1.25).http and ui (the Makefile runs ui-build for embedded assets).Install with Go (quick, default upstream tags)
go install github.com/EvilFreelancer/coddy-agent/cmd/coddy@latest
That builds whatever the module ships without custom -tags. For coddy http, the bundled SPA, scheduler, and long-term memory together, build from source with the tags below (same defaults as Dockerfile / docker-compose.dev.yml).
Recommended full binary from source (HTTP + UI + scheduler + memory)
Pass the memory build tag to link long-term memory; optional HTTP, SPA, and scheduler use their own tags (see Build tags). Runtime memory.enabled in YAML only applies when the binary includes memory.
git clone https://github.com/EvilFreelancer/coddy-agent
cd coddy-agent
make build TAGS="http ui scheduler memory"
The CLI is written to build/coddy (not the repo root).
Install build/coddy onto your PATH
Reuses build/coddy when it already exists; otherwise builds with all optional modules first.
make build TAGS="http ui scheduler memory"
make install
/usr/local/bin/coddy~/.local/bin/coddy (put that directory on PATH if needed)Build without installing
make build TAGS="http ui scheduler memory"
Manual go build (same as Makefile)
When TAGS includes http and ui, run make ui-build first (or rely on make build, which triggers it).
make ui-build # required before go build when using -tags=...,ui,... with http
VERSION="$(make -s print-version)"
go build -tags=http,ui,scheduler,memory \
-ldflags "-X github.com/EvilFreelancer/coddy-agent/internal/version.Version=${VERSION}" \
-o build/coddy \
./cmd/coddy/
Lean ACP-only binary (no coddy http, no embedded UI, no scheduler packages):
make build
After any local build, prefer ./build/coddy or make install so you do not accidentally run another coddy already on PATH. Check with which coddy and coddy -v.
Full detail, LDFLAGS, and make print-version - docs/build.md.
The agent speaks ACP over stdio. An ACP client (your editor integration or harness) launches coddy once it is configured to spawn coddy acp. coddy -v or coddy --version prints the embedded build version (dev if not set at link time). Flags for ACP live on the subcommand, for example coddy acp --help (--log-level, --home, --cwd, --config, etc.).
Use Makefile variable TAGS with spaces (make build TAGS="http ui scheduler memory"). go build uses commas (-tags=http,ui,scheduler,memory).
| Tag | Enables | Docs |
|---|---|---|
**memory** | Long-term memory copilot (**memory.enabled** in YAML); with **http**, session memory REST under **/coddy/sessions/{id}/memory/*** | [external/memory/README.md](external/memory/README.md) |
**http** | **coddy http**, REST gateway, **/docs**, **/openapi.yaml** | [docs/http-api.md](docs/http-api.md) |
**ui** | Embedded SPA on **/** (needs **http**) | [docs/ui/README.md](docs/ui/README.md), [DESIGN.md](DESIGN.md) |
**scheduler** | Scheduler daemon and **coddy_scheduler_*** tools; with **http**, **/coddy/scheduler** REST | [docs/scheduler.md](docs/scheduler.md), [external/scheduler/README.md](external/scheduler/README.md) |
Extended narrative and Docker alignment - docs/build.md.
Release images are published on GitHub Container Registry as ghcr.io/coddy-project/coddy-agent (tags such as latest and X.Y.Z, linux/amd64 and linux/arm64). Each SemVer git tag also gets GitHub Release archives (Linux, Windows, macOS Intel and Apple Silicon) - see docs/build.md. The default image includes http, ui, scheduler, and memory - the same feature set as make build TAGS="http ui scheduler memory".
1. Config and workspace (from the repo root, or any directory where you keep config.yaml):
```bash cp config.example.yaml config.yaml mkdir -p workspace coddy_home
make build TAGS="http ui scheduler memory"
./build/coddy -v # same as --version
examples/acp/acp_e2e_todo.py is a newline-delimited JSON-RPC harness against coddy acp ( stdbuf -oL, permission auto-reply, nil-result responses). Use it as reference when building your own minimal client rather than chaining naive echo lines into a pipe.
examples/acp/acp_e2e_memory.py drives build/coddy, an isolated CODDY_HOME, and RPA_API_KEY to verify recall, persist, and optional prune of markdown under $CODDY_HOME/memory. See the script docstring for flags. Overview of all harnesses - examples/README.md.
echo '{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"protocolVersion":1,"clientCapabilities":{}}}' | coddy acp ```
**2. Start with Compose** (pull published image, no local build):
bash docker compose pull docker compose up -d
To **build the image locally** instead, use **`docker-compose.dev.yml`**: **`docker compose -f docker-compose.dev.yml up -d --build`**.
**3. Open the bundled UI** in a browser on the host:
text http://127.0.0.1:12345/ ```
The SPA is served on GET / by coddy http. Pick a model in the composer (YAML backends from GET /v1/models), choose agent or plan mode, then send a message - the UI creates a session and streams the reply via POST /v1/responses. Agent files and shell tools use the mounted workspace (./workspace → /workspace in the container). Live YAML editing: http://127.0.0.1:12345/#/settings.
Sanity check without a browser: curl -sS http://127.0.0.1:12345/v1/models | head.
There is no login on the HTTP surface - expose port 12345 only on trusted networks. Full compose options, volumes, and CI image tags: docs/docker.md. Smoke script: examples/httpserver/docker.sh.
CODDY_HOME defaults to ~/.coddy. Unless you set CODDY_CONFIG or pass --config, the primary config file is config.yaml at $CODDY_HOME/config.yaml.
Copy the example and edit it:
mkdir -p ~/.coddy && cp config.example.yaml ~/.coddy/config.yaml
If $CODDY_HOME/config.yaml is absent, the loader may use config.yaml in the process working directory (useful when running from a repository clone). See docs/config.md.
Providers and models
providers - named backends (type: openai for OpenAI and OpenAI-compatible HTTP APIs, anthropic for Anthropic). Each name must be ASCII letters, digits, hyphen, or underscore, starting with a letter (it becomes the prefix in model ids). Each row has api_key (literal, ${ENV} expanded when the file loads, or empty to read NAME_API_KEY from the environment at LLM call time, with NAME derived from providers[].name in uppercase and hyphens mapped to underscores), and optionally api_base when the API is not the vendor default.models - selectable models. Each model string is <provider_name>/<api_model_id> where provider_name matches providers[].name. Tunables include max_tokens, temperature, and optional max_context_tokens.agent - model picks the default ReAct model (must match one models[].model entry). max_turns and max_tokens_per_turn bound one user turn.Example (openai provider and gpt-5.4-mini; store secrets in the environment, not in git):
providers:
- name: openai
type: openai
api_key: "${OPENAI_API_KEY}"
models:
- model: "openai/gpt-5.4-mini"
max_tokens: 400000
temperature: 0.2
agent:
model: "openai/gpt-5.4-mini"
max_turns: 35
max_tokens_per_turn: 128000
Then export the key the YAML references:
export OPENAI_API_KEY="sk-..."
Other setups (Anthropic, Ollama, a non-default api_base, and env-based defaults) are covered in config.example.yaml and docs/config.md.
Full configuration reference in docs/config.md.
Key settings:
providers:
- name: local
type: openai
api_key: "${OPENAI_API_KEY}"
api_base: "${OPENAI_API_BASE}"
models:
- model: "local/gpt-4o"
max_tokens: 8192
temperature: 0.2
agent:
model: "local/gpt-4o"
max_turns: 30
tools:
require_permission_for_commands: true
coddy acp --log-level debug
Coddy speaks ACP as the server over stdin/stdout. A compatible client must spawn coddy acp and exchange JSON-RPC messages (see docs/acp-protocol.md and examples/acp/).
coddy acp (exact settings depend on that product; see its ACP or external-agent docs).coddy acp binary. Cursor's published ACP guide describes agent acp, where Cursor's own agent runs as the ACP server for third-party clients (for example Neovim or JetBrains integrations that connect to Cursor). That is the opposite wiring from running Coddy as your local agent process..cursor/rules/, ~/.cursor/skills, and other skills.dirs entries in config.yaml. That is file-layout compatibility with Cursor, not Cursor acting as the Coddy runtime host.Connect external tools via MCP servers. Configured globally in config.yaml or passed per-session by the ACP client.
Example adding a GitHub MCP server in config:
mcp_servers:
- name: "github"
command: "npx"
args: ["-y", "@modelcontextprotocol/server-github"]
env:
- name: "GITHUB_PERSONAL_ACCESS_TOKEN"
value: "${GITHUB_TOKEN}"
See MCP Integration Guide for details.
该项目基于Go语言,支持ACP协议,适合用于简化编码流程和提高开发效率,但需要进一步完善和测试
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
经综合评估,开源MCP工具 在MCP工具赛道中表现稳健,质量良好。如果你已有明确的使用需求,可以直接上手体验;如果还在评估阶段,建议对比同类工具后再做决策。
| 原始名称 | coddy-agent |
| Topics | mcpacpagentgo |
| GitHub | https://github.com/coddy-project/coddy-agent |
| License | MIT |
| 语言 | Go |
收录时间:2026-05-23 · 更新时间:2026-05-24 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端