Skip to main content
Glama
728,680 tools. Updated 2026-10-31 13:43

"Using Jira MCP to comment on subtasks, read descriptions, and create a test plan" matching MCP tools:

  • Write the run order for a project: which platforms, in what sequence, and why each one is where it is. Anything already submitted to is dropped from the plan and named back to you in `alreadySubmitted`, because a plan is what is still ahead. Pass the platforms in the order they should be worked, with a short reason on each, plus a summary of the strategy. The plan appears on the maker's dashboard as a checklist that ticks itself off as submissions land. Anything already tracked is reordered rather than reset. Call it after qualify_project, using the `recommended` list it hands back, and if that response carried `questions`, put them to the maker before you plan: the order depends on the answers, and a plan written on an assumption is one they have to undo by hand. A plan costs nothing on any plan, so plan the whole run the product deserves rather than a short one sized to a guess about what the account can track.
    ConnectorNo auth
  • Add a comment to a card or to an epic. Provide exactly one of card_id or epic_id. Content is AgileHero Markup (AHM, comment surface: no tables, media, colors, alignment, or discussions) — never markdown or HTML; read get_ahm_spec first. The comment is attributed to the signed-in user this client acts as and appears in subsequent get_card / get_epic responses. Comments cannot be edited via MCP; delete_comment removes your own (correct mistakes by delete + repost). Pass parent_comment_id to reply to an existing comment. Threads are one level deep: replying to a reply attaches the new comment to that reply's thread root instead, so do not attempt to nest replies. The parent must be a comment on the same card or epic — a uid from anywhere else is rejected.
    ConnectorNo auth
  • Transform a Jira ticket into a complete test suite: Gherkin scenarios, E2E steps, API test cases, test data matrix, and ambiguity detection. Accepts either Jira credentials (auto-fetch) or a pre-fetched issue object. The returned test_suite includes _gherkin_warnings (deterministic syntax validation — empty if clean). Requires BYOK LLM key (OpenAI, Anthropic, etc.).
    ConnectorNo auth
  • Create a database user for a Cloud SQL instance. * This tool returns a long-running operation. Use the `get_operation` tool to poll its status until the operation completes. * When you use the `create_user` tool, specify the type of user: `CLOUD_IAM_USER`, `CLOUD_IAM_SERVICE_ACCOUNT`, or `BUILT_IN`. * By default the newly created user is assigned the `cloudsqlsuperuser` role, unless you specify other database roles explicitly in the request. * You can use a newly created user with the `execute_sql` tool if the user is a currently logged in IAM user. The `execute_sql` tool executes the SQL statements using the privileges of the database user logged in using IAM database authentication. The `create_user` tool has the following limitations: * To create a built-in user with password, use the `password_secret_version` field to provide password using the Google Cloud Secret Manager. The value of `password_secret_version` should be the resource name of the secret version, like `projects/12345/locations/us-central1/secrets/my-password-secret/versions/1` or `projects/12345/locations/us-central1/secrets/my-password-secret/versions/latest`. The caller needs to have `secretmanager.secretVersions.access` permission on the secret version. * The `create_user` tool doesn't support creating a user for SQL Server. To create an IAM user in PostgreSQL: * The database username must be the IAM user's email address and all lowercase. For example, to create user for PostgreSQL IAM user `example-user@example.com`, you can use the following request: ``` { "name": "example-user@example.com", "type": "CLOUD_IAM_USER", "instance":"test-instance", "project": "test-project" } ``` The created database username for the IAM user is `example-user@example.com`. To create an IAM service account in PostgreSQL: * The database username must be created without the `.gserviceaccount.com` suffix even though the full email address for the account is`service-account-name@project-id.iam.gserviceaccount.com`. For example, to create an IAM service account for PostgreSQL you can use the following request format: ``` { "name": "test@test-project.iam", "type": "CLOUD_IAM_SERVICE_ACCOUNT", "instance": "test-instance", "project": "test-project" } ``` The created database username for the IAM service account is `test@test-project.iam`. To create an IAM user or IAM service account in MySQL: * When Cloud SQL for MySQL stores a username, it truncates the @ and the domain name from the user or service account's email address. For example, `example-user@example.com` becomes `example-user`. * For this reason, you can't add two IAM users or service accounts with the same username but different domain names to the same Cloud SQL instance. * For example, to create user for the MySQL IAM user `example-user@example.com`, use the following request: ``` { "name": "example-user@example.com", "type": "CLOUD_IAM_USER", "instance": "test-instance", "project": "test-project" } ``` The created database username for the IAM user is `example-user`. * For example, to create the MySQL IAM service account `service-account-name@project-id.iam.gserviceaccount.com`, use the following request: ``` { "name": "service-account-name@project-id.iam.gserviceaccount.com", "type": "CLOUD_IAM_SERVICE_ACCOUNT", "instance": "test-instance", "project": "test-project" } ``` The created database username for the IAM service account is `service-account-name`.
    ConnectorNo auth
  • Replace the notes on a finished Load Test's Test Report — the only thing on a Load Test this surface edits. Ask the user before writing: notes belong to the user, and advising on a test never requires writing them. The text sent becomes the report's entire notes, so first read the current notes with get_load_test_report and preserve the user's content in what you send.
    Connector
    Destructive
    OAuth
  • Record data in one Test Plan entry: pass `fields` as {column: value}. Entries belong to the Test Plan, not to this document: every document bound to the plan (boundDocuments in traceable_test_plan_read) shows the same entries, and they stay on the plan if this document is archived or deleted. Entry columns: decision (include | exclude), rationale, result_text, test_notes, samples, location, equipment (one dated register label per line), result (pass | fail | "" to clear; derived from the steps when the protocol has steps), assessment, baseline_notes, resolution (passed | failed | passed_with_deviation | failure_accepted | "" for the derived default). With `step` (numbered from 1) the fields are that test step's: result_text, notes, result. Same validation and limits as the editor. Evidence is traceable_test_plan_evidence_add. Tester is an electronic signature and cannot be applied by an agent. The Test Plan row goes to review.
    Connector
    Destructive
    OAuth

Matching MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to manage Plan to Eat recipes, meal plans, and shopping lists through natural language, with full CRUD operations.
    36
    56 npm
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    UK property listing description generator. Give an AI assistant a postcode or address — it fetches comparable sales, EPC ratings, and Rightmove listings, then writes three copy variants ready for Rightmove, social media, and email.
    1
    -

Matching MCP Connectors

  • Jira MCP Pack

  • Month-by-month financial simulator for Indian salaries: loan amortization and refinance, asset projections, and 50-year FIRE plans. Anonymous public tools, no signup.

  • Returns the canonical guide for using TMV from a coding-agent context. Covers the fix-test-retest loop, how to write a good test prompt, how to read the actionTrail / consoleErrors / failedRequests outputs, and common gotchas. Call this first if you're a new agent on a project — it'll save you a debug session. The same content is served at https://testmyvibes.com/docs/coding-agents.
    ConnectorNo auth
  • Report the user's current plan and usage: their tier (Free or Premium), how many projects and how much storage they are using against their limits, their subscription status if any, and where they manage their plan. Use this when the user asks what plan they are on, how much storage or how many projects they have used, or whether they are near a limit. Metadata only - no files, facts, or profile content. This is READ-ONLY: you cannot change the plan or start a purchase; plan and billing changes are done by the user themselves at usemycontext.ai. Read-only; nothing is written, so it is safe to call.
    ConnectorNo auth
  • Create, list, test, or delete a workspace connection to an external data source. Two types are supported: "sftp" and "aws_s3". For sftp, create generates a keypair and returns the public key — it must be installed in the remote server's authorized_keys before test (or a trigger using this connection) will succeed. For aws_s3, create generates an ExternalId and returns a trustPolicy plus dpfPrincipalArn — the customer must create (or update) the IAM role at roleArn with that trust policy and a permissions policy granting the S3 access DPF needs, before test will succeed. Either type must pass test before it can be used in a trigger. For a first-time "pull files from this server/bucket on a schedule" request, prefer setup_scheduled_pull, which chains create + test + create-trigger for you.
    Connector
    Destructive
    OAuth
  • Say something back on ONE review comment and LEAVE IT OPEN — to ask what the reviewer meant, to report what you found, or to say you are blocked. Use this rather than review-resolve whenever the exchange is not finished: resolving closes it, and the reviewer would have to open a new comment to answer you. The reviewer sees your message in the artifact, and their answer comes back on the same comment — call review-list again to read it. They may not reply immediately, so do not wait on it. You may reply to a comment addressed to you, or to one marked `unassigned`. A closed comment takes no more replies — it answers replied: false, because nobody is reading that thread any more. Use `mentionUserIds` to bring a PERSON into the comment when you need a human decision, an approval, or information you cannot get yourself: pass the `id` of anyone in the artifact's `mentionablePeople` from review-list — they need not already be on the comment. Each person named is emailed, so name somebody only when the exchange genuinely needs them. You cannot mention another agent.
    ConnectorOAuth
  • USE WHEN a plan has been agreed and the next question is which repository to start from. Builds the plan (same brain as `onchain_agent_build_plan`) and returns it with a `create` pointer to `onchain_agent_create_agent`, which generates the runnable repo from a nightly-checked template. NOT FOR the full plan with deploy specs and Preflight on every pick (use onchain_agent_build_plan instead) or the repo itself: this tool no longer writes repository files, so use onchain_agent_create_agent to generate it. Every door (this server, POST /api/create, the CLI and the Agent Architect) downloads the same repo from the same engine. RETURNS (what comes back): the plan summary (goal, intent, chain, plan_url, checked_at, stack slugs), the environment names the stack's own deploy specs ask for, any documented install that pipes a remote script into a shell (`quarantined_installs`, to read before running it), and `create`: the tool name, the CLI command and the template the goal maps to, or null when no template answers it. KEPT FOR COMPATIBILITY: `files` is an empty list and `bytes` is 0; `include_zip` is accepted and ignored. `mode` is "plan_only". RULE ENFORCED: nothing is generated. Every value is a field of the plan. An install line we were not told is never invented. NON-CUSTODIAL: nothing here holds keys, signs, deploys or moves anything. RETURNS (json): { mode: "plan_only", name, files: [], env_names, quarantined_installs, bytes: 0, plan: { goal, intent, chain, plan_url, checked_at, stack_slugs }, caveat, create: { tool, command, template, note } }. Example: { goal: "a Base trading agent that swaps USDC to ETH on a signal", chain: "Base" }
    ConnectorNo auth
  • Adds a new comment to an issue, posted as you (the API key's owner; the issue's history also names the key), and returns the comment's id - what edit_comment/delete_comment take. Requires canEdit on the issue (see get_issue/list_issues); an issue you can't read is reported as not found. Everyone who can read the issue sees the comment; no notification is sent. Only you can later edit or delete it. Use it for discussion and progress notes; to change an existing comment use edit_comment, to note why while moving the issue pass edit_issue_status's comment instead, and to change the issue's own text use edit_issue.
    ConnectorAPI key
  • Create a test user to prove sign-in works: a generated email and password, in its own workspace named "[test] …" and marked as a test fixture (no plan, no emails sent). Returns the email and the generated password; pass them to verify_login. Test-user sign-ins never count as real ones. On a production Bridge environment, or when the app's Stripe keys are live, the call is refused unless `confirm` repeats the app's exact name — ask the user first. Same as `bridge test-user create`. Before writing app code that signs users in, call get_integration_guide with topic=auth and the framework the app uses.
    ConnectorOAuth
  • Commit a comment draft, which SCHEDULES the comment to be posted on LinkedIn under the user's name, on someone else's post. The comment is NOT live when this call returns: Taplio queues it and posts it from the user's account, typically within minutes, but hours later when the user is outside their posting window or has hit their hourly comment limit. The response comes back with status pending and scheduled_for, the time it is due to go out: quote that time to the user, and never tell them the comment is already posted. Confirm the outcome afterwards with get_comment_draft: its status turns to posted with a comment_urn once the comment is live, or to failed or cancelled with a failure_reason. cancel_comment_draft can stop it before it is sent; once posted it is irreversible. Unsafe to retry: committing a draft that was already committed is rejected. The same one-comment rule applies: a commit on a post this account already commented on (or a comment it already replied to) is refused with comment_commit_blocked and code COMMENT_ALREADY_POSTED, and a queued comment that turns out to be a duplicate when it is due is cancelled with that code instead of posted.
    Connector
    Destructive
    OAuth
  • Changes ONE comment-to-DM automation on the connected account: action 'create' (rule needs keywords, or match_mode 'any', and delivery_link_url; texts left out use Buzzfy's defaults, all shown in the preview), 'update' (rule_id plus ONLY the rule fields to change), 'pause', 'resume' or 'delete' (rule_id only). An automation that is ON makes the account publicly reply to and DM everyone whose comment matches, so only do this when the user asked for it. The preview spells out the whole rule, a dry-run example, and whether it can fire yet (Instagram permissions, webhook). Rules managed by Buzzfy (Caption Rental) cannot be changed here. To see rules and their ids, or to dry-run a comment, use ig_automations_list. Automations are a Buzzfy MAX feature: other plans are refused with an upgrade link. Two steps: 1. A call without confirm_code sends nothing. It returns a preview (account, exact text, what it applies to, warnings) and a one-time confirm_code valid for about 10 minutes. 2. A call with the same arguments plus that confirm_code sends, once. It is meant for after the user has approved the preview. Changing any argument needs a new preview. Needs a paid Buzzfy plan.
    Connector
    Destructive
    OAuth
  • Build a complete project plan in Onplana in one call: the project, its tasks and subtasks, epics and risks, with a start and due date on every task. Fits "plan a website launch", "turn this goal into a project with tasks and dates" and "set up a project plan for our office move". A first draft written from the conversation is a valid plan; every task stays editable afterwards. Each task carries `estimatedDays`, and every task gets a start and due date computed from it, laid out one after another, so the project opens with a filled timeline. This call takes no predecessors; link_dependency adds them afterwards. By default it CREATES A NEW PROJECT for the plan. Pass `projectId` to add the plan to a project that ALREADY EXISTS instead. Because it creates a project by default, calling create_project first and then this tool WITHOUT projectId produces two projects, one of them empty. When a project already exists, whether just created or named by the user, its id belongs in `projectId`. Attaching appends only: it never renames the project, never changes its owner, and never reschedules tasks that were already there. The plan carries projectTitle, scopeSummary, estimatedStart, estimatedEnd, tasks[] (title, priority, estimatedDays, optional description, subtasks[] and collaborators) and risks[]. On the create path the caller becomes project owner; attaching leaves the existing owner alone. A task the plan does not name an assignee for goes to the person the call is made for, not to the agent persona, so generating a plan does not put its tasks in the agent work queue that list_assigned_tasks reads. Optional epics[] group the tasks into phases or themes ("Design", "Build", "Launch"): each epic has a caller-defined ref, and a task joins one through task.epicRef. When epics is omitted, every task lands in the default "Initial Scope" epic (legacy behaviour). UNDO SEMANTICS DIFFER BY PATH, and the difference is destructive: a project this call CREATED is fully reversed by delete_project, because nothing else is in it. A project this call ATTACHED to is not, because delete_project destroys the pre-existing project and everything that was already in it, not just what this call added; on that path only the individual tasks this call created are safely removable. `createdProject` in the result distinguishes the two. Limits: up to 20 epics and 100 tasks per call (each task may carry subtasks[]); split a larger plan across calls or extend it afterward with bulk_create_tasks / add_subtasks. The result includes `url`, a direct link to the project in Onplana, and `createdProject`, false when the plan was added to a project that already existed, in which case the plan is an addition to the user's project rather than a new one. ALWAYS show that link in your reply: the user is working inside another app and has no other way to find the plan you just built.
    ConnectorOAuth
  • Switch a project's Jira connection on or off, keeping its token — and, with 'confluence', whether the same site's Confluence is read too. Off, nothing reads that Jira or writes to it — the issue screen, the agents, the status sync — and issues keep their keys there. Switched on, the held token is asked of the site first and refused with the site's reason if it no longer opens it. Connecting a Jira, or giving a new token — Confluence's own included — is done on the board's Jira sheet (get_jira_connection's 'url'), never here. For whoever administers the project.
    Connector
    Destructive
    No auth
  • Read a community's newest comments, across every post. Every new comment in a community, newest first, each with the post it belongs to (`linkTitle`, `linkPermalink`). This is the way to find mentions inside comments: Reddit's search does not search comment text at all. Busy communities produce comments faster than anyone pages through them; to watch one continuously, create a `subreddit_comments` monitor, which also filters by keyword. `name` takes several communities joined with `+`. NSFW is judged by the comment's post and is left out unless `includeNsfw=true`. Costs 1 credit + 3 credits per comment returned. When meta.nextCursor is set, call again with cursor set to it for the next page.
    ConnectorOAuth
  • Add ordered steps (subtasks) to a task so the person sees a checklist; the progress bar fills as steps finish. taskhold_begin already does this for new work. For an existing task: taskhold_start it, then taskhold_plan. Steps don't nest. Returns the task's whole step list with ids. Fails on an unknown task_id, on a step (plan its parent) or past 200 steps per task. Planning a done task adds todo steps but leaves it done; taskhold_start it to reopen.
    Connector
    Destructive
    No auth
  • WHEN: the user wants the manual test cases of a feature (a User Story, Feature or Requirement work item) created in Azure DevOps Test Plans: a test plan, a suite tied to that work item, and one Test Case per scenario with its steps. Triggers: 'create the test plan for WI N', 'créer le plan de test', 'put these tests in Azure Test Plans', 'cas de test dans DevOps'. YOU write the test cases: read the work item (ado_analyze_workitem) and, when useful, the code, then pass them as testCasesJson, a JSON array [{"title":"...","priority":1-4,"tags":["..."],"steps":[{"action":"...","expected":"..."}]}]. Each case needs a title and at least one step; every step needs an action, and an expected result for the steps that verify something. Without testCasesJson the tool falls back to one generic case per acceptance-criteria line, which is much weaker. SAFE BY DEFAULT: with confirm=false (default) nothing is written; it returns exactly what would be created and what already exists. Show that preview to the user, and only call again with confirm=true after they approved it. Test cases whose title already exists on the work item are skipped, so running it twice does not duplicate. Needs a PAT with Work Items (Read & write) and Test Management (Read & write); creating plans and suites also needs the Basic + Test Plans access level.
    ConnectorNo auth
  • Show the eSIM plans on sale for one country or region, or search the whole catalog, narrowing by data allowance, validity and price. Use destination with a country code from list-destinations, or region with a slug from list-regions; never both. Use it when the traveller wants to compare what is available or find a plan inside a budget. Prices are live retail prices in the currency you ask for. For a trip covering two or more countries, use plan-trip first: it compares one plan for the whole route against one plan per country and picks the cheapest complete answer. Pass a plan id from here to get-plan, get-plan-coverage or create-checkout-session. Read-only, and it answers from the SimFuse catalog alone.
    ConnectorNo auth