Architecture Pattern MCP
An MCP server that provides architecture design expertise to AI coding agents. It analyzes requirements and domains, selects from 128 built-in patterns, and generates concrete architecture designs including components, relationships, API contracts, data models, and event contracts, while evaluating them against quality attributes.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Analyze requirements to select matching architecture patterns
- Generate concrete architecture designs with components and relationships
- Define API contracts, data models, and event contracts
- Evaluate designs against quality attributes like scalability and security
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
docker.io/olkowa/architecture-pattern-mcp:1.1.3
{
"transport": "stdio",
"identifier": "docker.io/olkowa/architecture-pattern-mcp:1.1.3",
"runtimeHint": "docker",
"registryType": "oci",
"packageArguments": [
{
"type": "positional",
"value": "--transport"
},
{
"type": "positional",
"value": "stdio"
}
],
"runtimeArguments": [
{
"name": "--add-host",
"type": "named",
"value": "host.docker.internal:host-gateway",
"description": "Makes a TEI embedder/reranker running on the Docker host reachable from the container (needed on Linux; already provided by Docker Desktop)."
}
],
"environmentVariables": [
{
"name": "GENERATOR_API_KEY",
"format": "string",
"isRequired": true,
"description": "API key for the generator LLM (LiteLLM provider)."
},
{
"name": "GENERATOR_PROVIDER",
"format": "string",
"default": "openai",
"description": "LiteLLM provider prefix, e.g. openai, anthropic, openrouter, minimax."
},
{
"name": "GENERATOR_MODEL",
"format": "string",
"default": "gpt-4o-mini",
"description": "Model name, combined as <provider>/<model> via LiteLLM."
},
{
"name": "GENERATOR_BASE_URL",
"format": "string",
"default": "https://api.openai.com/v1",
"description": "OpenAI-compatible base URL (LiteLLM api_base)."
},
{
"name": "PATTERN_DIRECTORY",
"format": "string",
"default": "/app/pattern",
"description": "Directory with *-pattern.json files. The image bakes the 40-pattern catalogue at /app/pattern."
},
{
"name": "EMBEDDER_PROVIDER",
"format": "string",
"default": "tei",
"description": "Embedding backend for pattern retrieval: tei, openai, ollama, vllm or hosted_vllm."
},
{
"name": "EMBEDDER_BASE_URL",
"format": "string",
"isRequired": true,
"description": "Required: the dense retrieval leg embeds the 40-pattern catalogue during startup warmup and the server refuses to start when the endpoint is unreachable. OpenAI-compatible embeddings endpoint ending in /v1: on the Docker host use http://host.docker.internal:8080/v1 (add --add-host=host.docker.internal:host-gateway on Linux); on a shared Docker network use http://pattern-tei-embed:8080/v1."
},
{
"name": "EMBEDDER_API_KEY",
"format": "string",
"description": "API key for the embedder. Keyless TEI accepts any non-empty value; use 'not-needed' there."
},
{
"name": "RERANKER_BASE_URL",
"format": "string",
"isRequired": true,
"description": "Required: pattern retrieval runs a mandatory TEI cross-encoder rerank. On the Docker host use http://host.docker.internal:8080; on a shared Docker network use http://pattern-tei-rerank:8080."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"architecture-pattern-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GENERATOR_API_KEY=<YOUR_GENERATOR_API_KEY>",
"-e",
"GENERATOR_PROVIDER=<YOUR_GENERATOR_PROVIDER>",
"-e",
"GENERATOR_MODEL=<YOUR_GENERATOR_MODEL>",
"-e",
"GENERATOR_BASE_URL=<YOUR_GENERATOR_BASE_URL>",
"-e",
"PATTERN_DIRECTORY=<YOUR_PATTERN_DIRECTORY>",
"-e",
"EMBEDDER_PROVIDER=<YOUR_EMBEDDER_PROVIDER>",
"-e",
"EMBEDDER_BASE_URL=<YOUR_EMBEDDER_BASE_URL>",
"-e",
"EMBEDDER_API_KEY=<YOUR_EMBEDDER_API_KEY>",
"-e",
"RERANKER_BASE_URL=<YOUR_RERANKER_BASE_URL>",
"docker.io/olkowa/architecture-pattern-mcp:1.1.3",
"--transport",
"stdio"
],
"env": {
"GENERATOR_API_KEY": "<YOUR_GENERATOR_API_KEY>",
"GENERATOR_PROVIDER": "<YOUR_GENERATOR_PROVIDER>",
"GENERATOR_MODEL": "<YOUR_GENERATOR_MODEL>",
"GENERATOR_BASE_URL": "<YOUR_GENERATOR_BASE_URL>",
"PATTERN_DIRECTORY": "<YOUR_PATTERN_DIRECTORY>",
"EMBEDDER_PROVIDER": "<YOUR_EMBEDDER_PROVIDER>",
"EMBEDDER_BASE_URL": "<YOUR_EMBEDDER_BASE_URL>",
"EMBEDDER_API_KEY": "<YOUR_EMBEDDER_API_KEY>",
"RERANKER_BASE_URL": "<YOUR_RERANKER_BASE_URL>"
}
}
}
}Cline
{
"mcpServers": {
"architecture-pattern-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GENERATOR_API_KEY=<YOUR_GENERATOR_API_KEY>",
"-e",
"GENERATOR_PROVIDER=<YOUR_GENERATOR_PROVIDER>",
"-e",
"GENERATOR_MODEL=<YOUR_GENERATOR_MODEL>",
"-e",
"GENERATOR_BASE_URL=<YOUR_GENERATOR_BASE_URL>",
"-e",
"PATTERN_DIRECTORY=<YOUR_PATTERN_DIRECTORY>",
"-e",
"EMBEDDER_PROVIDER=<YOUR_EMBEDDER_PROVIDER>",
"-e",
"EMBEDDER_BASE_URL=<YOUR_EMBEDDER_BASE_URL>",
"-e",
"EMBEDDER_API_KEY=<YOUR_EMBEDDER_API_KEY>",
"-e",
"RERANKER_BASE_URL=<YOUR_RERANKER_BASE_URL>",
"docker.io/olkowa/architecture-pattern-mcp:1.1.3",
"--transport",
"stdio"
],
"env": {
"GENERATOR_API_KEY": "<YOUR_GENERATOR_API_KEY>",
"GENERATOR_PROVIDER": "<YOUR_GENERATOR_PROVIDER>",
"GENERATOR_MODEL": "<YOUR_GENERATOR_MODEL>",
"GENERATOR_BASE_URL": "<YOUR_GENERATOR_BASE_URL>",
"PATTERN_DIRECTORY": "<YOUR_PATTERN_DIRECTORY>",
"EMBEDDER_PROVIDER": "<YOUR_EMBEDDER_PROVIDER>",
"EMBEDDER_BASE_URL": "<YOUR_EMBEDDER_BASE_URL>",
"EMBEDDER_API_KEY": "<YOUR_EMBEDDER_API_KEY>",
"RERANKER_BASE_URL": "<YOUR_RERANKER_BASE_URL>"
}
}
}
}VS Code
{
"servers": {
"architecture-pattern-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GENERATOR_API_KEY=<YOUR_GENERATOR_API_KEY>",
"-e",
"GENERATOR_PROVIDER=<YOUR_GENERATOR_PROVIDER>",
"-e",
"GENERATOR_MODEL=<YOUR_GENERATOR_MODEL>",
"-e",
"GENERATOR_BASE_URL=<YOUR_GENERATOR_BASE_URL>",
"-e",
"PATTERN_DIRECTORY=<YOUR_PATTERN_DIRECTORY>",
"-e",
"EMBEDDER_PROVIDER=<YOUR_EMBEDDER_PROVIDER>",
"-e",
"EMBEDDER_BASE_URL=<YOUR_EMBEDDER_BASE_URL>",
"-e",
"EMBEDDER_API_KEY=<YOUR_EMBEDDER_API_KEY>",
"-e",
"RERANKER_BASE_URL=<YOUR_RERANKER_BASE_URL>",
"docker.io/olkowa/architecture-pattern-mcp:1.1.3",
"--transport",
"stdio"
],
"env": {
"GENERATOR_API_KEY": "<YOUR_GENERATOR_API_KEY>",
"GENERATOR_PROVIDER": "<YOUR_GENERATOR_PROVIDER>",
"GENERATOR_MODEL": "<YOUR_GENERATOR_MODEL>",
"GENERATOR_BASE_URL": "<YOUR_GENERATOR_BASE_URL>",
"PATTERN_DIRECTORY": "<YOUR_PATTERN_DIRECTORY>",
"EMBEDDER_PROVIDER": "<YOUR_EMBEDDER_PROVIDER>",
"EMBEDDER_BASE_URL": "<YOUR_EMBEDDER_BASE_URL>",
"EMBEDDER_API_KEY": "<YOUR_EMBEDDER_API_KEY>",
"RERANKER_BASE_URL": "<YOUR_RERANKER_BASE_URL>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"architecture-pattern-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GENERATOR_API_KEY=<YOUR_GENERATOR_API_KEY>",
"-e",
"GENERATOR_PROVIDER=<YOUR_GENERATOR_PROVIDER>",
"-e",
"GENERATOR_MODEL=<YOUR_GENERATOR_MODEL>",
"-e",
"GENERATOR_BASE_URL=<YOUR_GENERATOR_BASE_URL>",
"-e",
"PATTERN_DIRECTORY=<YOUR_PATTERN_DIRECTORY>",
"-e",
"EMBEDDER_PROVIDER=<YOUR_EMBEDDER_PROVIDER>",
"-e",
"EMBEDDER_BASE_URL=<YOUR_EMBEDDER_BASE_URL>",
"-e",
"EMBEDDER_API_KEY=<YOUR_EMBEDDER_API_KEY>",
"-e",
"RERANKER_BASE_URL=<YOUR_RERANKER_BASE_URL>",
"docker.io/olkowa/architecture-pattern-mcp:1.1.3",
"--transport",
"stdio"
],
"env": {
"GENERATOR_API_KEY": "<YOUR_GENERATOR_API_KEY>",
"GENERATOR_PROVIDER": "<YOUR_GENERATOR_PROVIDER>",
"GENERATOR_MODEL": "<YOUR_GENERATOR_MODEL>",
"GENERATOR_BASE_URL": "<YOUR_GENERATOR_BASE_URL>",
"PATTERN_DIRECTORY": "<YOUR_PATTERN_DIRECTORY>",
"EMBEDDER_PROVIDER": "<YOUR_EMBEDDER_PROVIDER>",
"EMBEDDER_BASE_URL": "<YOUR_EMBEDDER_BASE_URL>",
"EMBEDDER_API_KEY": "<YOUR_EMBEDDER_API_KEY>",
"RERANKER_BASE_URL": "<YOUR_RERANKER_BASE_URL>"
}
}
}
}Let your agent find its tools
Find servers like Architecture Pattern MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.