-
Notifications
You must be signed in to change notification settings - Fork 2k
Add smithery.yaml configuration for Graphiti MCP Server #1038
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
| startCommand: | ||
| type: "http" | ||
|
|
||
| configSchema: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical Issue: Missing environment variable mapping
The configSchema properties (like openai_api_key, llm_model, llm_provider, etc.) are not being mapped to the actual environment variables expected by the MCP server.
Looking at the config schema in src/config/schema.py and the YAML config in config/config-docker-falkordb-combined.yaml, the server expects environment variables like:
OPENAI_API_KEY(notopenai_api_key)ANTHROPIC_API_KEY(notanthropic_api_key)GOOGLE_API_KEY(notgoogle_api_key)GRAPHITI_GROUP_ID(notgraphiti_group_id)SEMAPHORE_LIMIT(notsemaphore_limit)
The Smithery config schema properties need to be mapped to environment variables. This typically requires an env section under startCommand or proper mapping in the Smithery specification. Without this mapping, the configuration values won't be passed to the container.
| type: "string" | ||
| title: "LLM Model" | ||
| description: "Model name to use" | ||
| default: "gpt-5-mini" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Issue: Incorrect default model
The default is set to gpt-5-mini, but:
- The actual config file at
config/config-docker-falkordb-combined.yaml:11usesgpt-5-minias the default - However, the README.md:110 states the default is
gpt-5-mini - The
config/schema.py:150shows the LLMConfig default isgpt-4.1
There's inconsistency in the codebase, but since this is for Smithery deployment using the Docker container config, it should match config-docker-falkordb-combined.yaml, which correctly uses gpt-5-mini. However, this inconsistency should be documented.
| description: "Concurrent episode processing limit (adjust based on LLM rate limits)" | ||
| default: 10 | ||
| minimum: 1 | ||
| maximum: 50 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Issue: Missing configuration for model-specific settings
The configuration is missing several important settings that are configurable via environment variables:
embedder_providerandembedder_model(for alternative embedding providers like Voyage or Sentence Transformers)llm_temperature(important for some models, especially non-reasoning models)llm_max_tokens(configurable in the config schema)
These should be included as optional properties if Smithery users might need to configure them.
|
|
||
| build: | ||
| dockerfile: "docker/Dockerfile" | ||
| dockerBuildPath: "." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical Issue: Build path mismatch
The dockerfile path is set to "docker/Dockerfile" and dockerBuildPath is ".", which means the build context is the mcp_server/ directory.
However, looking at the Dockerfile at line 55-57:
COPY main.py ./
COPY src/ ./src/
COPY config/ ./config/This expects main.py, src/, and config/ to be in the build context root. Since dockerBuildPath is "." (the mcp_server directory), this should work correctly.
But the issue is: when Smithery builds this from the repository root vs the mcp_server subdirectory. The paths need to be verified:
- If Smithery executes from the repo root, the build context should be
"mcp_server/" - If it executes from within mcp_server/, then
"."is correct
This needs clarification and testing with Smithery's actual build process.
Review SummaryI have identified several critical issues that need to be addressed before this PR can be merged: Critical Issues
Additional Issues
Recommendations
The concept and structure of the configuration look good, but the implementation needs these corrections to be functional. |
Summary
Adds Smithery platform configuration for the Graphiti MCP Server, enabling seamless deployment through the Smithery registry.
Configuration Details
Configuration Schema
The simplified configuration captures:
Test Plan
🤖 Generated with Claude Code