LO

lemaiwo/odata-mcp-proxy

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

33 stars 17 forks 品質 83 トレンド 26MIT

OData と REST API を MCP ツールとして公開する MCP (Model Context Protocol) サーバを構成主導するサーバーです。 これにより、Claude などの AI アシスタントが、自然で SAP バックエンドを照会、管理、監視することができます.

概要

OData と REST API を MCP ツールとして公開する MCP (Model Context Protocol) サーバを構成主導するサーバーです。 これにより、ClaudeなどのAIアシスタントが自然言語でSAPバックエンドを照会、管理、監視することができます。 サーバーは、SAP BTP Cloud Foundry で実行され、BTP のデスティネーションを使用して、トークン管理された接続を OData API に安全に使用できます。 - 6つのAPIカテゴリ全体で、自動的にMCPツールとして登録 - -- リスト、取得、作成、更新、およびAPIが許可する操作を削除 - -- $filter、$select、$expand、$orderby、$top、$skip、$inlinecount - - - 関連するエンティティティのための専用のツール(例、iFlow設定、メッセージ添付ファイル、エラーの詳細) - -- -- 設定を介して必要なAPIカテゴリのみを有効にします - -- BTP デプロイメント、ローカル Claude デスクトップ使用の stdio の HTTP をストリーミング可能 - -- トークンは BTP Destination サービスを介して透明に更新されます サーバは、スタートアップでBTP Destinationを解決し、クラウドインテグレーションテナントURLとOAuth2の認証情報を取得します.

概要(AI 翻訳)

OData と REST API を MCP ツールとして公開する MCP (Model Context Protocol) サーバを構成主導するサーバーです。 これにより、ClaudeなどのAIアシスタントが自然言語でSAPバックエンドを照会、管理、監視することができます。

サーバーは、SAP BTP Cloud Foundry で実行され、BTP のデスティネーションを使用して、トークン管理された接続を OData API に安全に使用できます。

お問い合わせ

##特徴

-32 ODataエンティティティティエントは6つのAPIカテゴリにを設定し、MCPツールとして自動的に登録

  • 完全なCRUDサポート – APIが許可する操作のリスト、取得、作成、更新および削除
  • OData V2 クエリ機能 – $filter], $select, [$expand]], [$orderby]], [[$skip, [[$inlinecount]]]
  • Navigation プロパティ traversal – 関連するエンティティティのための専用のツール (例: iFlow 構成、メッセージの添付ファイル、エラーの詳細) -Category-based filtering – 設定で必要なAPIカテゴリのみを有効にします
  • デュアルトランスポートモード – ローカルClaudeのデスクトップの使用のためのBTPの配置、stdioのための Streamable HTTP
  • 自動 OAuth トークン管理 – トークンは BTP の宛先サービスによって透明に更新されます

お問い合わせ

アーキテクチャ

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

README

以下は原文 README の抜粋です。原文を見る。

OData MCP Proxy

A config-driven MCP (Model Context Protocol) server that exposes OData and REST APIs as MCP tools. This enables AI assistants such as Claude to query, manage, and monitor SAP backends through natural language.

The server runs on SAP BTP Cloud Foundry and uses BTP Destinations for secure, token-managed connectivity to OData APIs.


Features

  • 32 OData entity sets across 6 API categories, automatically registered as MCP tools
  • Full CRUD support – list, get, create, update, and delete operations where the API permits
  • OData V2 query capabilities – $filter, $select, $expand, $orderby, $top, $skip, and $inlinecount
  • Navigation property traversal – dedicated tools for related entities (e.g., iFlow configurations, message attachments, error details)
  • Category-based filtering – enable only the API categories you need via configuration
  • Dual transport modes – Streamable HTTP for BTP deployment, stdio for local Claude Desktop use
  • Automatic OAuth token management – tokens are refreshed transparently via the BTP Destination Service

Architecture

Claude / AI Assistant
        |
        | MCP Protocol (stdio or HTTP)
        v
 OData MCP Proxy
        |
        | OData V2 + JSON
        v
   OData Client
        |
        | OAuth2 (via BTP Destination Service)
        v
  BTP Destination
        |
        v
 SAP Cloud Integration
   OData Admin APIs

The server resolves a BTP Destination at startup to obtain the Cloud Integration tenant URL and OAuth2 credentials. On each API call, the destination is re-resolved to ensure tokens remain valid. The OData client translates MCP tool invocations into OData V2 HTTP requests and returns structured JSON results to the AI assistant.


Prerequisites

  • Node.js 20+ (18+ minimum, 20+ recommended)
  • SAP BTP account with a Cloud Foundry environment
  • SAP Integration Suite tenant (Cloud Integration capability)
  • BTP Destination configured to point to your Cloud Integration tenant’s OData API with OAuth2 authentication
  • Cloud Foundry CLI (cf) and MBT Build Tool (mbt) for BTP deployment

Quick Start (Local Development)

1. Clone and install

git clone 
cd odata-mcp-proxy
npm install

2. Configure environment

cp .env.example .env

Edit .env and set at minimum:

SAP_DESTINATION_NAME=your_ci_destination_name
MCP_TRANSPORT=stdio

Note: For local development with stdio transport, you must have BTP Destination Service credentials available in your environment (e.g., via VCAP_SERVICES or a default-env.json file).

3. Build and run

npm run build
npm run start:stdio

Or use the development watcher:

npm run dev

4. Connect from Claude Desktop

Add the server to your Claude Desktop MCP configuration (claude_desktop_config.json):

{
GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

{ "mcpServers": { "odata-mcp-proxy": { "command": "node", "args": ["dist/index.js"], "cwd": "/path/to/odata-mcp-proxy", "env": { "SAP_DESTINATION_NAME": "your_ci_destination_name", "MCP_TRANSPORT": "stdio" } } } }