Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion modelcontextprotocol/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ ENV PATH="/appuser/.venv/bin:$PATH"
ENV MCP_TRANSPORT="stdio"
ENV MCP_HOST="0.0.0.0"
ENV MCP_PORT="8000"
ENV MCP_PATH="/"
ENV MCP_PATH="/mcp/"

USER appuser

Expand Down
2 changes: 1 addition & 1 deletion modelcontextprotocol/docs/DEPLOYMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ python server.py --transport streamable-http --host 0.0.0.0 --port 8000
- `MCP_TRANSPORT`: Transport mode (stdio/sse/streamable-http)
- `MCP_HOST`: Host address for network transports (default: 0.0.0.0)
- `MCP_PORT`: Port number for network transports (default: 8000)
- `MCP_PATH`: Path for streamable-http transport (default: /)
- `MCP_PATH`: Path for streamable-http transport (default: /mcp/)

### Optional
- `ATLAN_AGENT_ID`: Agent identifier
Expand Down
6 changes: 5 additions & 1 deletion modelcontextprotocol/docs/LOCAL_BUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,11 @@ uv run .venv/bin/atlan-mcp-server
```bash
uv run mcp dev server.py
```
7. Integrate local MCP changes with Claude Desktop(For E2E testing):

> [!NOTE]
> When running the server locally with Python, it will be available at `http://localhost:8000/mcp/` by default. You can customize the host, port, and path using the `--host`, `--port`, and `--path` arguments respectively.

7. Integrate local MCP changes with Claude Desktop (For E2E testing):
When claude is integrated with Atlan MCP, it runs its own MCP server
Update config in claude desktop config as below to use your local code changes for testing end to end:
```bash
Expand Down
12 changes: 8 additions & 4 deletions modelcontextprotocol/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
parse_list_parameter,
)
from middleware import ToolRestrictionMiddleware
from starlette.requests import Request
from starlette.responses import PlainTextResponse
from settings import get_settings


Expand All @@ -42,6 +44,11 @@
mcp.add_middleware(tool_restriction)


@mcp.custom_route("/health", methods=["GET"])
async def health_check(request: Request) -> PlainTextResponse:
return PlainTextResponse("OK")


@mcp.tool()
def search_assets_tool(
conditions=None,
Expand Down Expand Up @@ -930,10 +937,7 @@ def main():
help="Port to run the server on",
)
parser.add_argument(
"--path",
type=str,
default=settings.MCP_PATH,
help="Path of the streamable HTTP server",
"--path", type=str, default="/", help="Path of the streamable HTTP server"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why the default path / and not the one using env vars?

)
args = parser.parse_args()

Expand Down