io.opsera/opsera
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Opsera AI Agent MCP server providing authenticated DevOps automation over SSE
| Author | io.opsera |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 172 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"opsera": {
"url": "https://agent.opsera.io/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (11)
opsera_groupsGroup management: list, get, create, delete, get_memberships, add/remove/patch members. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: list, get, create, delete, get_memberships, add_members, remove_members, patch_membersid— string — Query param for list (comma-separated group IDs).body— Request body: for create (group object), add_members/remove_members (array of user IDs), patch_members (patch payload).search— string — Query param for list.groupName— string — Required for get, delete, get_memberships, add_members, remove_members, patch_members. Path parameter.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_insightsInsights: dashboards, filters, audit logs, KPIs, tool mappings. See docs/API_REFERENCE.md for all operations.
Parameters:
operation(required) — string — e.g. dashboards_list, dashboards_get, filters_create, audit_most_viewed, kpis_list, tool_mappings_supported, ...id— string — Path param: dashboards get/update/delete, filters update/delete, audit_by_id.body— object — Request body for create/update/post operations.limit— string — Query: dashboards_list.search— string — Query: dashboards_list.groupId— string — Path param: filters_get.category— string — Query: kpis_list.filterId— string — Path param: filters_get, filters_update, filters_delete.mappingId— string — Path param: audit_by_mapping.categories— string — Query: dashboards_list.dashboardId— string — Path param: audit_by_dashboard, audit_dashboard_stats, audit_dashboard_view.operationId— string — Path param: tool_mappings_operation_status.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_mappingsData mappings: list, get, create, update. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: list, get, create, updateid— string — Required for get/update. Path parameter (mapping ID).body— object — Request body for create/update.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_pipeline_parametersPipeline parameters: reusable, configurable key-value pairs scoped to a pipeline. Parameters can be referenced by pipeline steps during execution for dynamic configuration (environment variables, secrets, build flags, deployment targets). Use list to see all parameters for a pipeline before triggering a run. Use create/update to set runtime values. Use get_value for lightweight value retrieval. Parameter types: string (default), number, boolean, secret (masked in logs). See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: list, get, create, update, delete, get_value. list: all parameters for a pipeline. get: single parameter by ID. create: new parameter. update: modify existing. delete: remove parameter. get_value: retrieve only the parameter value.body— object — Request body for create/update. Fields: name (string, required), value (string/number/boolean/object), type (string|number|boolean|secret, default string), description (optional).pipelineId— string — Required for list and create. The pipeline ID (24-char MongoDB ObjectId).parameterId— string — Required for get, update, delete, get_value. The parameter ID (24-char MongoDB ObjectId).
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_pipelinesPipelines: monitor runs, security audit, run duration stats, configuration, templates, and lifecycle actions. Execution questions (image tag, artifact, commit SHA): list_runs then get_run (view=artifacts by default). Do not call get afterward. security_audit: find pipelines with disabled security steps; set includeStats=true to include each pipeline average/min/max run duration. runs_stats: average/min/max run duration for one pipelineId or batch pipelineIds (no security filter). get with view=security audits one known pipeline; get without view is full config (large). list is a lightweight catalog. list_runs is recent run timing. action runs mutations. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of list, get, list_runs, get_run, security_audit, runs_stats, validate, step_metadata, pipeline_run_notification, settings_demo, settings_source, templates_list, templates_get, action. list: catalog. get: full stage config (large; design/edit; view=security for one-pipeline security step audit). list_runs: recent run timing. get_run: artifacts/image tags/commitSha (do not also call get for execution questions). security_audit: pipelines with disabled security steps; set includeStats=true to attach each pipeline avg/min/max duration. runs_stats: avg/min/max duration for one pipelineId or batch pipelineIds (no security filter). action: run, stop, create, update.body— object — Request body for validate, step_metadata, and other POST operations.page— string — Query: list, templates_list, or security_audit page number (default 1).size— string — Query: templates_list items per page (default 25).sort— string — Query: templates_list. One of: newest, oldest, name, lastupdated.type— string — Query: templates_list template type filter.view— string — For get: full (default), summary, or security. For get_run: full, summary, artifacts (default), or logs.limit— string — list_runs: recent runs (5-10, default 5). runs_stats and security_audit includeStats: recent runs to average (5-100, default 30).action— string — For operation action: run, stop, reset, delete, update, status, approve, reject, create.branch— string — For action=run: Git branch name to override at runtime. Without repository: sets settings.branch (workflow source). With repository: sets stepParameters[repo].branch (per-step override).search— string — Query: list or templates_list keyword filter on name and description.status— string — Query: list filters by last run status; templates_list filters active or inactive.target— string — For operation action: pipeline ID (single) or comma-separated IDs for batch.payload— object — For operation action: (reject) reason; (run) additional execution payload passed to the orchestrator.pageSize— string — Query for list or security_audit scan: items per page (default 50, max 200).runCount— string — Required for get_run. Run number from list_runs (e.g. latest runCount).settings— object — For operation action: (create/update) workflow with source and plan; (run) dynamic runtime overrides. Convenience fields branch, repositoryTag, and repository auto-build settings — use them instead of manually constructing this map. When needed, raw settings keys: branch (workflow source), repositoryTag (ArgoCD image tag), stepParameters (per-repo overrides keyed by Org/Repo). NOTE: pipeline parameters are NOT overridden via settings — update them first with opsera_pipeline_parameters, then trigger the run. See docs/API_REFERENCE.md.imageTags— object — For action=run with multiple ArgoCD image overrides: map of image names to tags. Example: {"Akamai":"91348cd1","to-sdlc_impl2":"397e4e5c"}. Tags can be short (expanded to fully qualified URIs from the step config) or full URIs. The handler fetches the pipeline config to resolve image repo keys and populate stepParameters. For JFrog, keys are auto-formatted as repoName | imageName.pipelineId— string — Required for get, list_runs, get_run; also for runs_stats when querying a single pipeline. MongoDB ObjectId.repository— string — For action=run: Git repository path (e.g. OpseraEngineering/opsera-mcp) for per-step branch override. Used with branch to auto-build settings.stepParameters[repo].branch. Omit to target the workflow source branch instead.templateId— string — For operation=templates_get: pipeline template ID (24-char alphanumeric).includeLogs— ['null', 'boolean'] — For get_run only. When true, request view=full with console logs. Ignored when view is set. Default uses view=artifacts.pipelineIds— string — Comma-separated MongoDB ObjectIds for security_audit or runs_stats batch (max 50). For runs_stats use pipelineId or pipelineIds.disabledOnly— ['null', 'boolean'] — For security_audit. When true (API default), only pipelines with at least one disabled security step.includeStats— ['null', 'boolean'] — For security_audit. When true, attach runStats (average/min/max duration) per returned pipeline. Use for average execution time where security steps are disabled.repositoryTag— string — For action=run with single image: full container image URI with tag (e.g. 123456.dkr.ecr.us-east-1.amazonaws.com/tt1:5). Auto-extracts image repo name as stepParameters key. For multiple images use imageTags instead.imageRepository— string — For action=run with single image: image repository name (e.g. tt1, my-app) as stepParameters key. Optional — auto-extracted from repositoryTag URI when omitted.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_projectsProjects: list, get, create, update. See docs/API_REFERENCE.md for operations.
Parameters:
operation(required) — string — One of: list, get, create, updatebody— object — Request body for create/update.projectId— string — Required for get/update. Path parameter.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_reports_and_logsReports and logs: reports_tasks_created, reports_pipelines_created, logs_audit_user, logs_task. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: reports_tasks_created, reports_pipelines_created, logs_audit_user, logs_taskbody— object — Request body for logs_task.page— string — Query: logs_audit_user.type— string — Query: logs_audit_user.action— string — Query: logs_audit_user.period— string — Query: reports.user_id— string — Query: logs_audit_user.end_date— string — Query: reports.end_time— string — Query: logs_audit_user.group_by— string — Query: reports.page_size— string — Query: logs_audit_user.target_id— string — Query: logs_audit_user.start_date— string — Query: reports.start_time— string — Query: logs_audit_user.user_email— string — Query: logs_audit_user.include_data— string — Query: reports.secondary_action— string — Query: logs_audit_user.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_search_data_settingsCross-entity discovery and platform settings. search finds pipeline, task, or registry records by name or ID and returns lightweight metadata only — not execution history, artifacts, durations, or full stage configuration (use opsera_pipelines for those). org_hierarchy and settings_tasks for organizational mapping and task configuration updates. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of search, org_hierarchy, settings_tasks. search: cross-entity discovery by name or ID. org_hierarchy: org and project mapping. settings_tasks: bulk task settings updates.c— string — search: category filter (pipeline type, task category, or tool identifier).m— string — search: exact-match field, e.g. _id for lookup by MongoDB ObjectId.s— string — search: query string (name, description, or ID fragment). Omit with t set to list all accessible entities of that type.t— string — search: required entity type — pipeline, task, or registry. Returns lightweight metadata only (id, name, tags, owner); not run history, artifacts, or full configuration.body— object — Request body for org_hierarchy and settings_tasks.count— ['null', 'number'] — search: max results (default 100).field— string — search: limit match to name, description, tags, or owner.regex— ['null', 'boolean'] — search: enable regex matching.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_tasksTasks: list, create, status, lookup; lifecycle mutations via operation=action (run, stop, create, update, status). See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: list, create, create_batch, task_status, tasks_lookup, tasks_status, actionbody— object — Request body for other operations; or for action use action/target/settings/payload.action— string — For operation=action: status, create, update, run, stop.target— string — For operation=action: task ID or comma-separated IDs (optional for create).payload— object — For operation=action: optional extra payload.settings— object — For operation=action with action=update: task settings.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_toolsTools & registry: identifiers, registry, scm_repositories, scm_branches, registry_configurations. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: identifiers, registry, scm_repositories, scm_branches, registry_configurationsbody— object — Request body for scm_repositories, scm_branches, registry_configurations.type— string — Query: identifiers.usage— string — Query: identifiers.fields— ['null', 'array'] — Query: identifiers, registry.search— string — Query: identifiers, registry.status— string — Query: identifiers.tool_identifier— string — Query: registry.enabledInToolRegistry— ['null', 'boolean'] — Query: identifiers.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
opsera_usersUser management: get_current, get, list (optional active=true|false), create, delete. See docs/API_REFERENCE.md.
Parameters:
operation(required) — string — One of: get_current, get, list, create, delete.id— string — Query param for list (comma-separated user IDs).body— object — Request body for create.active— string — Optional for list. true or false. Omit to default to active users (true). Use false for deactivated users.search— string — Query param for get_current and list (e.g. [email protected]).userId— string — Required for get/delete. Path parameter (MongoDB ObjectId or email).
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.