
oisee/odata_mcp_go
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
oisee/odata_mcp_go는 [[T0]에서 가져온 MCP 서버 후보입니다.
개요
oisee/odata_mcp_go는 [[T0]에서 가져온 MCP 서버 후보입니다.
개요(AI 번역)
OData to Model Context Protocol(MCP) 브리지의 Go 구현으로, MCP 도구를 통해 OData 서비스에 보편적으로 접근할 수 있습니다.
이 기능은 Python OData-MCP 브리지 구현의 Go 이식으로, 다양한 운영체제에서 더 쉽게 실행되고 성능이 우수하며 배포가 더 간단하도록 설계되었습니다. OData v2와 v4 서비스 모두를 지원합니다.
🆕 새로운 소식 (v1.6.0)
범용 도구 모드 — 모든 것을 지배하는 하나의 도구
가장 큰 추가 기능은 Universal Tool Mode(--universal)로, 대규모 OData 서비스에 혁신적인 기능입니다:
| 미터법 | 표준 모드 | 범용 모드 | 환원 |
|---|---|---|---|
| 도구 (노스윈드) | 157 | 1 | 99.4% |
| 도구 (SAP BP) | 485 | 1 | 99.8% |
| 토큰 사용 | ~37,000 | ~900 | 97.6% |
왜 선택적으로 참여해야 하나요? 유니버설 모드는 OData와의 상호작용 방식을 바꿉니다:
- 표준 모드: 각 엔터티는 전용 도구(
filter_Products,get_Orders등)를 제공합니다. - 범용 모드:
odata도구 하나,action,target,params]
우리가 선택적으로 선택한 이유는 다음과 같습니다:
- 하위 호환성 — 기존 설정과 워크플로우가 계속 작동함
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
OData MCP Bridge (Go)
A Go implementation of the OData to Model Context Protocol (MCP) bridge, providing universal access to OData services through MCP tools.
This is a Go port of the Python OData-MCP bridge implementation, designed to be easier to run on different operating systems with better performance and simpler deployment. It supports both OData v2 and v4 services.
🆕 What’s New (v1.6.0)
Universal Tool Mode — One Tool to Rule Them All
The biggest addition is Universal Tool Mode (--universal), a game-changer for large OData services:
# Before: 485 tools, ~37,000 tokens, Claude says "no API available"
./odata-mcp https://large-sap-service.com/odata/
# After: 1 tool, ~900 tokens, works perfectly
./odata-mcp --universal https://large-sap-service.com/odata/
| Metric | Standard Mode | Universal Mode | Reduction |
|---|---|---|---|
| Tools (Northwind) | 157 | 1 | 99.4% |
| Tools (SAP BP) | 485 | 1 | 99.8% |
| Token usage | ~37,000 | ~900 | 97.6% |
Why is it opt-in? Universal mode changes how you interact with OData:
- Standard mode: Each entity gets dedicated tools (
filter_Products,get_Orders, etc.) - Universal mode: One
odatatool withaction,target, andparams
We made it opt-in because:
- Backward compatibility — existing configs and workflows continue working
- Discoverability — per-entity tools are self-documenting; LLMs can see exactly what’s available
- Simplicity for small services — if you have 20 tools, per-entity mode works great
- Explicit choice — users should consciously choose the trade-off
When to use --universal:
- Service has 50+ entity sets
- Running multiple OData services simultaneously
- Experiencing “no API available” or tool selection failures
- Want minimal token footprint
See Universal Tool Architecture for the full story.
MCP Header Forwarding
New --forward-mcp-headers flag enables passing HTTP headers from MCP clients to OData services:
./odata-mcp --transport streamable-http --forward-mcp-headers https://secured-service.com/odata/
This enables:
- Dynamic authentication — pass credentials per-request instead of at startup
- Multi-tenant scenarios — different users with different tokens
- Custom headers —
X-*headers flow through to OData
Issue Fixes Bonanza
This release fixes 10 open issues:
| Issue | Problem | Fix |
|---|---|---|
| #12 | SAP OData shows no tools | Fixed XML namespace parsing (sap:creatable etc.) |
| #13 | --max-items 99999 crashes |
Added validation (max 10,000) |
| #14 | Multiple services = Claude stuck | Universal tool mode |
| #16 | GUID formatting wrong | Auto-detect SAP, add guid'...' prefix |
| #17 | Timeout instead of error | Immediate error response |
| #18 | Wildcard search fails | Parse SearchRestrictions annotation |
설치
docker run --rm -it odata-mcp --help설정
{
"mcpServers": {
"northwind-v2": {
"command": "C:/bin/odata-mcp.exe",
"args": [
"--service",
"https://services.odata.org/V2/Northwind/Northwind.svc/",
"--tool-shrink"
]
},
"northwind-v4": {
"command": "C:/bin/odata-mcp.exe",
"args": [
"--service",
"https://services.odata.org/V4/Northwind/Northwind.svc/",
"--tool-shrink"
]
}
}
}