MCP servers for internal systems
The mcp package does client and server, and the capability model is exactly what you want when exposing internal tools to an agent.
The problem
Agents need safe access to ticketing, runbooks, and deployment APIs. MCP is the wire format; the hard part is guaranteeing a tool handler cannot read arbitrary files or call arbitrary URLs when an agent prompts it to.
Why Ecko
- mcp package both ways
- Implement a server that exposes vetted tools, or call someone else's MCP server from Ecko orchestration code - same language, same grant model.
- Grants on imports
- The handler that talks to Jira gets
grant [net]; the formatter that builds the prompt getsgrant []. Capabilities are visible at the import site. - One binary deployment
- Ship the server as a single executable in your internal platform. No Node version manager on the host.
In practice
import mcp grant [net] # expose only the tools you register - # not arbitrary shell access
Try it on your workload.