btp-agent
One LangGraphLangGraphAn agent runtime that describes a loop as a graph of nodes and edges and carries the state between turns. For the things here it is the harness an agent's planning and tool calls run in, and the state that a CDS checkpointer persists. agent in a CAP service, with a UI5 chat screen in front of it and four odata-mcp-proxyodata-mcp-proxyA config-driven proxy that turns OData and REST endpoints into MCP tools from a JSON file — no code — and runs on BTP Cloud Foundry against BTP Destinations.independent, btp MCP server modules behind it, deployed to Cloud Foundry as a single MTA.
A CAP service holds the agent, a freestyle UI5 app holds the chat screen, and four modules under packages/ hold one JSON config file each, run by odata-mcp-proxyodata-mcp-proxyA config-driven proxy that turns OData and REST endpoints into MCP tools from a JSON file — no code — and runs on BTP Cloud Foundry against BTP Destinations.independent, btp: Cloud Foundry V3, BTP core services, Audit Log and AI Core. srv/agent.ts assembles a LangGraphLangGraphAn agent runtime that describes a loop as a graph of nodes and edges and carries the state between turns. For the things here it is the harness an agent's planning and tool calls run in, and the state that a CDS checkpointer persists. StateGraph with an agent node for the model call, a tools node and an askHuman interrupt, and the tools are not hand-coded: MultiServerMCPClient from @langchain/mcp-adapters spawns the MCP servers and hands their tools to the graph. The model is AzureOpenAiChatClient from @sap-ai-sdk/langchain against SAP AI CoreSAP AI CoreSAP's AI service on BTP: the runtime for AI assets, and through the Generative AI Hub inside it the access to foundation models, the orchestration service with its templating, masking, filtering and grounding modules, the Prompt Registry and Document Grounding.sap official, btp's Generative AI Hub on the binding the CAP application already owns, and in production the chat service injects the caller's JWT as a bearer token so each downstream server authorises the person who asked, which the post ties to the agent, the MCP servers and the target APIs sharing one XSUAA tenant. One mta.yaml deploys nine modules together: the approuter@sap/approuterSAP's Node.js application router: the single entry point in front of a business application's microservices, which authenticates the user, forwards each request to a backend by route and serves static content.sap official, btp, the CAP service, the UI5 chat app, a HANA deployer and the four MCP apps. The post behind it counts the agent's tools as the union of five MCP servers, of which this repository ships four.
Facts
Where it sits
Who is behind it
In the atlas: maintains 25, contributes to 39, wrote 12@lemaiwomaintainer
Before choosing this
Signals
LicenceNo licenseNeither the package manifest nor the repository tree declares a licence
Without a licence the default is all rights reserved. Ask the maintainer, or check for terms stated elsewhere, before depending on it.
What it declares
Every artifact
- Type
- Sample
- Origin
- Independently maintained
- Runtime
- Node.js
- Runs on
- Cloud Foundrylocal
As a sample
- Form
- does not say
Connections
Config-driven proxy turning OData and REST endpoints into MCP tools
AI runtime on BTP with the Generative AI Hub
LangChain's MCP integration for JavaScript, whose MultiServerMCPClient holds several MCP servers at once; for the things here it is how an agent in a CAP service gets its tools from deployed MCP servers instead of hand-written ones.
SAP's Node.js application router in front of business applications
CAP Node.js runtime
Command line client and development toolkit for CAP
An agent runtime that describes a loop as a graph of nodes and edges and carries the state between turns. For the things here it is the harness an agent's planning and tool calls run in, and the state that a CDS checkpointer persists.
Config-driven proxy turning OData and REST endpoints into MCP tools
AI runtime on BTP with the Generative AI Hub
OAuth server issuing JWTs and holding scopes for BTP apps
Cloud Foundry runtime of SAP BTP for polyglot applications
Proxy from cloud apps to on-premise systems via Cloud Connector
Named, credentialed addresses of other systems resolved at runtime
UI5 CLI middlewares running inside the CDS server
Managed SAP HANA 2.0 databases in fixed sizes on SAP BTP
Stores UI5 and HTML5 apps and serves them through the approuter
Download
README
quoted from lemaiwo/btp-agent, readGetting Started
Welcome to your new project.
It contains these folders and files, following our recommended project layout:
| File or Folder | Purpose |
|---|---|
app/ | content for UI frontends goes here |
db/ | your domain models and data go here |
srv/ | your service models and code go here |
package.json | project metadata and configuration |
readme.md | this getting started guide |
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
Flavors
“A CAP TypeScript monorepo hosting an AI agent connected to SAP BTP AI Core, with a UI5 freestyle chat interface, and multiple MCP server modules that give the agent access to BTP APIs.” — lemaiwo/btp-agent — CLAUDE.md, Vision
History in the atlas
- First seen.
For your agent
- Ref
artifact:lemaiwo-btp-agent- JSON
- /artifacts/lemaiwo-btp-agent.json
- MCP
- Connecting an agent