43 lines
1.0 KiB
Nix
43 lines
1.0 KiB
Nix
{ stdenv, lib, fetchFromGitHub, python3, makeWrapper }:
|
|
|
|
let
|
|
python = python3.withPackages (ps: with ps; [
|
|
mcp
|
|
fastmcp
|
|
httpx
|
|
]);
|
|
in
|
|
stdenv.mkDerivation rec {
|
|
pname = "academic-search-mcp-server";
|
|
version = "0.1.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "afrise";
|
|
repo = "academic-search-mcp-server";
|
|
rev = "f457e444b2398aad39d1ef7f0ceed06748c177a4";
|
|
hash = "sha256-Uh2QVQ9AJbqWKiBeffHTaAiGzTvN5VmBJdRtAkzDBow=";
|
|
};
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
dontBuild = true;
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
mkdir -p $out/bin $out/lib/${pname}
|
|
cp -r $src/* $out/lib/${pname}
|
|
makeWrapper ${python}/bin/python $out/bin/${pname} \
|
|
--add-flags "$out/lib/${pname}/server.py"
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Academic Paper Search MCP Server for Claude Desktop integration";
|
|
homepage = "https://github.com/afrise/academic-search-mcp-server";
|
|
license = licenses.gpl3;
|
|
maintainers = [ ];
|
|
mainProgram = pname;
|
|
platforms = platforms.all;
|
|
};
|
|
}
|