Skip to content

[FEATURE]: Support _meta when calling downstream MCP tools #17084

Closed as not planned
moghtader/opencode
#1

Description

@Rajmehta123

When opencode receives a tools/call request that contains _meta, that metadata does not appear to be forwarded when opencode invokes downstream MCP tools.

In a typical setup:

UI → opencode → downstream MCP server

the UI may attach runtime metadata in _meta (for example document IDs, container IDs, workspace context, or tracing information). This metadata is intended to travel with the request but remain hidden from the LLM.

Currently, when opencode makes the downstream tools/call, the _meta field is dropped. As a result, downstream MCP servers lose request-scoped context.

Example incoming request:

{
  "method": "tools/call",
  "params": {
    "name": "docuai_agent_tool",
    "arguments": {
      "user_request": {
        "user_input": "Translate this document to French"
      }
    },
    "_meta": {
      "com.example/documentId": "doc_123",
      "com.example/containerId": "cont_456"
    }
  }
}

Expected downstream request:

{
  "method": "tools/call",
  "params": {
    "name": "translate_document_preserving_structure",
    "arguments": {
      "destinationLanguageThreeLetterCode": "fra"
    },
    "_meta": {
      "com.example/documentId": "doc_123",
      "com.example/containerId": "cont_456"
    }
  }
}

Forwarding _meta would allow downstream MCP tools to access request context (e.g., document IDs or workspace metadata) without exposing those values to the model.

It would be helpful if opencode preserved _meta from incoming requests and forwarded it to downstream tools/call requests when present.

Activity

  1. added
    discussionUsed for feature requests, proposals, ideas, etc. Open discussion
    on Mar 11, 2026
  2. added
    coreAnything pertaining to core functionality of the application (opencode server stuff)
    on Mar 11, 2026
  3. github-actions commented on Mar 11, 2026

    @github-actions
    Contributor

    This issue doesn't fully meet our contributing guidelines.

    What needs to be fixed:

    • The description appears to be AI-generated (extensive structured prose, tables, JSON examples, and formatted sections are not acceptable per our guidelines). Please replace it with a concise, human-written description of the problem you're experiencing.

    Please edit this issue to address the above within 2 hours, or it will be automatically closed.


    This issue might be a duplicate of existing issues. Please check:

    If you believe this was flagged incorrectly, please let a maintainer know.

  4. changed the title [-][FEATURE]: Forward request-scoped MCP _meta from incoming opencode requests to downstream MCP tool calls[/-] [+][FEATURE]: Support _meta when calling downstream MCP tools[/+] on Mar 11, 2026
  5. github-actions commented on Mar 11, 2026

    @github-actions
    Contributor

    Thank you for updating the issue — the description is clear and well-written.

    However, the issue still doesn't fully match our Feature Request template. One required field is missing:

    • Verification checkbox: The template requires confirming "I have verified this feature I'm about to request hasn't been suggested before." Please edit the issue and re-apply the feature request template so this checkbox is included.

    You can do this by editing the issue and selecting the Feature Request template, or by adding the checkbox manually:

    - [ ] I have verified this feature I'm about to request hasn't been suggested before.
    

    Please update the issue to address this.

  6. removed
    discussionUsed for feature requests, proposals, ideas, etc. Open discussion
    coreAnything pertaining to core functionality of the application (opencode server stuff)
    on May 3, 2026
  7. github-actions commented on Jul 3, 2026

    @github-actions
    Contributor

    To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions