Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
MCP server for Openlane GRC: controls, evidence, policies, risks, workflows, and approvals.
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.
OPENLANE_API_TOKEN, OPENLANE_ORGANIZATION_ID, OPENLANE_BASE_URL, OPENLANE_ALLOW_WRITE, OPENLANE_ALLOW_DELETELos 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": {
"theopenlane": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPENLANE_API_TOKEN",
"-e",
"OPENLANE_ORGANIZATION_ID",
"-e",
"OPENLANE_BASE_URL",
"-e",
"OPENLANE_ALLOW_WRITE",
"-e",
"OPENLANE_ALLOW_DELETE",
"ghcr.io/gregdog/mcp-server-theopenlane:v0.8.0",
"serve"
],
"env": {
"OPENLANE_API_TOKEN": "your-value",
"OPENLANE_ORGANIZATION_ID": "your-value",
"OPENLANE_BASE_URL": "your-value",
"OPENLANE_ALLOW_WRITE": "your-value",
"OPENLANE_ALLOW_DELETE": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add theopenlane --env OPENLANE_API_TOKEN=your-value --env OPENLANE_ORGANIZATION_ID=your-value --env OPENLANE_BASE_URL=your-value --env OPENLANE_ALLOW_WRITE=your-value --env OPENLANE_ALLOW_DELETE=your-value -- docker run -i --rm -e OPENLANE_API_TOKEN -e OPENLANE_ORGANIZATION_ID -e OPENLANE_BASE_URL -e OPENLANE_ALLOW_WRITE -e OPENLANE_ALLOW_DELETE ghcr.io/gregdog/mcp-server-theopenlane:v0.8.0 serveCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"theopenlane": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPENLANE_API_TOKEN",
"-e",
"OPENLANE_ORGANIZATION_ID",
"-e",
"OPENLANE_BASE_URL",
"-e",
"OPENLANE_ALLOW_WRITE",
"-e",
"OPENLANE_ALLOW_DELETE",
"ghcr.io/gregdog/mcp-server-theopenlane:v0.8.0",
"serve"
],
"env": {
"OPENLANE_API_TOKEN": "your-value",
"OPENLANE_ORGANIZATION_ID": "your-value",
"OPENLANE_BASE_URL": "your-value",
"OPENLANE_ALLOW_WRITE": "your-value",
"OPENLANE_ALLOW_DELETE": "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": {
"theopenlane": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"OPENLANE_API_TOKEN",
"-e",
"OPENLANE_ORGANIZATION_ID",
"-e",
"OPENLANE_BASE_URL",
"-e",
"OPENLANE_ALLOW_WRITE",
"-e",
"OPENLANE_ALLOW_DELETE",
"ghcr.io/gregdog/mcp-server-theopenlane:v0.8.0",
"serve"
],
"env": {
"OPENLANE_API_TOKEN": "your-value",
"OPENLANE_ORGANIZATION_ID": "your-value",
"OPENLANE_BASE_URL": "your-value",
"OPENLANE_ALLOW_WRITE": "your-value",
"OPENLANE_ALLOW_DELETE": "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.
OPENLANE_ORGANIZATION_ID envOPENLANE_BASE_URL envOPENLANE_ALLOW_WRITE envOPENLANE_ALLOW_DELETE envEsta 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 8 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub GregDog, 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: OPENLANE_API_TOKEN
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.8.0) llegó al registro hace 43 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Docker en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, A1RO — Irish employment tools
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.
Irish temp worker cost, public holiday pay and holidays, and SafeHandle certificate checks.
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.
A secure, open-source Model Context Protocol server for the Openlane GRC platform.
This project is not an official Openlane product and is not endorsed by theopenlane, Inc.
openlane-mcp lets MCP clients such as Cursor and Claude Desktop query Openlane over stdio (default) or Streamable HTTP. It talks to Openlane Cloud or a self-hosted instance through the official Openlane Go client.
MCP Client
→ Openlane MCP Server (stdio or HTTP) → Official Openlane Go Client → Openlane API
The server is read-only by default. Write and delete tools are opt-in and independent. Openlane authorization still applies to every request.
io.github.GregDog/mcp-server-theopenlane)Create an Openlane API token or PAT in console developer settings. Organization tokens start with tola_. Personal access tokens start with tolp_.
export OPENLANE_API_TOKEN="tola_..."
export OPENLANE_ORGANIZATION_ID="..."
openlane-mcp serve
Then connect an MCP client. See Client configuration.
go install github.com/GregDog/mcp-server-theopenlane/cmd/openlane-mcp@latest
Requires Go 1.27 or later.
Binary archives will be published on tagged GitHub Releases (linux/darwin amd64+arm64, windows amd64) with SHA256 checksums.
docker run --rm -i \
-e OPENLANE_API_TOKEN \ -e OPENLANE_ORGANIZATION_ID \ ghcr.io/gregdog/mcp-server-theopenlane serve
Images are published with GitHub Releases to ghcr.io/gregdog/mcp-server-theopenlane.
This repository's .cursor/mcp.json uses scripts/mcp-serve.sh, which loads .env and runs the local binary:
{
"mcpServers": { "openlane": { "command": "bash", "args": ["${workspaceFolder}/scripts/mcp-serve.sh"] } } }
Or install globally and pass env vars directly:
{
"mcpServers": { "openlane": { "command": "openlane-mcp", "args": ["serve"], "env": { "OPENLANE_API_TOKEN": "${env:OPENLANE_API_TOKEN}", "OPENLANE_ORGANIZATION_ID": "${env:OPENLANE_ORGANIZATION_ID}" } } } }
Start the server with bash scripts/mcp-http.sh (see HTTP transport), then use examples/cursor-http.mcp.json as a template.
Add to claude_desktop_config.json:
{
"mcpServers": { "openlane": { "command": "openlane-mcp", "args": ["serve"], "env": { "OPENLANE_API_TOKEN": "tola_your_token_here" } } } }
Prefer environment substitution or a local secrets store over committing tokens. Examples in this repository use fictional values only.
Read tools are always available. Write tools require OPENLANE_ALLOW_WRITE=true or --allow-write. Delete tools require OPENLANE_ALLOW_DELETE=true or --allow-delete.
A successful read still requires:
object:read scope (or equivalent PAT permissions)Writes and deletes additionally require server opt-in (OPENLANE_ALLOW_WRITE / OPENLANE_ALLOW_DELETE) and matching Openlane token permissions. Workflow definition writes, workflow assignment actions, native policy lifecycle actions, and workflow deletes also require confirm: true on the tool call.
Tokens are never logged. See docs/security.md.
| Tool | Description |
|---|---|
openlane_controls_list | List controls |
openlane_controls_search | Search controls by ref code, title, or description |
openlane_control_get | Get a control by ID (with relationship summaries) |
openlane_programs_list | List programs (optional name filter) |
openlane_program_get | Get a program by ID (with relationship summaries) |
openlane_evidence_list | List evidence metadata (optional program/control filters) |
openlane_evidence_get | Get evidence metadata by ID |
openlane_policies_list | List internal policies (optional status filter) |
openlane_policies_awaiting_approval | List policies awaiting approval (native NEEDS_APPROVAL + your pending workflow assignments) |
openlane_policy_get | Get a policy by ID |
openlane_risks_list | List risks (optional program/entity/control/status filters) |
openlane_risk_get | Get a risk by ID (with relationship summaries) |
openlane_findings_list | List findings (optional program/assessment/open/status/severity filters) |
openlane_finding_get | Get a finding by ID |
openlane_assessments_list | List assessments |
openlane_assessment_get | Get an assessment by ID |
openlane_control_implementations_list | List control implementations |
openlane_control_implementation_get | Get a control implementation by ID |
openlane_mapped_controls_list | List cross-framework control mappings (MappedControl) |
openlane_mapped_control_get | Get a control mapping by ID |
openlane_standards_list | List standards / frameworks |
openlane_standard_get | Get a standard by ID |
openlane_tasks_list | List tasks |
openlane_task_get | Get a task by ID |
openlane_entities_list | List entities (vendors; optional risk/tier/review/security filters) |
openlane_entity_get | Get an entity by ID (vendor/security/commercial fields) |
openlane_assets_list | List assets |
openlane_asset_get | Get an asset by ID |
openlane_platforms_list | List platforms (system boundaries; optional name, display id, status, environment, region, criticality filters) |
openlane_platform_get | Get a platform by ID (narrative, owner roles, scope links, diagram metadata) |
openlane_contacts_list | List contacts |
openlane_contact_get | Get a contact by ID |
openlane_reviews_list | List vendor Risk Reviews (optional entity filter) |
openlane_review_get | Get a vendor Risk Review by ID |
openlane_groups_list | List groups (optional name filter) |
openlane_group_get | Get a group by ID |
openlane_users_list | List users (optional name/email filters) |
openlane_user_get | Get a user by ID |
openlane_workflows_list | List workflow definitions (optional schema/kind/active filters) |
openlane_workflows_search | Search workflow definitions by name or description |
openlane_workflow_get | Get a workflow definition by ID (with plain-English summary) |
openlane_workflow_instances_list | List workflow instances (optional definition/state/object filters) |
openlane_workflow_instance_get | Get a workflow instance by ID (assignments, events, proposal preview) |
openlane_workflow_assignments_list | List my workflow approval assignments |
openlane_workflow_assignment_get | Get a workflow assignment by ID (targets, due date, object context) |
openlane_workflow_metadata_get | Get workflow-eligible fields, edges, and resolver keys per object type |
Write tools (require OPENLANE_ALLOW_WRITE=true or --allow-write):
| Tool | Description |
|---|---|
openlane_control_create / openlane_control_update | Create or update a control |
openlane_mapped_control_create / openlane_mapped_control_update | Create or update cross-framework control mappings (MappedControl) |
openlane_evidence_create / openlane_evidence_update | Create or update evidence; optional control_ids / add_control_ids / remove_control_ids (org-owned controls only — not system catalog copies); optional base64 file uploads |
openlane_controls_list / openlane_controls_search | Optional linkable_only returns org-owned controls suitable for evidence linking |
openlane_policy_create / openlane_policy_update | Create or update an internal policy |
openlane_policy_submit_for_approval / openlane_policy_approve / openlane_policy_publish / openlane_policy_return_to_draft | Native InternalPolicy status transitions (confirm required) |
openlane_risk_create / openlane_risk_update | Create or update a risk |
openlane_task_create / openlane_task_update | Create or update a task |
openlane_entity_create / openlane_entity_update | Create or update an entity (vendor); optional base64 logo upload or logo_remote_url |
openlane_platform_create / openlane_platform_update | Create or update a platform (system boundary); owner fields accept user id, email, name, or group id/name; optional scope link ids and base64 diagram uploads |
openlane_contact_create | Create a contact (optional entity_ids) |
openlane_vendor_risk_review_create / openlane_vendor_risk_review_update | Create or update a vendor Risk Review |
openlane_workflow_create / openlane_workflow_update | Create or update a WorkflowDefinition (confirm required) |
openlane_workflow_assignment_approve / openlane_workflow_assignment_reject | Approve or reject a WorkflowAssignment (confirm required) |
openlane_workflow_assignment_request_changes / openlane_workflow_assignment_reassign | Request changes or reassign an assignment (confirm required) |
Delete tools (require OPENLANE_ALLOW_DELETE=true or --allow-delete):
| Tool | Description |
|---|---|
openlane_control_delete | Delete a control by ID |
openlane_mapped_control_delete | Delete a control mapping by ID |
openlane_evidence_delete | Delete evidence by ID |
openlane_policy_delete | Delete a policy by ID |
openlane_risk_delete | Delete a risk by ID |
openlane_task_delete | Delete a task by ID |
openlane_workflow_delete | Delete a workflow definition by ID (confirm required) |
See docs/tools.md for full details. With all modes enabled there are 77 tools (44 read, 27 write, 6 delete).
Enriched get tools return bounded relationship summaries (count + items) so agents can answer program, vendor, control, and finding questions without chaining dozens of shallow calls.
List responses are paginated (items, next_cursor, has_more, total_count). Default page size is 20; maximum is 50.
There is no dedicated control search GraphQL operation in the current Openlane Go client. openlane_controls_search uses o
Solo se muestra el principio; lee el resto en el repo