Skip to content

Conversation

@nmaguiar
Copy link
Collaborator

@nmaguiar nmaguiar commented Nov 9, 2025

This pull request introduces several improvements and new features to the OpenAF MCP client and related documentation. The most significant changes are the addition of support for dummy and oJob-based MCP servers, enhancements to command execution with working directory control, and expanded documentation to guide users on shortcut job syntax. These updates improve flexibility, usability, and developer experience for working with MCP and oJob jobs.

MCP Client and JSON-RPC Enhancements

  • Added support for "dummy" and "ojob" types in the $jsonrpc function, allowing for local testing and oJob-based MCP servers without external processes.
  • Introduced a configurable default working directory for command execution (JSONRPC.cmd.defaultDir in __flags) and the ability to set the working directory dynamically via the .pwd() method on the JSON-RPC client. [1] [2] [3]
  • Improved command execution logic to respect the working directory and added a short sleep after process termination for stability.

Documentation Improvements

  • Expanded the $mcp function documentation to describe new connection types ("dummy" and "ojob"), their options, and usage scenarios for development and testing.
  • Added a new section to docs/ojob.md explaining how to expose jobs via shortcut syntax, including mapping arguments and configuring optional fields.

Minor Updates

  • Updated version metadata in js/oafp.js.
  • Improved output file writing logic in js/oafp.js to better handle Java string types.

These changes collectively enhance the flexibility of MCP integrations, improve developer documentation, and provide more robust job execution and configuration options.

…databind 2.20.1, okhttp 5.3.0, okhttp-jvm 5.3.0, and ojdbc17 23.26.0.0.0
- Created a new pom.json file to manage project dependencies with specific versions for various libraries.
- Updated versionsAndDeps.json to reflect changes in library versions, including:
  - Rhino to version 1.8.0
  - H2 to version 2.4.240
  - jjwt libraries to version 0.13.0
  - JLine to version 2.14.6
  - JNA and JNA Platform to version 5.18.1
  - JAnsi to version 1.18
  - Apache Commons IO to version 2.20.0
  - Apache Commons Lang to version 3.19.0
  - Apache Commons Compress to version 1.28.0
  - OkHTTP Client to version 5.3.0
  - Oracle JDBC to version 23.26.0.0.0
  - PostgreSQL JDBC to version 42.7.8
  - Updated dependencies for SNMP and SSH modules.
…-function

Add configurable working directory to JSON-RPC shell commands
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 pull request updates multiple Java library dependencies and adds new functionality for MCP (Model Context Protocol) support with oJob integration and enhanced JSON-RPC capabilities.

Key changes:

  • Upgraded several Java libraries including Apache Commons Lang (3.18.0 → 3.19.0), Jackson Core (2.20.0 → 2.20.1), OkHTTP (5.2.1 → 5.3.0), Oracle JDBC (ojdbc11 → ojdbc17), and JSch (2.27.2 → 2.27.5)
  • Added MCP protocol version support ("2024-11-05") to ensure protocol compliance
  • Introduced oJob-based MCP server functionality allowing jobs to be exposed as MCP tools
  • Enhanced $jsonrpc with working directory support via pwd() method
  • Added comprehensive LLM guide documentation (docs/llm-guide.md) for code generation
  • Updated oafp.js to handle Java String instances when writing output files

Reviewed Changes

Copilot reviewed 7 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
versionsAndDeps.json Updated dependency versions and paths for upgraded libraries; references updated to match new Oracle JDBC and SSH library versions
pom.xml Updated Maven dependencies to match version upgrades for Jackson, OkHTTP, and Oracle JDBC driver
pom.json Added new artifact entries for updated libraries (with one stale ojdbc11 entry remaining)
lib/okhttp-5.3.0.jar Binary file addition for upgraded OkHTTP library
js/owrap.server.js Added MCP protocol version field to mcpStdio initialization
js/openaf.js Major enhancements: added oJob type support to $mcp, pwd() method to $jsonrpc, protocol version configuration, improved exit callback behavior, and updated documentation
js/oafp.js Fixed output file writing to handle Java String instances properly; updated version to 20251105
docs/ojob.md Added documentation for job shortcut syntax configuration
docs/llm-guide.md New comprehensive guide for LLM-based OpenAF code generation with examples and patterns

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

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@nmaguiar nmaguiar merged commit 7b2e8c3 into master Nov 9, 2025
1 check passed
@github-project-automation github-project-automation bot moved this from Backlog to Done in Continuous Enhancement Nov 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Development

Successfully merging this pull request may close these issues.

2 participants