Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Full Odoo access for AI agents via MCP: CRUD, website, translations, attachments, workflows.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
ODOO_URL, ODOO_DB, ODOO_USERNAME, ODOO_PASSWORDLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"odoo-surface": {
"command": "npx",
"args": [
"-y",
"@suco/odoo-surface-mcp"
],
"env": {
"ODOO_URL": "your-value",
"ODOO_DB": "your-value",
"ODOO_USERNAME": "your-value",
"ODOO_PASSWORD": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add odoo-surface --env ODOO_URL=your-value --env ODOO_DB=your-value --env ODOO_USERNAME=your-value --env ODOO_PASSWORD=your-value -- npx -y @suco/odoo-surface-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"odoo-surface": {
"command": "npx",
"args": [
"-y",
"@suco/odoo-surface-mcp"
],
"env": {
"ODOO_URL": "your-value",
"ODOO_DB": "your-value",
"ODOO_USERNAME": "your-value",
"ODOO_PASSWORD": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"odoo-surface": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@suco/odoo-surface-mcp"
],
"env": {
"ODOO_URL": "your-value",
"ODOO_DB": "your-value",
"ODOO_USERNAME": "your-value",
"ODOO_PASSWORD": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub solutionsunity, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: ODOO_URL, ODOO_DB, ODOO_USERNAME, ODOO_PASSWORD
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.6.1) llegó al registro hace 34 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, yontu
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Türkçe yazı denetimi: TDK kuralları, yapay zekâ izleri, metin türüne göre üslup.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
User-equivalent Odoo access for AI agents — what the authenticated user can do in their browser, nothing more.
npx — no extra install needed)Add this to your MCP client config (e.g. Claude Desktop claude_desktop_config.json):
{
"mcpServers": { "odoo-surface": { "command": "npx", "args": ["-y", "@suco/odoo-surface-mcp@latest"], "env": { "ODOO_URL": "http://localhost:8069", "ODOO_DB": "your_database", "ODOO_USER": "admin", "ODOO_PASSWORD": "admin" } } } }
Restart your MCP client after saving. npx downloads and runs the package automatically — no further install steps.
.env file (keep credentials out of MCP config)Instead of putting credentials in your MCP client JSON, create a .env file in the directory where you run the MCP:
ODOO_URL=http://localhost:8069
ODOO_DB=your_database ODOO_USER=admin ODOO_PASSWORD=your_password
Remove the env block from the MCP client config — the .env file is loaded automatically.
Since Odoo 14+, users can generate personal API keys that act as a password replacement. Each user generates their own key from their own account — there is no admin-side menu for this.
ODOO_PASSWORD — the actual account password is never storedODOO_URL=http://localhost:8069
ODOO_DB=your_database ODOO_USER=admin ODOO_PASSWORD=your_api_key_here
API keys can be revoked individually from the same screen without changing the account password.
Technical users commonly work with more than one Odoo instance (local dev, staging, production). Each instance gets its own named entry in the MCP config — they run as independent processes with fully isolated credentials. The AI client exposes them as separate tool namespaces.
{
"mcpServers": { "odoo-local": { "command": "npx", "args": ["-y", "@suco/odoo-surface-mcp@latest"], "env": { "ODOO_URL": "http://localhost:8069", "ODOO_DB": "dev", "ODOO_USER": "admin", "ODOO_PASSWORD": "dev_api_key" } }, "odoo-production": { "command": "npx", "args": ["-y", "@suco/odoo-surface-mcp@latest"], "env": { "ODOO_URL": "https://mycompany.odoo.com", "ODOO_DB": "prod", "ODOO_USER": "admin", "ODOO_PASSWORD": "prod_api_key" } } } }
Note: The
.envfile approach (Option A) does not work for multi-instance setups — both
processes share the same working directory and would load the same file. Use the
envblock
per entry instead.
Registers additional tools: ping, echo, inspect_view, inspect_action, inspect_fields, dump_cache, clear_cache, restart_mcp.
"args": ["-y", "@suco/odoo-surface-mcp@latest", "--debug"]
| Layer | Tools |
|---|---|
| Guidance | list_skills, get_skills, find_skill, list_workflows, get_workflows |
| Discovery | get_models, get_model_actions, get_model_interface |
| Planning | get_available_actions |
| Supporting | list_records, get_record, search_records, read_group, get_fields, get_defaults, get_filters, list_pages, get_page_arch, list_snippets, get_snippet, list_attachments, download_binary, fetch_and_upload, translation_get, translation_update, translation_audit |
| Intent | create, update, execute_action, archive, post_message, schedule_activity, create_page, set_page_arch, set_page_visibility, upload_binary |
The agent may only do what the authenticated user can do in their browser. Scope is bounded by the user's menus, views, and ACL — nothing more. Tool verbs express functional intent (publish, confirm) rather than raw ORM operations. Discovery is lazy: the agent resolves only what the current prompt requires.
| Layer | Role | When invoked |
|---|---|---|
| 0 — Guidance | Canonical recipes (skills, workflows) the agent consults before any multi-step operation. Pure documentation, no side effects. | Before planning |
| 1 — Discovery | Establishes the bounded universe of models and reachable relations for the current user. | At intent resolution |
| 2 — Planning Bridge | Answers "what is live on this specific record right now" — record-state-aware actions. | Once a record is identified |
| 3 — Supporting | Read-only data fetchers used silently to fill gaps in the agent's plan. | Throughout planning |
| 4 — Intent | Mutating actions that fulfill the user's request — bounded by the user's UI permissions. | Final execution |
User prompt
├── Discovery — what models/relations does this user have? ├── (optional) — locate the specific record ├── Planning Bridge — what is live on that record right now? ├── Guidance — consult skills/workflows for multi-step recipes └── Intent — execute the mutation(s)
Skills and workflows are authored in skills/ and workflows/ as markdown with YAML frontmatter; they are exposed as Layer 0 tools at runtime.