Skip to content

Fix language-support-tester: use serena- prefixed tool names in agent prompt#1241

Merged
lpcox merged 5 commits intomainfrom
copilot/add-serena-tools-for-language-support
Feb 21, 2026
Merged

Fix language-support-tester: use serena- prefixed tool names in agent prompt#1241
lpcox merged 5 commits intomainfrom
copilot/add-serena-tools-for-language-support

Conversation

Copy link
Contributor

Copilot AI commented Feb 21, 2026

The language-support-tester workflow reported all three language tests (Go, TypeScript/JavaScript, Python) blocked because the agent prompt referenced Serena tools by bare names (activate_project, find_symbols) instead of the MCP gateway's server-prefixed names.

In unified MCP gateway mode, the Copilot CLI exposes backend tools with <server>-<tool> naming. The agent sees serena-activate_project, not activate_project, so bare-name calls fail silently.

Changes

  • .github/agentics/language-support-tester.md: Updated all Serena tool references to use the serena- prefix, consistent with how smoke-copilot.md correctly references them:
    • activate_projectserena-activate_project
    • find_symbolsserena-find_symbol (also corrected plural → singular per actual registered name)
    • get_definitionserena-get_symbols_overview (replaced with the tool that's actually available)
    • Updated Testing Guidelines and Available Tools sections to document the prefix convention explicitly

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • example.com
    • Triggering command: /tmp/go-build3795214362/b279/launcher.test /tmp/go-build3795214362/b279/launcher.test -test.testlogfile=/tmp/go-build3795214362/b279/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true 64/src/runtime/cgo (dns block)
  • invalid-host-that-does-not-exist-12345.com
    • Triggering command: /tmp/go-build3795214362/b264/config.test /tmp/go-build3795214362/b264/config.test -test.testlogfile=/tmp/go-build3795214362/b264/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true 64/src/runtime/c-c=4 64/src/internal/-nolocalimports 86_64/as (dns block)
  • nonexistent.local
    • Triggering command: /tmp/go-build3795214362/b279/launcher.test /tmp/go-build3795214362/b279/launcher.test -test.testlogfile=/tmp/go-build3795214362/b279/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true 64/src/runtime/cgo (dns block)
  • slow.example.com
    • Triggering command: /tmp/go-build3795214362/b279/launcher.test /tmp/go-build3795214362/b279/launcher.test -test.testlogfile=/tmp/go-build3795214362/b279/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true 64/src/runtime/cgo (dns block)
  • this-host-does-not-exist-12345.com
    • Triggering command: /tmp/go-build3795214362/b288/mcp.test /tmp/go-build3795214362/b288/mcp.test -test.testlogfile=/tmp/go-build3795214362/b288/testlog.txt -test.paniconexit0 -test.timeout=10m0s -test.v=true 64/src/runtime/cgo /home/REDACTED/work/gh-aw-mcpg/gh--Wl,--no-gc-sections ache/go/1.25.6/x64/pkg/tool/linu-fmessage-length=0 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>[language-support] Serena MCP tools unavailable - language support tests could not run</issue_title>
<issue_description>## Summary

The language support tester workflow ran but was unable to execute any language tests because the Serena MCP server tools were not available in the agent's execution context.

Expected Behavior

The following Serena MCP tools should be available to the agent:

  • serena-activate_project — to activate Go, TypeScript/JavaScript, and Python projects
  • serena-find_symbols — to locate functions, classes, and symbols in source code
  • serena-get_definition — to retrieve symbol definitions

Actual Behavior

None of the serena-* prefixed tools were registered in the agent's tool set. This prevented all three language support tests from running:

  • Goserena-activate_project not available; could not test Go language server
  • TypeScript/JavaScriptserena-activate_project not available; could not test TS/JS language server
  • Pythonserena-activate_project not available; could not test Python language server

Environment Details

  • Workflow: Language Support Tester
  • Workflow run: 22249554487
  • Workspace: /home/runner/work/gh-aw-mcpg/gh-aw-mcpg
  • Configured Serena languages: ["go", "typescript", "python"]
  • Test sample paths verified present:
    • test/serena-mcp-tests/samples/js_project/ (calculator.js, utils.js, package.json)
    • test/serena-mcp-tests/samples/python_project/ (calculator.py, utils.py)

Steps to Reproduce

  1. Trigger the language-support-tester workflow
  2. Observe that no serena-* tools appear in the agent's available tool set
  3. Language tests cannot proceed without Serena MCP tools

Possible Root Causes

  • Serena MCP server container (ghcr.io/github/serena-mcp-server:latest) failed to start or connect to the gateway
  • Tool registration between the Serena container and MCP gateway failed
  • The tools: serena: ["go", "typescript", "python"] workflow configuration was not properly applied

Impact

All three language support tests (Go, TypeScript/JavaScript, Python) were completely blocked. The workflow cannot validate that language server functionality works correctly.

Generated by Language Support Tester

  • expires on Feb 28, 2026, 3:38 AM UTC

Comments on the Issue (you are @copilot in this section)

Custom agent used: agentic-workflows
GitHub Agentic Workflows (gh-aw) - Create, debug, and upgrade AI-powered workflows with intelligent prompt routing


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

…er prompt

Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
Copilot AI changed the title [WIP] Add Serena MCP tools for language support tests Fix language-support-tester: use serena- prefixed tool names in agent prompt Feb 21, 2026
Copilot AI and others added 3 commits February 21, 2026 18:52
…apture

Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
`golangci-lint` (`unused` linter) was failing CI due to two struct
fields in a test helper that were never read or written.

## Change

Removed `statusCode` and `responseBody` from `handlerCapture` in
`internal/server/sdk_logging_test.go` — these values are passed as
parameters to `makeInnerHandler` but were never stored back onto the
struct.

```go
// before
type handlerCapture struct {
    called       bool
    body         []byte
    statusCode   int   // never set or read
    responseBody []byte // never set or read
}

// after
type handlerCapture struct {
    called bool
    body   []byte
}
```

> [!WARNING]
>
> <details>
> <summary>Firewall rules blocked me from connecting to one or more
addresses (expand for details)</summary>
>
> #### I tried to connect to the following addresses, but was blocked by
firewall rules:
>
> - `example.com`
> - Triggering command: `/tmp/go-build3958490663/b275/launcher.test
/tmp/go-build3958490663/b275/launcher.test
-test.testlogfile=/tmp/go-build3958490663/b275/testlog.txt
-test.paniconexit0 -test.timeout=10m0s -test.v=true -c=4 -nolocalimports
-importcfg /tmp/go-build3958490663/b232/importcfg -pack
/home/REDACTED/go/pkg/mod/github.com/santhosh-tekuri/jsonschema/v5@v5.3.1/compiler.go
/home/REDACTED/go/pkg/mod/github.com/santhosh-tekuri/jsonschema/v5@v5.3.1/content.go
conf�� go user.name git` (dns block)
> - `invalid-host-that-does-not-exist-12345.com`
> - Triggering command: `/tmp/go-build3958490663/b260/config.test
/tmp/go-build3958490663/b260/config.test
-test.testlogfile=/tmp/go-build3958490663/b260/testlog.txt
-test.paniconexit0 -test.timeout=10m0s -test.v=true go
base64/base64.go-imultiarch 64/pkg/tool/linux86_64-linux-gnu r` (dns
block)
> - `nonexistent.local`
> - Triggering command: `/tmp/go-build3958490663/b275/launcher.test
/tmp/go-build3958490663/b275/launcher.test
-test.testlogfile=/tmp/go-build3958490663/b275/testlog.txt
-test.paniconexit0 -test.timeout=10m0s -test.v=true -c=4 -nolocalimports
-importcfg /tmp/go-build3958490663/b232/importcfg -pack
/home/REDACTED/go/pkg/mod/github.com/santhosh-tekuri/jsonschema/v5@v5.3.1/compiler.go
/home/REDACTED/go/pkg/mod/github.com/santhosh-tekuri/jsonschema/v5@v5.3.1/content.go
conf�� go user.name git` (dns block)
> - `slow.example.com`
> - Triggering command: `/tmp/go-build3958490663/b275/launcher.test
/tmp/go-build3958490663/b275/launcher.test
-test.testlogfile=/tmp/go-build3958490663/b275/testlog.txt
-test.paniconexit0 -test.timeout=10m0s -test.v=true -c=4 -nolocalimports
-importcfg /tmp/go-build3958490663/b232/importcfg -pack
/home/REDACTED/go/pkg/mod/github.com/santhosh-tekuri/jsonschema/v5@v5.3.1/compiler.go
/home/REDACTED/go/pkg/mod/github.com/santhosh-tekuri/jsonschema/v5@v5.3.1/content.go
conf�� go user.name git` (dns block)
> - `this-host-does-not-exist-12345.com`
> - Triggering command: `/tmp/go-build3958490663/b284/mcp.test
/tmp/go-build3958490663/b284/mcp.test
-test.testlogfile=/tmp/go-build3958490663/b284/testlog.txt
-test.paniconexit0 -test.timeout=10m0s -test.v=true go H6RJmYT_A
/usr/bin/git =fetch` (dns block)
>
> If you need me to access, download, or install something from one of
these locations, you can either:
>
> - Configure [Actions setup
steps](https://gh.io/copilot/actions-setup-steps) to set up my
environment, which run before the firewall is enabled
> - Add the appropriate URLs or hosts to the custom allowlist in this
repository's [Copilot coding agent
settings](https://github.com/github/gh-aw-mcpg/settings/copilot/coding_agent)
(admins only)
>
> </details>

<!-- START COPILOT CODING AGENT SUFFIX -->



<!-- START COPILOT ORIGINAL PROMPT -->



<details>

<summary>Original prompt</summary>

> Fix the failing GitHub Actions workflow lint
> Analyze the workflow logs, identify the root cause of the failure, and
implement a fix.
> Job ID: 64402534822
> Job URL:
https://github.com/github/gh-aw-mcpg/actions/runs/22262314337/job/64402534822


</details>



<!-- START COPILOT CODING AGENT TIPS -->
---

✨ Let Copilot coding agent [set things up for
you](https://github.com/github/gh-aw-mcpg/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot)
— coding agent works faster and does higher quality work when set up for
your repo.
@lpcox lpcox marked this pull request as ready for review February 21, 2026 18:58
Copilot AI review requested due to automatic review settings February 21, 2026 18:58
@lpcox lpcox merged commit eb5c403 into main Feb 21, 2026
13 checks passed
@lpcox lpcox deleted the copilot/add-serena-tools-for-language-support branch February 21, 2026 18:58
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes the language-support-tester workflow by correcting Serena MCP tool references to use the server-prefixed naming convention required by the MCP gateway in routed mode. The workflow was previously failing because the agent prompt used bare tool names (activate_project, find_symbols) instead of the prefixed names (serena-activate_project, serena-find_symbol) that the gateway exposes.

Changes:

  • Corrected all Serena tool references in the language-support-tester agent prompt to use the serena- prefix
  • Fixed tool name accuracy: find_symbolsfind_symbol (singular) and get_definitionget_symbols_overview (correct tool name)
  • Updated documentation sections to explicitly document the prefix convention
  • Removed unused fields from test helper struct (unrelated cleanup)

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/agentics/language-support-tester.md Updated all Serena tool references to use serena- prefix and corrected tool names to match actual registered names
internal/server/sdk_logging_test.go Removed unused statusCode and responseBody fields from handlerCapture test helper struct

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[language-support] Serena MCP tools unavailable - language support tests could not run

3 participants