
Mcp Devtools
- 3 repo stars
- Updated July 1, 2026
- marin1321/mcp-devtools
mcp-devtools is an MCP server that gives AI agents guarded access to filesystem, databases, processes, and APIs.
About
io.github.marin1321/mcp-devtools is an MCP server that gives AI coding agents controlled access to everyday developer primitives: the filesystem, databases, OS processes, and external APIs. developers shipping with Claude Code or Cursor often hit a wall when the model needs to inspect a repo, run a migration, or ping an internal endpoint—this server is meant to channel those actions through MCP tools rather than brittle one-off commands. It targets intermediate developers who already run MCP in their agent config and want a single integration surface for local dev automation. Register it via npm stdio transport when you are actively building features, debugging integrations, or automating repetitive dev tasks. It is a task integration MCP, not a methodology skill; pair it with your own review and security habits before granting broad paths or credentials.
- Stdio MCP server (@oscarmarin/mcp-devtools) on npm, v1.0.1
- Unified safe access to filesystem, databases, processes, and HTTP APIs
- Designed for AI agents that need dev environment operations without wide-open shells
- Open-source on GitHub (marin1321/mcp-devtools)
Mcp Devtools by the numbers
- Data as of Jul 7, 2026 (Skillselion catalog sync)
claude mcp add mcp-devtools -- npx -y @oscarmarin/mcp-devtoolsAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 3 |
|---|---|
| Package | @oscarmarin/mcp-devtools |
| Transport | STDIO |
| Auth | None |
| Last updated | July 1, 2026 |
| Repository | marin1321/mcp-devtools ↗ |
What it does
Let your coding agent read/write files, query databases, run processes, and call APIs through one MCP server with guardrails instead of ad-hoc shell access.
Who is it for?
Best when you run MCP daily and want one server for repo, DB, process, and API tasks during active coding.
Skip if: Skip if you forbid any agent filesystem or process access, or developers and only need a single SaaS API with a dedicated MCP.
What you get
After install, your agent can invoke structured MCP tools for dev operations instead of improvising terminal commands.
- Stdio MCP server wired into agent config
- Tool calls for filesystem, DB, process, and API operations
- Repeatable dev automation without raw shell sprawl
By the numbers
- [object Object]
- [object Object]
README.md
mcp-devtools
AI-native developer tools via Model Context Protocol. A production-grade MCP server that gives AI agents (Claude, Cursor, Copilot, Continue, ...) safe, scoped access to your local development environment.
Why
The MCP ecosystem is full of single-purpose tutorials and vendor-locked adapters. There is no well-maintained, multi-tool, framework-agnostic, production-quality MCP package for everyday developer tooling.
mcp-devtools fills that gap with 14 tools, 3 MCP Resources,
4 MCP Prompts, a Plugin API, two transport modes (stdio + HTTP
with auth), and an audit log — built on patterns refined in production
at DailyBot.
Quick start
stdio (default)
npx @oscarmarin/mcp-devtools
Add it to Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"devtools": {
"command": "npx",
"args": ["-y", "@oscarmarin/mcp-devtools"]
}
}
}
Or Cursor (~/.cursor/mcp.json): same block.
HTTP transport
Create a mcp-devtools.json in your project root:
{
"transport": "http",
"port": 3333,
"auth": {
"token": "env:MCP_AUTH_TOKEN"
}
}
Then start the server:
npx @oscarmarin/mcp-devtools
The MCP endpoint will be available at http://localhost:3333.
Tools
| Group | Tools |
|---|---|
| Filesystem | read_file, write_file, list_directory, search_files, get_file_info |
| Database | query_db, list_tables, describe_table |
| Process | run_command, read_logs, get_env, list_processes |
| OpenAPI | parse_openapi, call_api |
Per-tool reference: docs/tools/.
MCP Resources
The server exposes read-only data via MCP Resources:
| URI | Description |
|---|---|
devtools://tools |
Catalog of all registered tools with schemas |
devtools://server-info |
Server version, transport, scope, tool count |
MCP Prompts
Curated prompt templates for common development workflows:
| Prompt | Description |
|---|---|
debug_error |
Systematically debug an error using mcp-devtools tools |
code_review |
Review a file for bugs, security issues, and code quality |
explore_codebase |
Explore and understand a project's structure and conventions |
refactor_function |
Refactor a function for readability, performance, or testability |
Plugin API
Extend mcp-devtools with custom tools — no fork required.
Config-based (load at startup):
{
"plugins": ["./my-tools.js", "@scope/mcp-plugin-foo"]
}
Each plugin module default-exports an array of tool definitions:
import { defineTool } from "@oscarmarin/mcp-devtools";
import { z } from "zod";
export default [
defineTool({
name: "my_tool",
description: "Does something useful",
inputSchema: z.object({ input: z.string() }),
handler: async (args, config) => ({
ok: true,
data: { result: args.input.toUpperCase() },
}),
}),
];
Configuration
Configuration is loaded by cosmiconfig
from mcp-devtools.json, .mcp-devtoolsrc, or the mcpDevtools key in
package.json. See mcp-devtools.example.json
and docs/configuration.md for the full schema.
Zero-config is supported: running npx @oscarmarin/mcp-devtools with no config uses
schema defaults (RNF-05).
Security
Four non-bypassable controls:
- Filesystem scope boundary. Every path is resolved to an absolute and
compared against
config.scope. Symlinks that escape scope throwSCOPE_VIOLATION. - Command allowlist.
run_commandonly executes binaries whose basename is inallowedCommands. Invocation usesspawn(file, args)(no shell), so shell-injection via the command argument is structurally impossible. - Database read-only mode. When
readOnly: true, all SQL is parsed andINSERT/UPDATE/DELETE/DROP/CREATE/GRANTare rejected. Queries run inBEGIN READ ONLY ... ROLLBACKon PostgreSQL. - HTTP Bearer auth. When
auth.tokenis configured, every HTTP request must includeAuthorization: Bearer <token>. Comparison usescrypto.timingSafeEqualto prevent timing attacks.
Additional safety measures:
- Audit log. Opt-in NDJSON log of every tool invocation with timing, sanitized inputs, and result status.
- Secret masking.
get_envautomatically masks values matching common secret patterns (SECRET,TOKEN,PASSWORD,KEY, etc.). - OpenAPI host restriction.
call_apionly sends requests to hosts listed in the spec'sserversarray. - Output capping. All tools cap their output to prevent context flooding (100KB for commands, 1MB for files, 200 rows for queries).
Contributing
git clone https://github.com/marin1321/mcp-devtools.git
cd mcp-devtools
npm install
npm run dev # tsup --watch
npm run test # vitest
npm run typecheck # tsc --noEmit
npm run lint # eslint .
See CONTRIBUTING.md for the full workflow and
CODE_OF_CONDUCT.md for community guidelines.
License
MIT © Oscar Humberto Marin Molina — oscarmarindev.com
Recommended MCP Servers
How it compares
Broad dev-environment MCP integration, not a browser-only or single-vendor cloud skill.
FAQ
Who is mcp-devtools for?
and small-team developers using Claude Code, Cursor, or Codex who want MCP-shaped access to files, databases, processes, and APIs while coding.
When should I use mcp-devtools?
Use it during Build when the agent must inspect repos, run local commands, query a database, or call dev APIs through one registered MCP server.
How do I add mcp-devtools to my agent?
Install @oscarmarin/mcp-devtools from npm, add a stdio MCP entry in your agent config pointing at the package, restart the client, and scope permissions to the paths and credentials you trust.