chore: update mcp config

This commit is contained in:
m3tm3re
2026-03-31 13:30:47 +02:00
parent 4f0a92e43b
commit 44c0234739
4 changed files with 112 additions and 127 deletions

61
flake.lock generated
View File

@@ -60,11 +60,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1774509076, "lastModified": 1774647994,
"narHash": "sha256-3Z/1xfP4jJsSONprD5rMLpag+YFVDCkfGg1rY5+w20s=", "narHash": "sha256-rlag0DprIbYK12lsHyYtLcKwTKi1K0YHIy6v01+r9p8=",
"owner": "basecamp", "owner": "basecamp",
"repo": "basecamp-cli", "repo": "basecamp-cli",
"rev": "3d601714b184004af17e169d227f15afd14bc5f9", "rev": "c42190e9aaa135cc99e8ae0af388ed5b88c10c37",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -363,11 +363,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1774682581, "lastModified": 1774928491,
"narHash": "sha256-LLeo1dqUipMDjaIcZ9XCXU7gjL5S1Zi9ZfyATJEx/DM=", "narHash": "sha256-blqxzOmDdR35BjHeA8V6NeoQot4mysWy8N8ZMiHyEsk=",
"owner": "numtide", "owner": "numtide",
"repo": "llm-agents.nix", "repo": "llm-agents.nix",
"rev": "827aba851e05853a583ec618d96ff0d7c07c5038", "rev": "fb1dfb5960aa4b8a91995f8f99ec2452e5052dbe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -385,8 +385,8 @@
"openspec": "openspec" "openspec": "openspec"
}, },
"locked": { "locked": {
"lastModified": 1774687878, "lastModified": 1774929434,
"narHash": "sha256-xkw2bR2IEwlwaurw15riy5VvooGnUbvg80ElCnzp5uw=", "narHash": "sha256-EoPvygxt6RmX501/51vp7UOMicyklgcRVtq5gsSlDYE=",
"path": "/home/m3tam3re/p/NIX/nixpkgs", "path": "/home/m3tam3re/p/NIX/nixpkgs",
"type": "path" "type": "path"
}, },
@@ -529,11 +529,11 @@
}, },
"nixpkgs-master": { "nixpkgs-master": {
"locked": { "locked": {
"lastModified": 1774532607, "lastModified": 1774835230,
"narHash": "sha256-koMw5uDa2TwQ3/lZ49Jiy4Qj1lNjv80YnCen11P+uKY=", "narHash": "sha256-TQg2v9bufA/37dxtBzP9/gZeyxLDr5MIrvgV1Kv6FjU=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c5f84fa27a537e6899c9f636f8810df05fc625cb", "rev": "8155abb4814accbfe9a36b7e67d622777a9acde2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -609,11 +609,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1774273680, "lastModified": 1774610258,
"narHash": "sha256-a++tZ1RQsDb1I0NHrFwdGuRlR5TORvCEUksM459wKUA=", "narHash": "sha256-HaThtroVD9wRdx7KQk0B75JmFcXlMUoEdDFNOMOlsOs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "fdc7b8f7b30fdbedec91b71ed82f36e1637483ed", "rev": "832efc09b4caf6b4569fbf9dc01bec3082a00611",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -625,11 +625,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1774386573, "lastModified": 1774709303,
"narHash": "sha256-4hAV26quOxdC6iyG7kYaZcM3VOskcPUrdCQd/nx8obc=", "narHash": "sha256-D3Q07BbIA2KnTcSXIqqu9P586uWxN74zNoCH3h2ESHg=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "46db2e09e1d3f113a13c0d7b81e2f221c63b8ce9", "rev": "8110df5ad7abf5d4c0f6fb0f8f978390e77f9685",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -716,16 +716,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1774392635, "lastModified": 1774807340,
"narHash": "sha256-04eOIBHX9e8Brwn+uL/7q8szvRUilr4G0B8eB76dhKU=", "narHash": "sha256-OV76SWqiBguUupfbkJMBVrslJoTqSh4epNjEp/HE/cY=",
"owner": "anomalyco", "owner": "anomalyco",
"repo": "opencode", "repo": "opencode",
"rev": "0dcdf5f529dced23d8452c9aa5f166abb24d8f7c", "rev": "e7f94f9b9a3bd8742330e4a7ba8573ac21042c01",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "anomalyco", "owner": "anomalyco",
"ref": "v1.3.2", "ref": "v1.3.6",
"repo": "opencode", "repo": "opencode",
"type": "github" "type": "github"
} }
@@ -772,7 +772,8 @@
"rose-pine-hyprcursor": "rose-pine-hyprcursor", "rose-pine-hyprcursor": "rose-pine-hyprcursor",
"skills-anthropic": "skills-anthropic", "skills-anthropic": "skills-anthropic",
"skills-basecamp": "skills-basecamp", "skills-basecamp": "skills-basecamp",
"skills-kestra": "skills-kestra" "skills-kestra": "skills-kestra",
"skills-vercel": "skills-vercel"
} }
}, },
"rose-pine-hyprcursor": { "rose-pine-hyprcursor": {
@@ -843,6 +844,22 @@
"type": "github" "type": "github"
} }
}, },
"skills-vercel": {
"flake": false,
"locked": {
"lastModified": 1774562450,
"narHash": "sha256-w4vw0I3q+3AtfcQSRBwOvNKFIz2FEOgqsdcCcZ7UllY=",
"owner": "vercel-labs",
"repo": "skills",
"rev": "d95d0cacfd0ebe9677cb96d51c66a8e9d5630f2c",
"type": "github"
},
"original": {
"owner": "vercel-labs",
"repo": "skills",
"type": "github"
}
},
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,

View File

@@ -61,6 +61,10 @@
url = "github:kestra-io/agent-skills"; url = "github:kestra-io/agent-skills";
flake = false; flake = false;
}; };
skills-vercel = {
url = "github:vercel-labs/skills";
flake = false;
};
}; };
outputs = { outputs = {

View File

@@ -13,29 +13,12 @@
command = "sh"; command = "sh";
args = ["-c" "REF_API_KEY=$(cat /run/agenix/ref-key) exec bunx ref-tools-mcp@latest"]; args = ["-c" "REF_API_KEY=$(cat /run/agenix/ref-key) exec bunx ref-tools-mcp@latest"];
}; };
Anytype = {
command = "sh";
args = ["-c" "OPENAPI_MCP_HEADERS=$(cat /run/agenix/anytype-key) exec bunx @anyproto/anytype-mcp"];
disabled = true;
};
Basecamp = {
command = "/home/m3tam3re/p/AI/Basecamp-MCP-Server/venv/bin/python";
args = ["/home/m3tam3re/p/AI/Basecamp-MCP-Server/basecamp_fastmcp.py"];
env = {
PYTHONPATH = "/home/m3tam3re/p/PYTHON/Basecamp-MCP-Server";
VIRTUAL_ENV = "/home/m3tam3re/p/PYTHON/Basecamp-MCP-Server/venv";
BASECAMP_ACCOUNT_ID = "5996442";
};
disabled = true;
};
Exa = { Exa = {
command = "sh"; command = "sh";
args = ["-c" "EXA_API_KEY=$(cat /run/agenix/exa-key) exec bunx exa-mcp-server@latest tools=web_search_exa"]; args = ["-c" "EXA_API_KEY=$(cat /run/agenix/exa-key) exec bunx exa-mcp-server@latest tools=web_search_exa"];
}; };
Outline = { Outline = {
command = "sh"; url = "https://wiki.az-gruppe.com/mcp";
args = ["-c" "OUTLINE_API_KEY=$(cat /run/agenix/outline-key) OUTLINE_API_URL=https://wiki.az-gruppe.com/api OUTLINE_DISABLE_DELETE=true exec uv tool run mcp-outline"];
disabled = true;
}; };
ContextMode = { ContextMode = {
command = "sh"; command = "sh";

View File

@@ -1,48 +1,20 @@
{ {inputs, ...}: {
inputs, coding.opencode = {
system, enable = true;
... agentsInput = inputs.agents;
}: let
pkgs = inputs.nixpkgs.legacyPackages.${system};
in {
# Skills — composed from custom + external sources
xdg.configFile."opencode/skills".source = inputs.agents.lib.mkOpencodeSkills {
inherit pkgs;
customSkills = "${inputs.agents}/skills";
externalSkills = [ externalSkills = [
{ {
src = inputs.skills-anthropic; src = inputs.skills-anthropic;
selectSkills = ["docx" "frontend-design" "mcp-builder" "pdf" "mcp-builder"]; selectSkills = ["pdf" "docx" "frontend-design"];
}
{
src = inputs.skills-basecamp;
}
{
src = inputs.skills-kestra;
} }
{src = inputs.skills-vercel;}
{src = inputs.skills-basecamp;}
{src = inputs.skills-kestra;}
]; ];
};
# Other config — symlinked directly # AZ-Gruppe LiteLLM endpoint + available models
xdg.configFile."opencode/context".source = "${inputs.agents}/context"; extraSettings = {
xdg.configFile."opencode/commands".source = "${inputs.agents}/commands";
xdg.configFile."opencode/prompts".source = "${inputs.agents}/prompts";
programs.opencode = {
enable = true;
enableMcpIntegration = true;
settings = {
theme = "opencode";
plugin = ["oh-my-opencode" "opencode-antigravity-auth@beta"];
agent =
builtins.fromJSON
(builtins.readFile "${inputs.agents}/agents/agents.json");
formatter = {
alejandra = {
command = ["alejandra" "-q" "-"];
extensions = [".nix"];
};
};
provider = { provider = {
litellm = { litellm = {
npm = "@ai-sdk/openai-compatible"; npm = "@ai-sdk/openai-compatible";
@@ -52,35 +24,54 @@ in {
"gpt-5.2" = { "gpt-5.2" = {
name = "GPT-5.2"; name = "GPT-5.2";
limit = { limit = {
context = 200000; context = 400000;
output = 16384; output = 128000;
}; };
modalities = { };
input = ["text" "image"]; "gpt-5.3-codex" = {
output = ["text"]; name = "GPT-5.3 Codex";
limit = {
context = 400000;
output = 128000;
};
};
"claude-haiku-4-5" = {
name = "Claude Haiku 4.5";
options = {
thinking = {
type = "enabled";
budget_tokens = 16000;
};
};
limit = {
context = 200000;
output = 64000;
}; };
}; };
"claude-sonnet-4-6" = { "claude-sonnet-4-6" = {
name = "Claude Sonnet 4.6"; name = "Claude Sonnet 4.6";
options = {
thinking = {
type = "enabled";
budget_tokens = 16000;
};
};
limit = { limit = {
context = 200000; context = 200000;
output = 16000; output = 64000;
};
modalities = {
input = ["text" "image"];
output = ["text"];
}; };
}; };
"claude-opus-4-6" = { "claude-opus-4-6" = {
name = "Claude Opus 4.6"; name = "Claude Opus 4.6";
options = {
thinking = {
type = "enabled";
budget_tokens = 16000;
};
};
limit = { limit = {
context = 200000; context = 200000;
output = 32000; output = 128000;
};
modalities = {
input = ["text" "image"];
output = ["text"];
};
}; };
}; };
}; };
@@ -88,38 +79,28 @@ in {
}; };
}; };
home.file.".config/opencode/oh-my-opencode.json".text = builtins.toJSON { ohMyOpencodeSettings = {
"$schema" = "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json";
# google_auth removed - use opencode-antigravity-auth plugin instead (already in plugin array)
agents = { agents = {
sisyphus = {model = "zai-coding-plan/glm-5";}; sisyphus.model = "litellm/claude-opus-4-6";
oracle = {model = "zai-coding-plan/glm-5";}; oracle.model = "litellm/claude-sonnet-4-6";
librarian = {model = "zai-coding-plan/glm-5";}; librarian.model = "litellm/claude-sonnet-4-6";
explore = {model = "zai-coding-plan/glm-4.5-air";}; explore.model = "litellm/claude-haiku-4-5";
multimodal-looker = {model = "zai-coding-plan/glm-4.6v";}; multimodal-looker.model = "litellm/gpt-5.3-codex";
prometheus = {model = "zai-coding-plan/glm-5";}; prometheus.model = "litellm/claude-opus-4-6";
metis = {model = "zai-coding-plan/glm-5";}; metis.model = "litellm/claude-opus-4-6";
momus = {model = "zai-coding-plan/glm-5";}; momus.model = "litellm/claude-opus-4-6";
atlas = {model = "zai-coding-plan/glm-5";}; atlas.model = "litellm/claude-sonnet-4-6";
}; };
categories = { categories = {
visual-engineering = {model = "zai-coding-plan/glm-5";}; visual-engineering.model = "zai-coding-plan/glm-5.1";
ultrabrain = {model = "zai-coding-plan/glm-5";}; ultrabrain.model = "litellm/claude-opus-4-6";
artistry = {model = "zai-coding-plan/glm-5";}; deep.model = "litellm/claude-sonnet-4-6";
quick = {model = "zai-coding-plan/glm-5";}; artistry.model = "zai-coding-plan/glm-5.1";
unspecified-low = {model = "zai-coding-plan/glm-5";}; quick.model = "litellm/claude-haiku-4-5";
unspecified-high = {model = "zai-coding-plan/glm-5";}; unspecified-low.model = "litellm/claude-sonnet-4-6";
writing = {model = "zai-coding-plan/glm-5";}; unspecified-high.model = "litellm/claude-opus-4-6";
writing.model = "zai-coding-plan/glm-5.1";
}; };
disabled_mcps = ["context7" "websearch"];
disabled_hooks = ["comment-checker"];
git_master = {
commit_footer = false;
include_co_authored_by = false;
};
experimental = {
truncate_all_tool_outputs = true;
aggressive_truncation = false;
}; };
}; };
} }